mirror of
https://github.com/encode/django-rest-framework.git
synced 2024-11-23 01:57:00 +03:00
Pulling Marko's test fixes
This commit is contained in:
commit
fb805bbb7c
|
@ -28,12 +28,14 @@ class TestPygmentsExample(TestCase):
|
||||||
def test_snippets_datetime_sorted(self):
|
def test_snippets_datetime_sorted(self):
|
||||||
'''Pygments examples should be datetime sorted'''
|
'''Pygments examples should be datetime sorted'''
|
||||||
locations = []
|
locations = []
|
||||||
for snippet in 'abcdefghijk':
|
for snippet in 'abcdefghij': # String length must not exceed views.MAX_FILES, otherwise test fails
|
||||||
form_data = {'code': '%s' % snippet, 'style':'friendly', 'lexer':'python'}
|
form_data = {'code': '%s' % snippet, 'style':'friendly', 'lexer':'python'}
|
||||||
request = self.factory.post('/pygments', data=form_data)
|
request = self.factory.post('/pygments', data=form_data)
|
||||||
view = views.PygmentsRoot.as_view()
|
view = views.PygmentsRoot.as_view()
|
||||||
response = view(request)
|
response = view(request)
|
||||||
locations.append(response.items()[2][1])
|
locations.append(response.items()[2][1])
|
||||||
|
import time
|
||||||
|
time.sleep(.1)
|
||||||
request = self.factory.get('/pygments')
|
request = self.factory.get('/pygments')
|
||||||
view = views.PygmentsRoot.as_view()
|
view = views.PygmentsRoot.as_view()
|
||||||
response = view(request)
|
response = view(request)
|
||||||
|
|
|
@ -25,7 +25,7 @@ def list_dir_sorted_by_ctime(dir):
|
||||||
"""Return a list of files sorted by creation time"""
|
"""Return a list of files sorted by creation time"""
|
||||||
filepaths = [os.path.join(dir, file) for file in os.listdir(dir) if not file.startswith('.')]
|
filepaths = [os.path.join(dir, file) for file in os.listdir(dir) if not file.startswith('.')]
|
||||||
return [item[0] for item in sorted([(path, os.path.getctime(path)) for path in filepaths],
|
return [item[0] for item in sorted([(path, os.path.getctime(path)) for path in filepaths],
|
||||||
key=operator.itemgetter(1), reverse=True)]
|
key=operator.itemgetter(1), reverse=False)]
|
||||||
def remove_oldest_files(dir, max_files):
|
def remove_oldest_files(dir, max_files):
|
||||||
"""Remove the oldest files in a directory 'dir', leaving at most 'max_files' remaining.
|
"""Remove the oldest files in a directory 'dir', leaving at most 'max_files' remaining.
|
||||||
We use this to limit the number of resources in the sandbox."""
|
We use this to limit the number of resources in the sandbox."""
|
||||||
|
|
|
@ -4,10 +4,24 @@ os.environ['DJANGO_SETTINGS_MODULE'] = 'settings'
|
||||||
|
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
from django.test.utils import get_runner
|
from django.test.utils import get_runner
|
||||||
|
from coverage import coverage
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
|
"""Run the tests for the examples and generate a coverage report."""
|
||||||
|
|
||||||
|
# Discover the list of all modules that we should test coverage for
|
||||||
|
project_dir = os.path.dirname(__file__)
|
||||||
|
cov_files = []
|
||||||
|
for (path, dirs, files) in os.walk(project_dir):
|
||||||
|
# Drop tests and runtests directories from the test coverage report
|
||||||
|
if os.path.basename(path) == 'tests' or os.path.basename(path) == 'runtests':
|
||||||
|
continue
|
||||||
|
cov_files.extend([os.path.join(path, file) for file in files if file.endswith('.py')])
|
||||||
TestRunner = get_runner(settings)
|
TestRunner = get_runner(settings)
|
||||||
|
|
||||||
|
cov = coverage()
|
||||||
|
cov.erase()
|
||||||
|
cov.start()
|
||||||
if hasattr(TestRunner, 'func_name'):
|
if hasattr(TestRunner, 'func_name'):
|
||||||
# Pre 1.2 test runners were just functions,
|
# Pre 1.2 test runners were just functions,
|
||||||
# and did not support the 'failfast' option.
|
# and did not support the 'failfast' option.
|
||||||
|
@ -19,8 +33,11 @@ def main():
|
||||||
failures = TestRunner(None)
|
failures = TestRunner(None)
|
||||||
else:
|
else:
|
||||||
test_runner = TestRunner()
|
test_runner = TestRunner()
|
||||||
failures = test_runner.run_tests(None)
|
failures = test_runner.run_tests(['blogpost', 'pygments_api'])
|
||||||
|
|
||||||
|
cov.stop()
|
||||||
|
cov.report(cov_files)
|
||||||
|
cov.xml_report(cov_files)
|
||||||
sys.exit(failures)
|
sys.exit(failures)
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
|
|
24
tox.ini
24
tox.ini
|
@ -28,42 +28,42 @@ basepython=python2.5
|
||||||
deps=
|
deps=
|
||||||
django==1.2.4
|
django==1.2.4
|
||||||
coverage==3.4
|
coverage==3.4
|
||||||
https://github.com/downloads/markotibold/unittest-xml-reporting/unittest-xml-reporting-1.1.zip
|
unittest-xml-reporting==1.2
|
||||||
|
|
||||||
[testenv:py26-django12]
|
[testenv:py26-django12]
|
||||||
basepython=python2.6
|
basepython=python2.6
|
||||||
deps=
|
deps=
|
||||||
django==1.2.4
|
django==1.2.4
|
||||||
coverage==3.4
|
coverage==3.4
|
||||||
https://github.com/downloads/markotibold/unittest-xml-reporting/unittest-xml-reporting-1.1.zip
|
unittest-xml-reporting==1.2
|
||||||
|
|
||||||
[testenv:py27-django12]
|
[testenv:py27-django12]
|
||||||
basepython=python2.7
|
basepython=python2.7
|
||||||
deps=
|
deps=
|
||||||
django==1.2.4
|
django==1.2.4
|
||||||
coverage==3.4
|
coverage==3.4
|
||||||
https://github.com/downloads/markotibold/unittest-xml-reporting/unittest-xml-reporting-1.1.zip
|
unittest-xml-reporting==1.2
|
||||||
|
|
||||||
[testenv:py25-django13]
|
[testenv:py25-django13]
|
||||||
basepython=python2.5
|
basepython=python2.5
|
||||||
deps=
|
deps=
|
||||||
django==1.3
|
django==1.3
|
||||||
coverage==3.4
|
coverage==3.4
|
||||||
https://github.com/downloads/markotibold/unittest-xml-reporting/unittest-xml-reporting-1.1.zip
|
unittest-xml-reporting==1.2
|
||||||
|
|
||||||
[testenv:py26-django13]
|
[testenv:py26-django13]
|
||||||
basepython=python2.6
|
basepython=python2.6
|
||||||
deps=
|
deps=
|
||||||
django==1.3
|
django==1.3
|
||||||
coverage==3.4
|
coverage==3.4
|
||||||
https://github.com/downloads/markotibold/unittest-xml-reporting/unittest-xml-reporting-1.1.zip
|
unittest-xml-reporting==1.2
|
||||||
|
|
||||||
[testenv:py27-django13]
|
[testenv:py27-django13]
|
||||||
basepython=python2.7
|
basepython=python2.7
|
||||||
deps=
|
deps=
|
||||||
django==1.3
|
django==1.3
|
||||||
coverage==3.4
|
coverage==3.4
|
||||||
https://github.com/downloads/markotibold/unittest-xml-reporting/unittest-xml-reporting-1.1.zip
|
unittest-xml-reporting==1.2
|
||||||
|
|
||||||
####################################### EXAMPLES ################################################
|
####################################### EXAMPLES ################################################
|
||||||
|
|
||||||
|
@ -78,7 +78,7 @@ deps=
|
||||||
Pygments==1.4
|
Pygments==1.4
|
||||||
httplib2==0.6.0
|
httplib2==0.6.0
|
||||||
Markdown==2.0.3
|
Markdown==2.0.3
|
||||||
https://github.com/downloads/markotibold/unittest-xml-reporting/unittest-xml-reporting-1.1.zip
|
unittest-xml-reporting==1.2
|
||||||
|
|
||||||
[testenv:py26-django12e]
|
[testenv:py26-django12e]
|
||||||
basepython=python2.6
|
basepython=python2.6
|
||||||
|
@ -91,7 +91,7 @@ deps=
|
||||||
Pygments==1.4
|
Pygments==1.4
|
||||||
httplib2==0.6.0
|
httplib2==0.6.0
|
||||||
Markdown==2.0.3
|
Markdown==2.0.3
|
||||||
https://github.com/downloads/markotibold/unittest-xml-reporting/unittest-xml-reporting-1.1.zip
|
unittest-xml-reporting==1.2
|
||||||
|
|
||||||
[testenv:py27-django12e]
|
[testenv:py27-django12e]
|
||||||
basepython=python2.7
|
basepython=python2.7
|
||||||
|
@ -104,7 +104,7 @@ deps=
|
||||||
Pygments==1.4
|
Pygments==1.4
|
||||||
httplib2==0.6.0
|
httplib2==0.6.0
|
||||||
Markdown==2.0.3
|
Markdown==2.0.3
|
||||||
https://github.com/downloads/markotibold/unittest-xml-reporting/unittest-xml-reporting-1.1.zip
|
unittest-xml-reporting==1.2
|
||||||
|
|
||||||
[testenv:py25-django13e]
|
[testenv:py25-django13e]
|
||||||
basepython=python2.5
|
basepython=python2.5
|
||||||
|
@ -117,7 +117,7 @@ deps=
|
||||||
Pygments==1.4
|
Pygments==1.4
|
||||||
httplib2==0.6.0
|
httplib2==0.6.0
|
||||||
Markdown==2.0.3
|
Markdown==2.0.3
|
||||||
https://github.com/downloads/markotibold/unittest-xml-reporting/unittest-xml-reporting-1.1.zip
|
unittest-xml-reporting==1.2
|
||||||
|
|
||||||
[testenv:py26-django13e]
|
[testenv:py26-django13e]
|
||||||
basepython=python2.6
|
basepython=python2.6
|
||||||
|
@ -130,7 +130,7 @@ deps=
|
||||||
Pygments==1.4
|
Pygments==1.4
|
||||||
httplib2==0.6.0
|
httplib2==0.6.0
|
||||||
Markdown==2.0.3
|
Markdown==2.0.3
|
||||||
https://github.com/downloads/markotibold/unittest-xml-reporting/unittest-xml-reporting-1.1.zip
|
unittest-xml-reporting==1.2
|
||||||
|
|
||||||
[testenv:py27-django13e]
|
[testenv:py27-django13e]
|
||||||
basepython=python2.7
|
basepython=python2.7
|
||||||
|
@ -143,4 +143,4 @@ deps=
|
||||||
Pygments==1.4
|
Pygments==1.4
|
||||||
httplib2==0.6.0
|
httplib2==0.6.0
|
||||||
Markdown==2.0.3
|
Markdown==2.0.3
|
||||||
https://github.com/downloads/markotibold/unittest-xml-reporting/unittest-xml-reporting-1.1.zip
|
unittest-xml-reporting==1.2
|
Loading…
Reference in New Issue
Block a user