Commit graph

338 commits

Author SHA1 Message Date
Henrik Levkowetz 09e3f4e96d Added a management command to check referential integrity, original code
conceived and written by rjsparks@nostrum.com, with some additions and
adaptation as a management command by henrik@levkowetz.com.

This integrity checker, when run on the IETF database in November 2015,
seemed to have a factor on the order of 100 better speed and lower memory
consumption than the code in
https://stackoverflow.com/questions/4734645/is-there-a-tool-to-check-database-integrity-in-django

No exact figure is available, as the latter had to be killed when it had
taken all available ram (~14G) on the development machine, and started to
cause heavy swapping.
 - Legacy-Id: 10508
2015-11-19 21:40:37 +00:00
Henrik Levkowetz cc84668862 Updated utils resources.py
- Legacy-Id: 10489
2015-11-14 23:47:02 +00:00
Henrik Levkowetz 1759f1b38e Updated utils/resources.py to include an endpoint for the new DumpInfo table.
- Legacy-Id: 10488
2015-11-14 23:41:25 +00:00
Henrik Levkowetz 29b30c6c3c Added a utility model to hold information on when a given database dump has been done.
- Legacy-Id: 10480
2015-11-14 22:59:14 +00:00
Henrik Levkowetz 2191ec3cbd Removed logging through ietf.utils.log.log when running tests -- should shave another 15% off the test suite run time.
- Legacy-Id: 10454
2015-11-08 14:26:41 +00:00
Henrik Levkowetz fdc7dea3df Merged in [10097] from olau@iola.dk, in order to speed up the test suite.
- Legacy-Id: 10453
Note: SVN reference [10097] has been migrated to Git commit 99a9cb5569
2015-11-08 14:24:19 +00:00
Henrik Levkowetz cf7d794b09 Modified the test data to use some AD and WG chair names that contain non-ascii characters, and fixed test issues found.
- Legacy-Id: 10418
2015-11-04 07:34:56 +00:00
Henrik Levkowetz f1a08564d1 Added a new machine-readable list of IPR declarations per draft, which also searches through related documents. Extended make_test_data() with a replaced document for the test draft.
- Legacy-Id: 10272
2015-10-23 16:34:44 +00:00
Henrik Levkowetz bfa222b782 Added a switch to the 'test' command, to write short test results to file, changing the default which used to be to always write these.
- Legacy-Id: 10270
2015-10-22 20:37:03 +00:00
Henrik Levkowetz c17ea94b08 Updated the code to use version 4.0.1 of coverage.py for code coverage measurements. Moved the code which starts coverage measurement to settings_sqlitetest.py to avoid coverage measurements running when not doing tests. Did some additional coveage measurement refactoring.
- Legacy-Id: 10238
2015-10-18 20:01:57 +00:00
Henrik Levkowetz 90b97468a9 Changed to use a gzipped release coverage JSON file, instead of a plain JSON file, if the name given in settings.py ends in .gz. Reduces the current release coverage file size from ~1.6MB to ~200kB. This is a preparation for saving more information in the release coverage file than we currently do.
- Legacy-Id: 10235
2015-10-18 14:32:36 +00:00
Henrik Levkowetz 499a2180a3 Removed unused imports.
- Legacy-Id: 10231
2015-10-18 12:29:17 +00:00
Henrik Levkowetz cf4cbf76f3 Reverted mixed merge.
- Legacy-Id: 10230
2015-10-18 12:14:30 +00:00
Henrik Levkowetz 349b2b511a Removed unused imports.
- Legacy-Id: 10229
2015-10-18 12:12:50 +00:00
Henrik Levkowetz 4a80395a63 Removed support for perma_fixtures, using the blobal test fixtures instead.
- Legacy-Id: 10228
2015-10-18 11:49:15 +00:00
Henrik Levkowetz fb66c1856f Merged in [9669] from olau@iola.dk:
Summary: Make the meeting agenda code use the historic info available
for groups. In the process, added some select_related/prefetch_related
code to cut the number of database queries in the agenda down from
4000-5000 to about 50. Rewritten agenda CSV code to use Python arrays
rather than a template for improved readability/reuse. Rewritten week
view to assemble its data in Python. Plus a few other minor cleanups,
e.g. lame_description is now gone.
Fixes #1088. Branch
 - Legacy-Id: 10005
