Skip to content

Commit c1b1292

Browse files
committed
Tests now run, but throw odd warnings
1 parent bd96803 commit c1b1292

File tree

9 files changed

+21
-108
lines changed

9 files changed

+21
-108
lines changed

django_dbq/management/commands/create_job.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
from django.conf import settings
22
from django.core.management.base import BaseCommand, CommandError
3-
from django_dbq.apps.core.models import Job
3+
from django_dbq.models import Job
44
from optparse import make_option
55
import json
66
import logging

django_dbq/management/commands/worker.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
from django.db import transaction
22
from django.core.management.base import NoArgsCommand
33
from django.utils.module_loading import import_by_path
4-
from django_dbq.apps.core.models import Job
4+
from django_dbq.models import Job
55
from simplesignals.process import WorkerProcessBase
66
from time import sleep
77
import logging

django_dbq/models.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
from django.db import models
22
from django.utils.module_loading import import_by_path
3-
from django_dbq.apps.core.tasks import get_next_task_name, get_failure_hook_name, get_creation_hook_name
3+
from django_dbq.tasks import get_next_task_name, get_failure_hook_name, get_creation_hook_name
44
from jsonfield import JSONField
55
from model_utils import Choices
66
import logging

django_dbq/serializers.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
from django.conf import settings
2-
from django_dbq.apps.core.models import Job
2+
from django_dbq.models import Job
33
from rest_framework import serializers
44
import json
55

django_dbq/tests.py

Lines changed: 6 additions & 74 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,10 @@
11
from datetime import datetime, timedelta
22
from django.core.management import call_command, CommandError
33
from django.core.urlresolvers import reverse
4-
from django.test import TestCase, LiveServerTestCase
4+
from django.test import TestCase
55
from django.test.utils import override_settings
6-
from django_dbq.apps.core.management.commands.worker import process_job
7-
from django_dbq.apps.core.models import Job
8-
from django_dbq.apps.core.utils.requests_storage import SessionStorage
9-
from requests import Session
10-
from rest_framework import status
11-
from rest_framework.test import APITestCase
6+
from django_dbq.management.commands.worker import process_job
7+
from django_dbq.models import Job
128
from StringIO import StringIO
139

1410

@@ -33,32 +29,6 @@ def creation_hook(job):
3329
job.workspace['output'] = 'creation hook ran'
3430

3531

36-
@override_settings(JOBS={'testjob': {'tasks': ['a']}})
37-
class JobAPITestCase(APITestCase):
38-
39-
def test_create_job(self):
40-
url = reverse('create_job')
41-
response = self.client.post(url, {'name': 'testjob'})
42-
self.assertEqual(response.status_code, status.HTTP_201_CREATED)
43-
self.assertTrue('url' in response.data)
44-
self.assertEqual(Job.objects.count(), 1)
45-
job = Job.objects.get()
46-
self.assertEqual(job.name, 'testjob')
47-
self.assertEqual(job.state, job.STATES.READY)
48-
49-
def test_create_job_with_invalid_name(self):
50-
url = reverse('create_job')
51-
response = self.client.post(url, {'name': 'some-other-job-name'})
52-
self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST)
53-
54-
def test_job_detail(self):
55-
job = Job.objects.create(name='testjob')
56-
url = reverse('job_detail', kwargs={'pk': job.pk})
57-
response = self.client.get(url)
58-
self.assertEqual(response.status_code, 200)
59-
self.assertEqual(response.data['name'], 'testjob')
60-
61-
6232
@override_settings(JOBS={'testjob': {'tasks': ['a']}})
6333
class JobManagementCommandTestCase(TestCase):
6434

@@ -112,7 +82,7 @@ def test_task_sequence(self):
11282
self.assertEqual(job.next_task, '')
11383

11484

115-
@override_settings(JOBS={'testjob': {'tasks': ['importer.apps.core.tests.test_task']}})
85+
@override_settings(JOBS={'testjob': {'tasks': ['django_dbq.tests.test_task']}})
11686
class ProcessJobTestCase(TestCase):
11787

