Skip to content

Commit cc7c8fc

Browse files
matclaytontheospears
authored andcommitted
make compatible with 1.4
1 parent a00ca35 commit cc7c8fc

File tree

4 files changed

+27
-8
lines changed

4 files changed

+27
-8
lines changed

experiments/models.py

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
from django.core.urlresolvers import reverse
22
from django.db import models
33
from django.core.serializers.json import DjangoJSONEncoder
4-
from django.conf import settings
54

65
from jsonfield import JSONField
76

@@ -15,6 +14,13 @@
1514
from experiments import counters, conf
1615
from experiments.dateutils import now
1716

17+
try:
18+
from django.contrib.auth import get_user_model
19+
except ImportError: # django < 1.5
20+
from django.contrib.auth.models import User
21+
else:
22+
User = get_user_model()
23+
1824
PARTICIPANT_KEY = '%s:%s:participant'
1925
GOAL_KEY = '%s:%s:%s:goal'
2026

@@ -165,7 +171,7 @@ def delete(self, *args, **kwargs):
165171

166172
class Enrollment(models.Model):
167173
""" A participant in a split testing experiment """
168-
user = models.ForeignKey(settings.AUTH_USER_MODEL, null=True)
174+
user = models.ForeignKey(User, null=True)
169175
experiment = models.ForeignKey(Experiment)
170176
enrollment_date = models.DateTimeField(auto_now_add=True)
171177
last_seen = models.DateTimeField(null=True)

experiments/tests/webuser.py

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,20 @@
22

33
from django.test import TestCase
44
from django.test.client import RequestFactory
5-
from django.contrib.auth import get_user_model
65
from django.contrib.auth.models import AnonymousUser
76
from django.contrib.sessions.backends.db import SessionStore as DatabaseSession
87

98
from experiments.models import Experiment, ENABLED_STATE
109
from experiments.conf import CONTROL_GROUP, VISIT_COUNT_GOAL
1110
from experiments.utils import participant
1211

13-
User = get_user_model()
12+
try:
13+
from django.contrib.auth import get_user_model
14+
except ImportError: # django < 1.5
15+
from django.contrib.auth.models import User
16+
else:
17+
User = get_user_model()
18+
1419
request_factory = RequestFactory()
1520

1621
TEST_ALTERNATIVE = 'blue'

experiments/tests/webuser_incorporate.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,16 @@
11
from django.test import TestCase
22
from django.utils.unittest import TestSuite
33
from django.contrib.sessions.backends.db import SessionStore as DatabaseSession
4-
from django.contrib.auth import get_user_model
54

65
from experiments.utils import DummyUser, SessionUser, AuthenticatedUser
76
from experiments.models import Experiment, ENABLED_STATE
87

9-
User = get_user_model()
8+
try:
9+
from django.contrib.auth import get_user_model
10+
except ImportError: # django < 1.5
11+
from django.contrib.auth.models import User
12+
else:
13+
User = get_user_model()
1014

1115
TEST_ALTERNATIVE = 'blue'
1216
EXPERIMENT_NAME='backgroundcolor'

experiments/utils.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
from django.db import IntegrityError
2-
from django.contrib.auth import get_user_model
32
from django.contrib.sessions.backends.base import SessionBase
43

54
from experiments.models import Enrollment
@@ -14,7 +13,12 @@
1413
import collections
1514
from datetime import timedelta
1615

17-
User = get_user_model()
16+
try:
17+
from django.contrib.auth import get_user_model
18+
except ImportError: # django < 1.5
19+
from django.contrib.auth.models import User
20+
else:
21+
User = get_user_model()
1822

1923
def record_goal(request, goal_name):
2024
_record_goal(goal_name, request)

0 commit comments

Comments
 (0)