Note: SVN reference [9669] has been migrated to Git commit acda84208d
2015-08-10 19:46:11 +00:00
Henrik Levkowetz 2fe8dcb4c2 Added a very simple html version of the json API, to make it easier to explore the api manually.
- Legacy-Id: 9991
2015-08-09 16:28:55 +00:00
Henrik Levkowetz 6de3974be7 Misc stuff.
- Legacy-Id: 9954
2015-08-01 15:07:49 +00:00
Henrik Levkowetz a23846c8be Changed the storage format for code coverage in *coverage.json, in order to be able to calculate code coverage percentages for a subset of tested files.
- Legacy-Id: 9953
2015-08-01 15:07:21 +00:00
Henrik Levkowetz 7a059c908a Cleaned up bower_storage a bit.
- Legacy-Id: 9952
2015-08-01 15:03:40 +00:00
Henrik Levkowetz 9cec8a0587 Added code to the test_runner to force SERVE_CDN_FILES_LOCALLY_IN_DEV_MODE to True during testing, to avoid triggering the system checks error which doesn't find the CDN symlink expected when serving static files via CDN.
- Legacy-Id: 9910
2015-07-28 11:02:00 +00:00
Henrik Levkowetz 6468a43840 Moved and renamed the file and class for the storage helper which lets us find static files managed by bower, to better reflect the function.
- Legacy-Id: 9909
2015-07-28 10:40:26 +00:00
Adam Roach 5cb7c82e39 Check that email is sent to chairs of both replaced and replacing document
- Legacy-Id: 9808
2015-07-18 16:07:26 +00:00
Ole Laursen acda84208d Summary: Make the meeting agenda code use the historic info available
for groups. In the process, added some select_related/prefetch_related
code to cut the number of database queries in the agenda down from
4000-5000 to about 50. Rewritten agenda CSV code to use Python arrays
rather than a template for improved readability/reuse. Rewritten week
view to assemble its data in Python. Plus a few other minor cleanups,
e.g. lame_description is now gone.

Fixes #1088. Branch ready for merge.
 - Legacy-Id: 9669
2015-06-17 13:37:16 +00:00
Robert Sparks 85cfe0ed8a Show leadership when and where mail was sent at the time it is sent. Commit ready for merge.
- Legacy-Id: 9608
2015-05-07 16:29:17 +00:00
Henrik Levkowetz e3799dca2e Fixed a bug in TestCase.assertValidHtml().
- Legacy-Id: 9563
2015-04-26 20:10:48 +00:00
Henrik Levkowetz 5a5289d1ad Added pip and setuptools, required in virtualenv, to requirements.txt in order to simplify buildbot testing of package installation and version testing.
- Legacy-Id: 9560
2015-04-26 19:12:16 +00:00
Henrik Levkowetz 09f3f51c77 Added support for an 'origin' template tag which will insert the name of the template file (within a html comment) into the page content when TEMPLATE_DEBUG is True; with the purpose of more easily being able to identify the templates from which page content comes.
- Legacy-Id: 9550
2015-04-24 20:38:36 +00:00
Henrik Levkowetz 6055215ab2 Removed local copy of html5lib, added html5lib to requirements.txt, and updated utils/html.py to work with htm5lib 0.999.
- Legacy-Id: 9547
2015-04-24 18:07:26 +00:00
Henrik Levkowetz 02cd366ff0 Merged in trunk@9440, containing the changes for version 5.13.1; and updated tests which look at HTML content to work with the facelift changes.
- Legacy-Id: 9446
2015-04-11 18:24:20 +00:00
Henrik Levkowetz 625347cd2f Merged trunk@9354 to facelift copy
- Legacy-Id: 9357
2015-04-02 06:51:34 +00:00
Robert Sparks a6c64d2b12 Remove sessonly, replacing the idea with a separate State. Add tests checking how materials show on agenda views. Commit ready for merge.
- Legacy-Id: 9351
2015-04-01 16:00:05 +00:00
Ryan Cross 34a16483fa Improve test coverage of secr.drafts. Commit ready for merge.
- Legacy-Id: 9307
2015-03-21 20:26:53 +00:00
buildbot 70396be450 Updated test
- Legacy-Id: 9241
2015-03-17 17:38:15 +00:00
buildbot cedb115038 Added exception capture and error message when the --release switch to coverage_changes specify a release for which there aren't any data. Also tweaked the diff output for code coverage changes.
- Legacy-Id: 9239
2015-03-17 16:15:04 +00:00
Henrik Levkowetz 0b971f635d Added test coverage data to the release pages if available for the release. Added saving of html pages for the code coverage to a directory in the static files area. If a code coverage report is available, a link to it will be shown on the release page of the current release. Renamed some setting variables related to test coverage to be more explicit and precise.
- Legacy-Id: 9201
2015-03-14 19:08:37 +00:00
Henrik Levkowetz 4b80218548 Merged in [9185] from rcross@amsl.com:
Add DocEvent and SubmissionEvent to merge-person-records.
 - Legacy-Id: 9197
