mirror of
https://expo.survex.com/repositories/expoweb/.git/
synced 2026-02-21 11:45:18 +00:00
How can I contribute ?
This commit is contained in:
41
handbook/troggle/unittests.html
Normal file
41
handbook/troggle/unittests.html
Normal file
@@ -0,0 +1,41 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>Handbook Troggle - Unit Tests</title>
|
||||
<link rel="stylesheet" type="text/css" href="../../css/main2.css" />
|
||||
</head>
|
||||
<body><style>body { background: #fff url(/images/style/bg-system.png) repeat-x 0 0 }</style>
|
||||
<h2 id="tophead">CUCC Expedition Handbook</h2>
|
||||
<h1>Handbook Troggle - Unit Tests</h1>
|
||||
|
||||
<h2>Troggle Unit Tests</h2>
|
||||
<p>We have a small suite of tests which are run manually by troggle programmers like this:
|
||||
<pre><code> troggle$ python manage.py tests -v 1</code></pre>
|
||||
The test code is all in <a href="http://expo.survex.com/repositories/troggle/.git/tree/core/TESTS/tests.py"><var>troggle/core/TESTS/tests.py</var></a>.
|
||||
<p>The test 'test_page_expofile' checks that a particular PDF is being served correctly by the web server
|
||||
and that the resulting page is the correct length of 2,299,270 bytes:
|
||||
|
||||
<pre><code>
|
||||
def test_page_expofile(self):
|
||||
# Flat file tests.
|
||||
response = self.client.get('/expofiles/documents/surveying/tunnel-loefflerCP35-only.pdf')
|
||||
self.assertEqual(response.status_code, 200)
|
||||
self.assertEqual(len(response.content), 2299270)
|
||||
</code></pre>
|
||||
|
||||
<p>This test suite is part of <a href="https://docs.djangoproject.com/en/1.11/topics/testing/">the
|
||||
django test system</a> which is a very thin layer on top of the standard python library module
|
||||
<a href="https://docs.python.org/3/library/unittest.html#module-unittest">unittest</a>. One of the things this layer does
|
||||
is to ensure that all the settings are imported correctly, and it sets up a very fast in-memory sqlite database purely for tests.
|
||||
No tests are run with the real expo database.
|
||||
<p>The tests can be run at a more verbose level by setting the <var>-v 3</var> flag.
|
||||
|
||||
<p>As yet we have no test database set up, so the in-memory database is entirely empty.
|
||||
|
||||
<hr />
|
||||
Go on to: <a href="trogarch.html">Troggle architecture</a><br />
|
||||
Return to: <a href="trogintro.html">Troggle intro</a><br />
|
||||
<hr />
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user