diff --git a/_cave-fixopenqms.html b/_cave-fixopenqms.html new file mode 100644 index 0000000..4c25cee --- /dev/null +++ b/_cave-fixopenqms.html @@ -0,0 +1,131 @@ +<!DOCTYPE html> +<!-- base.html - this text visible because this template has been included --> +<html lang="en"> +<head> +<script>document.interestCohort = null;</script> <!-- Turn off Google FLoC --> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> +<link rel="stylesheet" type="text/css" href="/site_media/css/trog3.css" title="troggle-style"/> +<title>Troggle Error - Bad Slug</title> + + +</head> +<body> + +<div id="header"> + <h1>CUCC Expeditions to Austria: 1976 - 2022</h1> + <div id="editLinks"> + <a href="/">Home</a> | + <a id="cuccLink" href="http://camcaving.uk/">CUCC</a> | + <a id="expoWebsiteLink" href="http://expo.survex.com">expo.survex</a> | + <a id="handbook" href="/handbook/computing/onlinesystems.html">Handbook</a> | + <a href='/accounts/login/'>Log in</a> + + + </div> +</div> +<div class="toolbarlinks"> + <a href="/survexfile/caves-1623/264/264.svx">264</a> | + <a href="/survexfile/caves-1623/290/290.svx">290</a> | + <a href="/survexfile/caves-1626/359/359.svx">359</a> | + <a href="/survexfile/">Survex</a> | + <a href="/survexfile/caves/">All Survex</a> | + <a href="/survey_scans/">Scans</a> | + <a href="/walletedit/">Upload Scans</a> | + <a href="/dwgfiles/">Drawings</a> | + <a href="/dwgupload/">Upload Drawings</a> | + <a href="/photoupload/">Upload Photos</a> | + <a href="/1623/290/290">290 (FGH)</a> | + <a href="/1623/264/264.html">264 (Balkonhöhle)</a> | + <br> + + <a href="/dataissues">Data Issues</a> | + <a href="/handbook/computing/todo-data.html">tasks to do </a> | + <a id="cavesLink" href="/indxal.htm">caves</a> | + <a id="qmsLink" href="/cave/qms/1623-290">QMs</a> | + <a id="entsLink" href="/eastings">ents</a> | + <a id="folklink" href="/folk">expoers</a> | + <a id="caversLink" href="/people">survey lengths</a> | + <a href="/stats">statistics</a> | + <a href="/wallets/year/2022">Wallets(2022)</a> | + <a href="/expedition/2022">Expo(2022)</a> | + <a href="/controlpanel">Control panel</a> | + +</div> + +<div id="nav"> + + <!-- Not used any more? --> + +</div> + +<div id="content" > + + + + + <div id="related"> + + + </div> + + +<div class='middle'> + <h2>Bad Slug Error</h2> +</div> + + +<div class='middle3 login'> + <div class='space'></div> + <div class='align-center'> + <h3>There has been a Troggle error. </h3> + <h4> + A Cave, Entrance or QM has been referred to using a label (a 'slug') which does not work. + <p>This is the bad slug: + + <font color="red"> + + 1623-284 - from caveQMs() + + </font> + <p> + This is the previous page which had the bad slug reference on it: <font color="red"> +<script type="text/javascript"> + document.write(document.referrer); +</script> +</font> + </h4> + <p> +<p>It is also possible that the cave description page is being viewed using an alternative URL, +so that the local links in the page to other parts of the cave do not work. +<br> +e.g. /cave/1623-161 is not the correct way of looking at Kaninchenhohle, +<br> +you should be using <br> +/1623/161/top.htm instead. +<p>If that is the case, tell a nerd that we haven't fixed the fault that we thought we had fixed. + + <div class='space'><p> </div> + + <h3>What you should do now</h3> + <p>Please report the error by emailing the nerds at + <a href="mailto:expo-tech@lists.wookware.org">expo-tech@lists.wookware.org</a> with this information: + <ol> + <li>The bad slug text written in <font color="red">red</font> above. + <li>The previous page URL, also written in <font color="red">red</font> above + <li>Go back to this previous page <script type="text/javascript"> + document.write("<a href='",document.referrer,"'>",document.referrer,"</a>"); + </script> + and see if you can tell whether the bad slug was in HTML text which had been written manually, or whether it appeared to be a programming error. + </ol> + + + </div> +</div> +</div> + + +</div> +<div class="footer"> +</div> +</body> +</html> diff --git a/_cave-fixqms.html b/_cave-fixqms.html new file mode 100644 index 0000000..4c25cee --- /dev/null +++ b/_cave-fixqms.html @@ -0,0 +1,131 @@ +<!DOCTYPE html> +<!-- base.html - this text visible because this template has been included --> +<html lang="en"> +<head> +<script>document.interestCohort = null;</script> <!-- Turn off Google FLoC --> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> +<link rel="stylesheet" type="text/css" href="/site_media/css/trog3.css" title="troggle-style"/> +<title>Troggle Error - Bad Slug</title> + + +</head> +<body> + +<div id="header"> + <h1>CUCC Expeditions to Austria: 1976 - 2022</h1> + <div id="editLinks"> + <a href="/">Home</a> | + <a id="cuccLink" href="http://camcaving.uk/">CUCC</a> | + <a id="expoWebsiteLink" href="http://expo.survex.com">expo.survex</a> | + <a id="handbook" href="/handbook/computing/onlinesystems.html">Handbook</a> | + <a href='/accounts/login/'>Log in</a> + + + </div> +</div> +<div class="toolbarlinks"> + <a href="/survexfile/caves-1623/264/264.svx">264</a> | + <a href="/survexfile/caves-1623/290/290.svx">290</a> | + <a href="/survexfile/caves-1626/359/359.svx">359</a> | + <a href="/survexfile/">Survex</a> | + <a href="/survexfile/caves/">All Survex</a> | + <a href="/survey_scans/">Scans</a> | + <a href="/walletedit/">Upload Scans</a> | + <a href="/dwgfiles/">Drawings</a> | + <a href="/dwgupload/">Upload Drawings</a> | + <a href="/photoupload/">Upload Photos</a> | + <a href="/1623/290/290">290 (FGH)</a> | + <a href="/1623/264/264.html">264 (Balkonhöhle)</a> | + <br> + + <a href="/dataissues">Data Issues</a> | + <a href="/handbook/computing/todo-data.html">tasks to do </a> | + <a id="cavesLink" href="/indxal.htm">caves</a> | + <a id="qmsLink" href="/cave/qms/1623-290">QMs</a> | + <a id="entsLink" href="/eastings">ents</a> | + <a id="folklink" href="/folk">expoers</a> | + <a id="caversLink" href="/people">survey lengths</a> | + <a href="/stats">statistics</a> | + <a href="/wallets/year/2022">Wallets(2022)</a> | + <a href="/expedition/2022">Expo(2022)</a> | + <a href="/controlpanel">Control panel</a> | + +</div> + +<div id="nav"> + + <!-- Not used any more? --> + +</div> + +<div id="content" > + + + + + <div id="related"> + + + </div> + + +<div class='middle'> + <h2>Bad Slug Error</h2> +</div> + + +<div class='middle3 login'> + <div class='space'></div> + <div class='align-center'> + <h3>There has been a Troggle error. </h3> + <h4> + A Cave, Entrance or QM has been referred to using a label (a 'slug') which does not work. + <p>This is the bad slug: + + <font color="red"> + + 1623-284 - from caveQMs() + + </font> + <p> + This is the previous page which had the bad slug reference on it: <font color="red"> +<script type="text/javascript"> + document.write(document.referrer); +</script> +</font> + </h4> + <p> +<p>It is also possible that the cave description page is being viewed using an alternative URL, +so that the local links in the page to other parts of the cave do not work. +<br> +e.g. /cave/1623-161 is not the correct way of looking at Kaninchenhohle, +<br> +you should be using <br> +/1623/161/top.htm instead. +<p>If that is the case, tell a nerd that we haven't fixed the fault that we thought we had fixed. + + <div class='space'><p> </div> + + <h3>What you should do now</h3> + <p>Please report the error by emailing the nerds at + <a href="mailto:expo-tech@lists.wookware.org">expo-tech@lists.wookware.org</a> with this information: + <ol> + <li>The bad slug text written in <font color="red">red</font> above. + <li>The previous page URL, also written in <font color="red">red</font> above + <li>Go back to this previous page <script type="text/javascript"> + document.write("<a href='",document.referrer,"'>",document.referrer,"</a>"); + </script> + and see if you can tell whether the bad slug was in HTML text which had been written manually, or whether it appeared to be a programming error. + </ol> + + + </div> +</div> +</div> + + +</div> +<div class="footer"> +</div> +</body> +</html> diff --git a/core/TESTS/test_caves.py b/core/TESTS/test_caves.py index e35d360..d6e8bc7 100644 --- a/core/TESTS/test_caves.py +++ b/core/TESTS/test_caves.py @@ -9,7 +9,9 @@ from django.test import Client, TestCase from troggle.core.models.caves import Area, Cave from troggle.core.models.troggle import Person, PersonExpedition - + +# import troggle.settings as settings +# FIXTURE_DIRS = settings.PYTHON_PATH / "core" /"fixtures" class FixtureTests(TestCase): """These just hit the database. @@ -75,7 +77,8 @@ class FixtureTests(TestCase): class FixturePageTests(TestCase): """Currently nothing that runs troggle works - all do 404. Must be something in a template rendering crash? - ordinary pages are OK, and expopages and expofiles are OK, even though they come through troggle. + ordinary pages are OK, and expopages and expofiles are OK, even though they come through troggle. And the + fixtures are certainly loaded into the db as the other tests show. """ # The fixtures have a password hash which is compatible with plain-text password 'secretword' @@ -150,7 +153,7 @@ class FixturePageTests(TestCase): content = response.content.decode() phmatch = re.search(ph, content) - # with open('cave-op.html', 'w') as f: + # with open('cave-url284.html', 'w') as f: # f.write(content) self.assertIsNotNone(phmatch, "Failed to find expected text: '" + ph + "'") @@ -176,20 +179,45 @@ class FixturePageTests(TestCase): phmatch = re.search(ph, content) self.assertIsNotNone(phmatch, "Failed to find expected text: '" + ph + "'") # 200 & Page Not Found - def test_fix_qms(self): - response = self.client.get("/cave/qms/1623-284") + def test_fix_caves284(self): + response = self.client.get("/caves") self.assertEqual(response.status_code, HTTPStatus.OK) content = response.content.decode() - ph = r"Question marks for 284 - Seetrichter" - phmatch = re.search(ph, content) - self.assertIsNotNone(phmatch, "Failed to find expected text: '" + ph + "'") - - def test_fix_openqms(self): - response = self.client.get("/cave/openqms/1623-284") - self.assertEqual(response.status_code, HTTPStatus.OK) - content = response.content.decode() - ph = r"Open Leads for 284 - Seetrichter" + ph = r"284 Seetrichter" phmatch = re.search(ph, content) + # with open('_cave_fix_caves.html', 'w') as f: + # f.write(content) self.assertIsNotNone(phmatch, "Failed to find expected text: '" + ph + "'") + def test_fix_cavehtml284(self): + response = self.client.get("/1623/284/284.html") + self.assertEqual(response.status_code, HTTPStatus.OK) + content = response.content.decode() + ph = r"A 25m long (22m deep) resurgence in Altausee" + phmatch = re.search(ph, content) + with open('_cave_fix_cavehtml284.html', 'w') as f: + f.write(content) + self.assertIsNotNone(phmatch, "Failed to find expected text: '" + ph + "'") + + # def test_fix_qms(self): + # response = self.client.get("/cave/qms/1623-284") + # self.assertEqual(response.status_code, HTTPStatus.OK) + # content = response.content.decode() + # ph = r"Question marks for 284 - Seetrichter" + # phmatch = re.search(ph, content) + # with open('_cave-fixqms.html', 'w') as f: + # f.write(content) + # self.assertIsNotNone(phmatch, "Failed to find expected text: '" + ph + "'") + + # def test_fix_openqms(self): + # response = self.client.get("/cave/openqms/1623-284") + # self.assertEqual(response.status_code, HTTPStatus.OK) + # content = response.content.decode() + # ph = r"Open Leads for 284 - Seetrichter" + # phmatch = re.search(ph, content) + # with open('_cave-fixopenqms.html', 'w') as f: + # f.write(content) + # self.assertIsNotNone(phmatch, "Failed to find expected text: '" + ph + "'") + + diff --git a/core/TESTS/test_logins.py b/core/TESTS/test_logins.py index 7bfd065..ef9478b 100644 --- a/core/TESTS/test_logins.py +++ b/core/TESTS/test_logins.py @@ -151,8 +151,8 @@ class PostTests(TestCase): ) content = response.content.decode() self.assertEqual(response.status_code, HTTPStatus.OK) - with open("_test_response.html", "w") as f: - f.write(content) + # with open("_test_response.html", "w") as f: + # f.write(content) for ph in [ r"test_upload_", rf"← {testyear}#00 →", diff --git a/core/TESTS/test_parsers.py b/core/TESTS/test_parsers.py index 2d951bc..70f19cd 100644 --- a/core/TESTS/test_parsers.py +++ b/core/TESTS/test_parsers.py @@ -118,8 +118,8 @@ class ImportTest(TestCase): response = self.client.get("/survexfile/caves/") self.assertEqual(response.status_code, HTTPStatus.OK) content = response.content.decode() - with open('_test_response.html', 'w') as f: - f.write(content) + # with open('_test_response.html', 'w') as f: + # f.write(content) ph = f"Caves with subdirectories" phmatch = re.search(ph, content) self.assertIsNotNone(phmatch, "Failed to find expected text: '" + ph + "'") @@ -130,8 +130,8 @@ class ImportTest(TestCase): response = self.client.get("/people") self.assertEqual(response.status_code, HTTPStatus.OK) content = response.content.decode() - with open('_test_response.html', 'w') as f: - f.write(content) + # with open('_test_response.html', 'w') as f: + # f.write(content) ph = f"<td><a href=\"/personexpedition/FredSmartarse/{TEST_YEAR}\">{TEST_YEAR}</a></td>" phmatch = re.search(ph, content) self.assertIsNotNone(phmatch, "Failed to find expected text: '" + ph + "'")