11888
def test_process_job(self):
@@ -122,7 +92,7 @@ def test_process_job(self):
12292
self.assertEqual(job.state, Job.STATES.COMPLETE)
12393

12494

125-
@override_settings(JOBS={'testjob': {'tasks': ['importer.apps.core.tests.test_task'], 'creation_hook': 'importer.apps.core.tests.creation_hook'}})
95+
@override_settings(JOBS={'testjob': {'tasks': ['django_dbq.tests.test_task'], 'creation_hook': 'django_dbq.tests.creation_hook'}})
12696
class JobCreationHookTestCase(TestCase):
12797

12898
def test_creation_hook(self):
@@ -139,7 +109,7 @@ def test_creation_hook_only_runs_on_create(self):
139109
self.assertEqual(job.workspace['output'], 'creation hook output removed')
140110

141111

142-
@override_settings(JOBS={'testjob': {'tasks': ['importer.apps.core.tests.failing_task'], 'failure_hook': 'importer.apps.core.tests.failure_hook'}})
112+
@override_settings(JOBS={'testjob': {'tasks': ['django_dbq.tests.failing_task'], 'failure_hook': 'django_dbq.tests.failure_hook'}})
143113
class JobFailureHookTestCase(TestCase):
144114

145115
def test_failure_hook(self):
@@ -148,41 +118,3 @@ def test_failure_hook(self):
148118
job = Job.objects.get()
149119
self.assertEqual(job.state, Job.STATES.FAILED)
150120
self.assertEqual(job.workspace['output'], 'failure hook ran')
151-
152-
153-
@override_settings(JOBS={'testjob': {'tasks': ['importer.apps.core.tests.workspace_test_task']}})
154-
class WorkspaceTestCase(APITestCase):
155-
156-
def test_basic_args(self):
157-
url = reverse('create_job')
158-
self.client.post(url, {'name': 'testjob', 'workspace': '{"input": "input"}'})
159-
process_job()
160-
job = Job.objects.get()
161-
self.assertEqual(job.workspace['output'], 'input-output')
162-
163-
def test_json_post(self):
164-
"""Ensures that we can also create a workspace by sending JSON"""
165-
url = reverse('create_job')
166-
self.client.post(url, {'name': 'testjob', 'workspace': {'input': 'input'}}, format='json')
167-
process_job()
168-
job = Job.objects.get()
169-
self.assertEqual(job.workspace['output'], 'input-output')
170-
171-
172-
class RequestsStorageTestCase(LiveServerTestCase):
173-
174-
def test_requests_storage(self):
175-
session = Session()
176-
storage = SessionStorage(session)
177-
url = "%s/" % self.live_server_url
178-
session.get(url)
179-
request_list = storage.get_requests()
180-
self.assertEqual(len(request_list), 1)
181-
self.assertEqual(request_list[0]['request']['url'], url)
182-
self.assertEqual(request_list[0]['response']['status_code'], 200)
183-
184-
for _ in range(5):
185-
session.get(url)
186-
187-
request_list = storage.get_requests()
188-
self.assertEqual(len(request_list), 6)

django_dbq/utils/__init__.py

Whitespace-only changes.

django_dbq/utils/requests_storage.py

Lines changed: 0 additions & 29 deletions
This file was deleted.

requirements.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,5 @@
1+
django-model-utils==1.5.0
2+
django-uuidfield==0.4.0
3+
jsonfield==0.9.20
14
Django>=1.6
5+
simplesignals==0.3.0

setup.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,13 @@
1515
author = 'DabApps'
1616
author_email = '[email protected]'
1717
license = 'BSD'
18-
install_requires = ['django>=1.6']
18+
install_requires = [
19+
'django-model-utils==1.5.0',
20+
'django-uuidfield==0.4.0',
21+
'jsonfield==0.9.20',
22+
'Django>=1.6',
23+
'simplesignals==0.3.0'
24+
]
1925

2026
long_description = """Simple database-backed queue system"""
2127

0 commit comments

Comments
 (0)