mirror of
https://expo.survex.com/repositories/troggle/.git
synced 2024-12-11 19:12:17 +00:00
558 lines
37 KiB
Plaintext
558 lines
37 KiB
Plaintext
|
Creating test database for alias 'default' ('file:memorydb_default?mode=memory&cache=shared')...
|
||
|
test_fix_cave_bare_url115 (troggle.core.TESTS.test_caves.FixturePageTests.test_fix_cave_bare_url115)
|
||
|
Expect to get Page Not Found and status 404 ... ok
|
||
|
test_fix_cave_slug115 (troggle.core.TESTS.test_caves.FixturePageTests.test_fix_cave_slug115)
|
||
|
Expect to get Page Not Found and status 404 ... ok
|
||
|
test_fix_cave_url115 (troggle.core.TESTS.test_caves.FixturePageTests.test_fix_cave_url115) ... ERROR
|
||
|
test_fix_cave_url284 (troggle.core.TESTS.test_caves.FixturePageTests.test_fix_cave_url284) ... ERROR
|
||
|
test_fix_caves284 (troggle.core.TESTS.test_caves.FixturePageTests.test_fix_caves284) ... ERROR
|
||
|
test_fix_expedition (troggle.core.TESTS.test_caves.FixturePageTests.test_fix_expedition) ... ERROR
|
||
|
test_fix_person (troggle.core.TESTS.test_caves.FixturePageTests.test_fix_person) ... ok
|
||
|
test_fix_personexped (troggle.core.TESTS.test_caves.FixturePageTests.test_fix_personexped) ... ok
|
||
|
test_fix_cave_loaded115 (troggle.core.TESTS.test_caves.FixtureTests.test_fix_cave_loaded115) ... ok
|
||
|
test_fix_cave_loaded284 (troggle.core.TESTS.test_caves.FixtureTests.test_fix_cave_loaded284) ... ok
|
||
|
test_fix_person_loaded (troggle.core.TESTS.test_caves.FixtureTests.test_fix_person_loaded) ... ok
|
||
|
test_page_personexpedition (troggle.core.TESTS.test_caves.FixtureTests.test_page_personexpedition) ... ok
|
||
|
test_logbook_exists (troggle.core.TESTS.test_imports.ImportTest.test_logbook_exists) ... ok
|
||
|
test_installs (troggle.core.TESTS.test_imports.SubprocessTest.test_installs)
|
||
|
Expects external software installed: cavern, survexport, git ... ok
|
||
|
test_loser_survex_status (troggle.core.TESTS.test_imports.SubprocessTest.test_loser_survex_status)
|
||
|
Expects no failures of survex files ... FAIL
|
||
|
test_repos_git_status (troggle.core.TESTS.test_imports.SubprocessTest.test_repos_git_status)
|
||
|
Expects clean git repos with no added files and no merge failures ... FAIL
|
||
|
test_utf8 (troggle.core.TESTS.test_imports.SubprocessTest.test_utf8)
|
||
|
Expects that utf8 is the default encoding when opening files ... ok
|
||
|
test_admin_login (troggle.core.TESTS.test_logins.ComplexLoginTests.test_admin_login) ... ok
|
||
|
test_authentication_login (troggle.core.TESTS.test_logins.ComplexLoginTests.test_authentication_login) ... ok
|
||
|
test_noinfo_login (troggle.core.TESTS.test_logins.ComplexLoginTests.test_noinfo_login) ... ok
|
||
|
test_ordinary_login (troggle.core.TESTS.test_logins.ComplexLoginTests.test_ordinary_login) ... ok
|
||
|
test_user_force (troggle.core.TESTS.test_logins.ComplexLoginTests.test_user_force) ... ok
|
||
|
test_fix_admin_login_fail (troggle.core.TESTS.test_logins.FixturePageTests.test_fix_admin_login_fail) ... ok
|
||
|
test_dwg_upload_drawing (troggle.core.TESTS.test_logins.PostTests.test_dwg_upload_drawing)
|
||
|
Expect no-suffix file to upload ... ok
|
||
|
test_dwg_upload_txt (troggle.core.TESTS.test_logins.PostTests.test_dwg_upload_txt)
|
||
|
Expect .pdf file to be refused upload ... ok
|
||
|
test_file_permissions (troggle.core.TESTS.test_logins.PostTests.test_file_permissions)
|
||
|
Expect to be allowed to write to SCANS_ROOT, DRAWINGS_DATA, SURVEX_DATA, EXPOWEB ... ok
|
||
|
test_photo_folder_create (troggle.core.TESTS.test_logins.PostTests.test_photo_folder_create)
|
||
|
Create folder for new user ... ERROR
|
||
|
test_photo_upload (troggle.core.TESTS.test_logins.PostTests.test_photo_upload)
|
||
|
Expect photo upload to work on any file (contrary to msg on screen) ... ERROR
|
||
|
test_photo_upload_rename (troggle.core.TESTS.test_logins.PostTests.test_photo_upload_rename)
|
||
|
Expect photo upload to work on any file (contrary to msg on screen) ... ERROR
|
||
|
test_scan_upload (troggle.core.TESTS.test_logins.PostTests.test_scan_upload)
|
||
|
Expect scan upload to wallet to work on any file ... ok
|
||
|
test_aliases (troggle.core.TESTS.test_parsers.ImportTest.test_aliases) ... ok
|
||
|
test_lbe (troggle.core.TESTS.test_parsers.ImportTest.test_lbe) ... ok
|
||
|
test_lbe_edit (troggle.core.TESTS.test_parsers.ImportTest.test_lbe_edit)
|
||
|
This page requires the user to be logged in first, hence the extra shenanigans ... ok
|
||
|
test_lbe_new (troggle.core.TESTS.test_parsers.ImportTest.test_lbe_new)
|
||
|
This page requires the user to be logged in first, hence the extra shenanigans ... ERROR
|
||
|
test_logbook_exists (troggle.core.TESTS.test_parsers.ImportTest.test_logbook_exists) ... ok
|
||
|
test_logbook_parse_issues (troggle.core.TESTS.test_parsers.ImportTest.test_logbook_parse_issues)
|
||
|
This is just testing the db not the web page ... ok
|
||
|
test_people (troggle.core.TESTS.test_parsers.ImportTest.test_people) ... ok
|
||
|
test_survexfiles (troggle.core.TESTS.test_parsers.ImportTest.test_survexfiles) ... ERROR
|
||
|
test_statistics (troggle.core.TESTS.test_urls.URLTests.test_statistics) ... ok
|
||
|
test_stats (troggle.core.TESTS.test_urls.URLTests.test_stats) ... ok
|
||
|
test_url_allscans (troggle.core.TESTS.test_urls.URLTests.test_url_allscans)
|
||
|
Test the {% url "allscans" %} reverse resolution ... ok
|
||
|
test_url_stats (troggle.core.TESTS.test_urls.URLTests.test_url_stats)
|
||
|
Test the {% url "stats" %} reverse resolution ... ok
|
||
|
test_url_survexcaveslist (troggle.core.TESTS.test_urls.URLTests.test_url_survexcaveslist)
|
||
|
Test the {% url "allscans" %} reverse resolution ... ok
|
||
|
test_url_threed (troggle.core.TESTS.test_urls.URLTests.test_url_threed)
|
||
|
Test the {% url "threed" %} reverse resolution ... ok
|
||
|
test_cave_kataster_not_found (troggle.core.TESTS.tests.PageTests.test_cave_kataster_not_found) ... ok
|
||
|
test_caves_page (troggle.core.TESTS.tests.PageTests.test_caves_page) ... ok
|
||
|
test_caves_page_kataster_not_found (troggle.core.TESTS.tests.PageTests.test_caves_page_kataster_not_found) ... ok
|
||
|
test_dataissues (troggle.core.TESTS.tests.PageTests.test_dataissues) ... ok
|
||
|
test_expoweb_dir (troggle.core.TESTS.tests.PageTests.test_expoweb_dir) ... ok
|
||
|
test_expoweb_dir_no_index (troggle.core.TESTS.tests.PageTests.test_expoweb_dir_no_index) ... ok
|
||
|
test_expoweb_dir_with_index2 (troggle.core.TESTS.tests.PageTests.test_expoweb_dir_with_index2) ... ok
|
||
|
test_expoweb_dir_with_index_htm (troggle.core.TESTS.tests.PageTests.test_expoweb_dir_with_index_htm) ... ok
|
||
|
test_expoweb_dir_with_index_html (troggle.core.TESTS.tests.PageTests.test_expoweb_dir_with_index_html) ... ok
|
||
|
test_expoweb_dirslash (troggle.core.TESTS.tests.PageTests.test_expoweb_dirslash) ... ok
|
||
|
test_expoweb_htm (troggle.core.TESTS.tests.PageTests.test_expoweb_htm) ... ok
|
||
|
test_expoweb_no_dir (troggle.core.TESTS.tests.PageTests.test_expoweb_no_dir) ... ok
|
||
|
test_expoweb_notfound (troggle.core.TESTS.tests.PageTests.test_expoweb_notfound) ... ok
|
||
|
test_expoweb_paths (troggle.core.TESTS.tests.PageTests.test_expoweb_paths) ... ok
|
||
|
test_expoweb_root (troggle.core.TESTS.tests.PageTests.test_expoweb_root) ... ok
|
||
|
test_expoweb_root_slash (troggle.core.TESTS.tests.PageTests.test_expoweb_root_slash) ... ok
|
||
|
test_expoweb_troggle_default (troggle.core.TESTS.tests.PageTests.test_expoweb_troggle_default) ... ok
|
||
|
test_expoweb_troggle_default_slash (troggle.core.TESTS.tests.PageTests.test_expoweb_troggle_default_slash) ... ok
|
||
|
test_expoweb_via_areaid (troggle.core.TESTS.tests.PageTests.test_expoweb_via_areaid) ... ok
|
||
|
test_not_found_survexfile_cave (troggle.core.TESTS.tests.PageTests.test_not_found_survexfile_cave) ... ok
|
||
|
test_page_admin (troggle.core.TESTS.tests.PageTests.test_page_admin) ... ok
|
||
|
test_page_admindocs_exped (troggle.core.TESTS.tests.PageTests.test_page_admindocs_exped) ... ok
|
||
|
test_page_dwgallfiles_empty (troggle.core.TESTS.tests.PageTests.test_page_dwgallfiles_empty) ... ok
|
||
|
test_page_dwgallfiles_empty_slash (troggle.core.TESTS.tests.PageTests.test_page_dwgallfiles_empty_slash) ... ok
|
||
|
test_page_dwgdataraw_empty (troggle.core.TESTS.tests.PageTests.test_page_dwgdataraw_empty) ... ok
|
||
|
test_page_expofile_document_loeffler_pdf (troggle.core.TESTS.tests.PageTests.test_page_expofile_document_loeffler_pdf) ... ok
|
||
|
test_page_expofile_document_png (troggle.core.TESTS.tests.PageTests.test_page_expofile_document_png) ... ok
|
||
|
test_page_expofile_document_rope_pdf (troggle.core.TESTS.tests.PageTests.test_page_expofile_document_rope_pdf) ... ok
|
||
|
test_page_expofile_documents (troggle.core.TESTS.tests.PageTests.test_page_expofile_documents) ... ok
|
||
|
test_page_expofile_documents_slash (troggle.core.TESTS.tests.PageTests.test_page_expofile_documents_slash) ... ok
|
||
|
test_page_expofile_writeup (troggle.core.TESTS.tests.PageTests.test_page_expofile_writeup) ... ok
|
||
|
test_page_expofiles_badness (troggle.core.TESTS.tests.PageTests.test_page_expofiles_badness) ... ok
|
||
|
test_page_expofiles_docs_dir (troggle.core.TESTS.tests.PageTests.test_page_expofiles_docs_dir) ... ok
|
||
|
test_page_expofiles_root_dir (troggle.core.TESTS.tests.PageTests.test_page_expofiles_root_dir) ... ok
|
||
|
test_page_expofiles_root_slash_dir (troggle.core.TESTS.tests.PageTests.test_page_expofiles_root_slash_dir) ... ok
|
||
|
test_page_folk (troggle.core.TESTS.tests.PageTests.test_page_folk) ... ok
|
||
|
test_page_photos_dir (troggle.core.TESTS.tests.PageTests.test_page_photos_dir) ... ok
|
||
|
test_page_photos_not_ok (troggle.core.TESTS.tests.PageTests.test_page_photos_not_ok) ... ok
|
||
|
test_page_photos_ok (troggle.core.TESTS.tests.PageTests.test_page_photos_ok) ... ok
|
||
|
test_page_site_media_css (troggle.core.TESTS.tests.PageTests.test_page_site_media_css) ... ok
|
||
|
test_page_site_media_ok (troggle.core.TESTS.tests.PageTests.test_page_site_media_ok) ... ok
|
||
|
test_page_slash_empty (troggle.core.TESTS.tests.PageTests.test_page_slash_empty) ... ok
|
||
|
test_page_ss (troggle.core.TESTS.tests.PageTests.test_page_ss) ... ok
|
||
|
test_page_survey_scans_dir (troggle.core.TESTS.tests.PageTests.test_page_survey_scans_dir) ... ok
|
||
|
test_page_survey_scans_empty (troggle.core.TESTS.tests.PageTests.test_page_survey_scans_empty) ... ok
|
||
|
test_stations (troggle.core.TESTS.tests.PageTests.test_stations) ... ok
|
||
|
test_survexdebug (troggle.core.TESTS.tests.PageTests.test_survexdebug) ... ok
|
||
|
test_surveximport (troggle.core.TESTS.tests.PageTests.test_surveximport) ... ok
|
||
|
test_therionissues (troggle.core.TESTS.tests.PageTests.test_therionissues) ... ok
|
||
|
test_allscans_view (troggle.core.TESTS.tests_copilot.TestSurveyScansView.test_allscans_view) ... ok
|
||
|
test_walletslistyear_view (troggle.core.TESTS.tests_copilot.TestSurveyScansView.test_walletslistyear_view) ... ok
|
||
|
test_import_Cave (troggle.core.TESTS.test_imports.SimpleTest.test_import_Cave) ... ok
|
||
|
test_import_TroggleModel (troggle.core.TESTS.test_imports.SimpleTest.test_import_TroggleModel) ... ok
|
||
|
test_import_core_views_caves (troggle.core.TESTS.test_imports.SimpleTest.test_import_core_views_caves) ... ok
|
||
|
test_import_imports (troggle.core.TESTS.test_imports.SimpleTest.test_import_imports) ... ok
|
||
|
test_import_parsers_QMs (troggle.core.TESTS.test_imports.SimpleTest.test_import_parsers_QMs) ... ok
|
||
|
test_import_parsers_logbooks (troggle.core.TESTS.test_imports.SimpleTest.test_import_parsers_logbooks) ... ok
|
||
|
test_import_parsers_mix (troggle.core.TESTS.test_imports.SimpleTest.test_import_parsers_mix) ... ok
|
||
|
test_import_parsers_people (troggle.core.TESTS.test_imports.SimpleTest.test_import_parsers_people) ... ok
|
||
|
test_import_parsers_survex (troggle.core.TESTS.test_imports.SimpleTest.test_import_parsers_survex) ... ok
|
||
|
test_import_parsers_surveys (troggle.core.TESTS.test_imports.SimpleTest.test_import_parsers_surveys) ... ok
|
||
|
test_import_urls (troggle.core.TESTS.test_imports.SimpleTest.test_import_urls) ... ok
|
||
|
test_import_views_uploads (troggle.core.TESTS.test_imports.SimpleTest.test_import_views_uploads) ... ok
|
||
|
test_import_views_walletedit (troggle.core.TESTS.test_imports.SimpleTest.test_import_views_walletedit) ... ok
|
||
|
test_test_setting (troggle.core.TESTS.test_imports.SimpleTest.test_test_setting) ... ok
|
||
|
|
||
|
======================================================================
|
||
|
ERROR: test_fix_cave_url115 (troggle.core.TESTS.test_caves.FixturePageTests.test_fix_cave_url115)
|
||
|
----------------------------------------------------------------------
|
||
|
Traceback (most recent call last):
|
||
|
File "/home/philip/troggle/core/TESTS/test_caves.py", line 140, in test_fix_cave_url115
|
||
|
response = self.client.get("/1623/115.url") # yes this is intentional, see the inserted data above & fixture
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 1049, in get
|
||
|
response = super().get(path, data=data, secure=secure, headers=headers, **extra)
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 465, in get
|
||
|
return self.generic(
|
||
|
^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 617, in generic
|
||
|
return self.request(**r)
|
||
|
^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 1013, in request
|
||
|
self.check_exception(response)
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 743, in check_exception
|
||
|
raise exc_value
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/core/handlers/exception.py", line 55, in inner
|
||
|
response = get_response(request)
|
||
|
^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/core/handlers/base.py", line 197, in _get_response
|
||
|
response = wrapped_callback(request, *callback_args, **callback_kwargs)
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/troggle/core/views/caves.py", line 353, in cavepage
|
||
|
return rendercave(request, cave, cave.slug())
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/troggle/core/views/caves.py", line 301, in rendercave
|
||
|
"year": current_expo()
|
||
|
^^^^^^^^^^^^^^
|
||
|
File "/home/philip/troggle/core/utils.py", line 126, in current_expo
|
||
|
make_new_expo(str(y))
|
||
|
File "/home/philip/troggle/core/utils.py", line 96, in make_new_expo
|
||
|
u = User.objects.get(username='expo')
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/db/models/manager.py", line 87, in manager_method
|
||
|
return getattr(self.get_queryset(), name)(*args, **kwargs)
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/db/models/query.py", line 649, in get
|
||
|
raise self.model.DoesNotExist(
|
||
|
django.contrib.auth.models.User.DoesNotExist: User matching query does not exist.
|
||
|
|
||
|
======================================================================
|
||
|
ERROR: test_fix_cave_url284 (troggle.core.TESTS.test_caves.FixturePageTests.test_fix_cave_url284)
|
||
|
----------------------------------------------------------------------
|
||
|
Traceback (most recent call last):
|
||
|
File "/home/philip/troggle/core/TESTS/test_caves.py", line 148, in test_fix_cave_url284
|
||
|
response = self.client.get("/1623/284/284.html")
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 1049, in get
|
||
|
response = super().get(path, data=data, secure=secure, headers=headers, **extra)
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 465, in get
|
||
|
return self.generic(
|
||
|
^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 617, in generic
|
||
|
return self.request(**r)
|
||
|
^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 1013, in request
|
||
|
self.check_exception(response)
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 743, in check_exception
|
||
|
raise exc_value
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/core/handlers/exception.py", line 55, in inner
|
||
|
response = get_response(request)
|
||
|
^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/core/handlers/base.py", line 197, in _get_response
|
||
|
response = wrapped_callback(request, *callback_args, **callback_kwargs)
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/troggle/core/views/caves.py", line 353, in cavepage
|
||
|
return rendercave(request, cave, cave.slug())
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/troggle/core/views/caves.py", line 301, in rendercave
|
||
|
"year": current_expo()
|
||
|
^^^^^^^^^^^^^^
|
||
|
File "/home/philip/troggle/core/utils.py", line 126, in current_expo
|
||
|
make_new_expo(str(y))
|
||
|
File "/home/philip/troggle/core/utils.py", line 96, in make_new_expo
|
||
|
u = User.objects.get(username='expo')
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/db/models/manager.py", line 87, in manager_method
|
||
|
return getattr(self.get_queryset(), name)(*args, **kwargs)
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/db/models/query.py", line 649, in get
|
||
|
raise self.model.DoesNotExist(
|
||
|
django.contrib.auth.models.User.DoesNotExist: User matching query does not exist.
|
||
|
|
||
|
======================================================================
|
||
|
ERROR: test_fix_caves284 (troggle.core.TESTS.test_caves.FixturePageTests.test_fix_caves284)
|
||
|
----------------------------------------------------------------------
|
||
|
Traceback (most recent call last):
|
||
|
File "/home/philip/troggle/core/TESTS/test_caves.py", line 190, in test_fix_caves284
|
||
|
response = self.client.get("/caves")
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 1049, in get
|
||
|
response = super().get(path, data=data, secure=secure, headers=headers, **extra)
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 465, in get
|
||
|
return self.generic(
|
||
|
^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 617, in generic
|
||
|
return self.request(**r)
|
||
|
^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 1013, in request
|
||
|
self.check_exception(response)
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 743, in check_exception
|
||
|
raise exc_value
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/core/handlers/exception.py", line 55, in inner
|
||
|
response = get_response(request)
|
||
|
^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/core/handlers/base.py", line 197, in _get_response
|
||
|
response = wrapped_callback(request, *callback_args, **callback_kwargs)
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/troggle/core/views/caves.py", line 156, in caveindex
|
||
|
"cavepage": True, "year": current_expo()},
|
||
|
^^^^^^^^^^^^^^
|
||
|
File "/home/philip/troggle/core/utils.py", line 126, in current_expo
|
||
|
make_new_expo(str(y))
|
||
|
File "/home/philip/troggle/core/utils.py", line 96, in make_new_expo
|
||
|
u = User.objects.get(username='expo')
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/db/models/manager.py", line 87, in manager_method
|
||
|
return getattr(self.get_queryset(), name)(*args, **kwargs)
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/db/models/query.py", line 649, in get
|
||
|
raise self.model.DoesNotExist(
|
||
|
django.contrib.auth.models.User.DoesNotExist: User matching query does not exist.
|
||
|
|
||
|
======================================================================
|
||
|
ERROR: test_fix_expedition (troggle.core.TESTS.test_caves.FixturePageTests.test_fix_expedition)
|
||
|
----------------------------------------------------------------------
|
||
|
Traceback (most recent call last):
|
||
|
File "/home/philip/troggle/core/TESTS/test_caves.py", line 103, in test_fix_expedition
|
||
|
response = self.client.get("/expedition/2019")
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 1049, in get
|
||
|
response = super().get(path, data=data, secure=secure, headers=headers, **extra)
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 465, in get
|
||
|
return self.generic(
|
||
|
^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 617, in generic
|
||
|
return self.request(**r)
|
||
|
^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 1013, in request
|
||
|
self.check_exception(response)
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 743, in check_exception
|
||
|
raise exc_value
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/core/handlers/exception.py", line 55, in inner
|
||
|
response = get_response(request)
|
||
|
^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/core/handlers/base.py", line 197, in _get_response
|
||
|
response = wrapped_callback(request, *callback_args, **callback_kwargs)
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/troggle/core/views/logbooks.py", line 69, in expedition
|
||
|
current = current_expo() # creates new expo after 31st Dec.
|
||
|
^^^^^^^^^^^^^^
|
||
|
File "/home/philip/troggle/core/utils.py", line 126, in current_expo
|
||
|
make_new_expo(str(y))
|
||
|
File "/home/philip/troggle/core/utils.py", line 96, in make_new_expo
|
||
|
u = User.objects.get(username='expo')
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/db/models/manager.py", line 87, in manager_method
|
||
|
return getattr(self.get_queryset(), name)(*args, **kwargs)
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/db/models/query.py", line 649, in get
|
||
|
raise self.model.DoesNotExist(
|
||
|
django.contrib.auth.models.User.DoesNotExist: User matching query does not exist.
|
||
|
|
||
|
======================================================================
|
||
|
ERROR: test_photo_folder_create (troggle.core.TESTS.test_logins.PostTests.test_photo_folder_create)
|
||
|
Create folder for new user
|
||
|
----------------------------------------------------------------------
|
||
|
Traceback (most recent call last):
|
||
|
File "/home/philip/troggle/core/TESTS/test_logins.py", line 259, in test_photo_folder_create
|
||
|
response = self.client.post("/photoupload/", data={"photographer": "GussieFinkNottle"})
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 1070, in post
|
||
|
response = super().post(
|
||
|
^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 490, in post
|
||
|
return self.generic(
|
||
|
^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 617, in generic
|
||
|
return self.request(**r)
|
||
|
^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 1013, in request
|
||
|
self.check_exception(response)
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 743, in check_exception
|
||
|
raise exc_value
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/core/handlers/exception.py", line 55, in inner
|
||
|
response = get_response(request)
|
||
|
^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/core/handlers/base.py", line 197, in _get_response
|
||
|
response = wrapped_callback(request, *callback_args, **callback_kwargs)
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/troggle/core/views/auth.py", line 25, in __call__
|
||
|
return self.f(*args, **kwargs)
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/contrib/auth/decorators.py", line 23, in _wrapper_view
|
||
|
return view_func(request, *args, **kwargs)
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/troggle/core/views/uploads.py", line 611, in photoupload
|
||
|
year = current_expo()
|
||
|
^^^^^^^^^^^^^^
|
||
|
File "/home/philip/troggle/core/utils.py", line 126, in current_expo
|
||
|
make_new_expo(str(y))
|
||
|
File "/home/philip/troggle/core/utils.py", line 96, in make_new_expo
|
||
|
u = User.objects.get(username='expo')
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/db/models/manager.py", line 87, in manager_method
|
||
|
return getattr(self.get_queryset(), name)(*args, **kwargs)
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/db/models/query.py", line 649, in get
|
||
|
raise self.model.DoesNotExist(
|
||
|
django.contrib.auth.models.User.DoesNotExist: User matching query does not exist.
|
||
|
|
||
|
======================================================================
|
||
|
ERROR: test_photo_upload (troggle.core.TESTS.test_logins.PostTests.test_photo_upload)
|
||
|
Expect photo upload to work on any file (contrary to msg on screen)
|
||
|
----------------------------------------------------------------------
|
||
|
Traceback (most recent call last):
|
||
|
File "/home/philip/troggle/core/TESTS/test_logins.py", line 189, in test_photo_upload
|
||
|
response = self.client.post(
|
||
|
^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 1070, in post
|
||
|
response = super().post(
|
||
|
^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 490, in post
|
||
|
return self.generic(
|
||
|
^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 617, in generic
|
||
|
return self.request(**r)
|
||
|
^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 1013, in request
|
||
|
self.check_exception(response)
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 743, in check_exception
|
||
|
raise exc_value
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/core/handlers/exception.py", line 55, in inner
|
||
|
response = get_response(request)
|
||
|
^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/core/handlers/base.py", line 197, in _get_response
|
||
|
response = wrapped_callback(request, *callback_args, **callback_kwargs)
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/troggle/core/views/auth.py", line 25, in __call__
|
||
|
return self.f(*args, **kwargs)
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/contrib/auth/decorators.py", line 23, in _wrapper_view
|
||
|
return view_func(request, *args, **kwargs)
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/troggle/core/views/uploads.py", line 611, in photoupload
|
||
|
year = current_expo()
|
||
|
^^^^^^^^^^^^^^
|
||
|
File "/home/philip/troggle/core/utils.py", line 126, in current_expo
|
||
|
make_new_expo(str(y))
|
||
|
File "/home/philip/troggle/core/utils.py", line 96, in make_new_expo
|
||
|
u = User.objects.get(username='expo')
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/db/models/manager.py", line 87, in manager_method
|
||
|
return getattr(self.get_queryset(), name)(*args, **kwargs)
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/db/models/query.py", line 649, in get
|
||
|
raise self.model.DoesNotExist(
|
||
|
django.contrib.auth.models.User.DoesNotExist: User matching query does not exist.
|
||
|
|
||
|
======================================================================
|
||
|
ERROR: test_photo_upload_rename (troggle.core.TESTS.test_logins.PostTests.test_photo_upload_rename)
|
||
|
Expect photo upload to work on any file (contrary to msg on screen)
|
||
|
----------------------------------------------------------------------
|
||
|
Traceback (most recent call last):
|
||
|
File "/home/philip/troggle/core/TESTS/test_logins.py", line 228, in test_photo_upload_rename
|
||
|
response = self.client.post(
|
||
|
^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 1070, in post
|
||
|
response = super().post(
|
||
|
^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 490, in post
|
||
|
return self.generic(
|
||
|
^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 617, in generic
|
||
|
return self.request(**r)
|
||
|
^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 1013, in request
|
||
|
self.check_exception(response)
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 743, in check_exception
|
||
|
raise exc_value
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/core/handlers/exception.py", line 55, in inner
|
||
|
response = get_response(request)
|
||
|
^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/core/handlers/base.py", line 197, in _get_response
|
||
|
response = wrapped_callback(request, *callback_args, **callback_kwargs)
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/troggle/core/views/auth.py", line 25, in __call__
|
||
|
return self.f(*args, **kwargs)
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/contrib/auth/decorators.py", line 23, in _wrapper_view
|
||
|
return view_func(request, *args, **kwargs)
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/troggle/core/views/uploads.py", line 611, in photoupload
|
||
|
year = current_expo()
|
||
|
^^^^^^^^^^^^^^
|
||
|
File "/home/philip/troggle/core/utils.py", line 126, in current_expo
|
||
|
make_new_expo(str(y))
|
||
|
File "/home/philip/troggle/core/utils.py", line 96, in make_new_expo
|
||
|
u = User.objects.get(username='expo')
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/db/models/manager.py", line 87, in manager_method
|
||
|
return getattr(self.get_queryset(), name)(*args, **kwargs)
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/db/models/query.py", line 649, in get
|
||
|
raise self.model.DoesNotExist(
|
||
|
django.contrib.auth.models.User.DoesNotExist: User matching query does not exist.
|
||
|
|
||
|
======================================================================
|
||
|
ERROR: test_lbe_new (troggle.core.TESTS.test_parsers.ImportTest.test_lbe_new)
|
||
|
This page requires the user to be logged in first, hence the extra shenanigans
|
||
|
----------------------------------------------------------------------
|
||
|
Traceback (most recent call last):
|
||
|
File "/home/philip/troggle/core/TESTS/test_parsers.py", line 141, in test_lbe_new
|
||
|
response = self.client.get(f"/logbookedit/")
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 1049, in get
|
||
|
response = super().get(path, data=data, secure=secure, headers=headers, **extra)
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 465, in get
|
||
|
return self.generic(
|
||
|
^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 617, in generic
|
||
|
return self.request(**r)
|
||
|
^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 1013, in request
|
||
|
self.check_exception(response)
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 743, in check_exception
|
||
|
raise exc_value
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/core/handlers/exception.py", line 55, in inner
|
||
|
response = get_response(request)
|
||
|
^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/core/handlers/base.py", line 197, in _get_response
|
||
|
response = wrapped_callback(request, *callback_args, **callback_kwargs)
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/troggle/core/views/auth.py", line 25, in __call__
|
||
|
return self.f(*args, **kwargs)
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/contrib/auth/decorators.py", line 23, in _wrapper_view
|
||
|
return view_func(request, *args, **kwargs)
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/troggle/core/views/uploads.py", line 192, in logbookedit
|
||
|
year = current_expo()
|
||
|
^^^^^^^^^^^^^^
|
||
|
File "/home/philip/troggle/core/utils.py", line 126, in current_expo
|
||
|
make_new_expo(str(y))
|
||
|
File "/home/philip/troggle/core/utils.py", line 96, in make_new_expo
|
||
|
u = User.objects.get(username='expo')
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/db/models/manager.py", line 87, in manager_method
|
||
|
return getattr(self.get_queryset(), name)(*args, **kwargs)
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/db/models/query.py", line 649, in get
|
||
|
raise self.model.DoesNotExist(
|
||
|
django.contrib.auth.models.User.DoesNotExist: User matching query does not exist.
|
||
|
|
||
|
======================================================================
|
||
|
ERROR: test_survexfiles (troggle.core.TESTS.test_parsers.ImportTest.test_survexfiles)
|
||
|
----------------------------------------------------------------------
|
||
|
Traceback (most recent call last):
|
||
|
File "/home/philip/troggle/core/TESTS/test_parsers.py", line 195, in test_survexfiles
|
||
|
response = self.client.get("/survexfile/caves/")
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 1049, in get
|
||
|
response = super().get(path, data=data, secure=secure, headers=headers, **extra)
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 465, in get
|
||
|
return self.generic(
|
||
|
^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 617, in generic
|
||
|
return self.request(**r)
|
||
|
^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 1013, in request
|
||
|
self.check_exception(response)
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/test/client.py", line 743, in check_exception
|
||
|
raise exc_value
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/core/handlers/exception.py", line 55, in inner
|
||
|
response = get_response(request)
|
||
|
^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/core/handlers/base.py", line 197, in _get_response
|
||
|
response = wrapped_callback(request, *callback_args, **callback_kwargs)
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/troggle/core/views/survex.py", line 655, in survexcaveslist
|
||
|
"year": current_expo(),
|
||
|
^^^^^^^^^^^^^^
|
||
|
File "/home/philip/troggle/core/utils.py", line 126, in current_expo
|
||
|
make_new_expo(str(y))
|
||
|
File "/home/philip/troggle/core/utils.py", line 96, in make_new_expo
|
||
|
u = User.objects.get(username='expo')
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/db/models/manager.py", line 87, in manager_method
|
||
|
return getattr(self.get_queryset(), name)(*args, **kwargs)
|
||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||
|
File "/home/philip/p12d5/lib/python3.12/site-packages/django/db/models/query.py", line 649, in get
|
||
|
raise self.model.DoesNotExist(
|
||
|
django.contrib.auth.models.User.DoesNotExist: User matching query does not exist.
|
||
|
|
||
|
======================================================================
|
||
|
FAIL: test_loser_survex_status (troggle.core.TESTS.test_imports.SubprocessTest.test_loser_survex_status)
|
||
|
Expects no failures of survex files
|
||
|
----------------------------------------------------------------------
|
||
|
Traceback (most recent call last):
|
||
|
File "/home/philip/troggle/core/TESTS/test_imports.py", line 261, in test_loser_survex_status
|
||
|
self.assertTrue(sp.returncode == 0, f"{cwd} - survex is unhappy")
|
||
|
AssertionError: False is not true : /home/philip/loser - survex is unhappy
|
||
|
|
||
|
======================================================================
|
||
|
FAIL: test_repos_git_status (troggle.core.TESTS.test_imports.SubprocessTest.test_repos_git_status)
|
||
|
Expects clean git repos with no added files and no merge failures
|
||
|
----------------------------------------------------------------------
|
||
|
Traceback (most recent call last):
|
||
|
File "/home/philip/troggle/core/TESTS/test_imports.py", line 233, in test_repos_git_status
|
||
|
self.assertIsNotNone(phmatch, msg)
|
||
|
AssertionError: unexpectedly None : /home/philip/troggle - Failed to find expected git output: "nothing to commit, working tree clean"
|
||
|
|
||
|
----------------------------------------------------------------------
|
||
|
Ran 109 tests in 13.383s
|
||
|
|
||
|
FAILED (failures=2, errors=9)
|
||
|
Destroying test database for alias 'default' ('file:memorydb_default?mode=memory&cache=shared')...
|