Note: SVN reference [9185] has been migrated to Git commit cadf07fab3
2015-03-14 15:47:24 +00:00
Henrik Levkowetz d4f0ad4955 Fixed a pyflakes nit.
- Legacy-Id: 9189
2015-03-13 16:04:40 +00:00
Henrik Levkowetz f499ba8096 Started the code coverage measurements earlier, in order to make the apparent code coverage of model files less confusing.
- Legacy-Id: 9188
2015-03-13 16:02:31 +00:00
Henrik Levkowetz f15e515baf Added a fudge factor to the coverage test, in order to make it easier to do minor code changes.
- Legacy-Id: 9187
2015-03-13 15:56:13 +00:00
Henrik Levkowetz 1d28ec8f5b Made the test runner try multiple port numbers for the SMTP server, in order to handle the case where multiple test suites are in progress on the same host (which can happen when multiple buildbot slaves are running tests at the same time).
- Legacy-Id: 9186
2015-03-13 15:47:12 +00:00
Henrik Levkowetz d7f44d6e86 Tweaked test to match earlier coverage_changes output format tweak.
- Legacy-Id: 9168
2015-03-08 14:32:14 +00:00
Henrik Levkowetz e4c15de834 Tweaked the coverage_changes output slightly.
- Legacy-Id: 9165
2015-03-08 13:19:46 +00:00
Henrik Levkowetz 5ee64000c3 Changed the test runner to read json files as utf-8.
- Legacy-Id: 9163
2015-03-07 22:28:21 +00:00
Henrik Levkowetz b7095b573f Added a managment command to show the difference in coverage data between the latest release and the latest test run, and a test for the same.
- Legacy-Id: 9162
2015-03-07 22:27:02 +00:00
Henrik Levkowetz 381d37986c Python's pathlib is now available for both 2.x and 3.x, and is well established. Removed the ietf/utils/path.py fallback, and added pathlib to requirements.txt
- Legacy-Id: 9161
2015-03-07 17:17:50 +00:00
Henrik Levkowetz 0be1ad9a2d Fixed a bug in the template coverage expression. Tweaked the informative text prefacing app coverage figures.
- Legacy-Id: 9157
2015-03-06 23:22:54 +00:00
Henrik Levkowetz e94ac990fc Added per-app coverage measurements, to make the numbers shown when not running the full tests suite a bit more meaningful.
- Legacy-Id: 9156
2015-03-06 20:42:20 +00:00
Henrik Levkowetz 86997e1e95 Turned the api.py file into a module. Moved the makeresources management command to the api module. Added some api tests. Added crawling of api files to the test-crawler. Adjusted some resource files discovered by the test suite and test-crawler. Removed a bunch of empty model files.
- Legacy-Id: 9144
2015-03-03 20:23:36 +00:00
Henrik Levkowetz dba3db444c Added test code coverage measurements using coverage.py, integrated as a test in the test suite. This test compares the current code coverage of tests with that saved for the latest release. Also converted the URL and template coverage measurements into tests, comparing current with the latest release. The result of this is that the coverage tests will fail if new code is added without sufficient test coverage to at least match that of the latest release. Over time, this should encourage gradually improved test coverage as seen for both code, templates, and urls. Coverage data is also saved to file, and can be read by the 'coverage' shell command to produce html or text reports.
- Legacy-Id: 9103
2015-02-19 23:42:34 +00:00