Skip to content

Commit 6d9d468

Browse files
author
MFC Action
committed
Docs @ ae76acf
1 parent 18b55cc commit 6d9d468

File tree

1 file changed

+6
-5
lines changed

1 file changed

+6
-5
lines changed

documentation/md_testing.html

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -135,9 +135,10 @@
135135
</div><!--header-->
136136
<div class="contents">
137137
<div class="textblock"><p><a class="anchor" id="autotoc_md93"></a> To run MFC's test suite, run </p><div class="fragment"><div class="line">./mfc.sh test -j &lt;thread count&gt;</div>
138-
</div><!-- fragment --><p>It will generate and run test cases, comparing their output to that of previous runs from versions of MFC considered to be accurate. <em>golden files</em>, stored in the <code>tests/</code> directory contain this data, by aggregating <code>.dat</code> files generated when running MFC. A test is considered passing when our error tolerances are met, in order to maintain a high level of stability and accuracy. Run <code>./mfc.sh test -h</code> for a full list of accepted arguments.</p>
138+
</div><!-- fragment --><p>It will generate and run test cases, comparing their output to previous runs from versions of MFC considered accurate. <em>golden files</em>, stored in the <code>tests/</code> directory contain this data, aggregating <code>.dat</code> files generated when running MFC. A test is considered passing when our error tolerances are met in order to maintain a high level of stability and accuracy. Run <code>./mfc.sh test -h</code> for a full list of accepted arguments.</p>
139139
<p>Most notably, you can consult the full list of tests by running </p><div class="fragment"><div class="line">./mfc.sh test -l</div>
140-
</div><!-- fragment --><p>To restrict to a given range, use the <code>--from</code> (<code>-f</code>) and <code>--to</code> (<code>-t</code>) options. To run a (non-contiguous) subset of tests, use the <code>--only</code> (<code>-o</code>) option instead.</p>
140+
</div><!-- fragment --><p>To restrict to a given range, use the <code>--from</code> (<code>-f</code>) and <code>--to</code> (<code>-t</code>) options. To run a (non-contiguous) subset of tests, use the <code>--only</code> (<code>-o</code>) option instead. To specify a computer, pass the <code>-c</code> flag to <code>./mfc.sh run</code> like so: </p><div class="fragment"><div class="line">./mfc.sh test -j &lt;thread count&gt; -- -c &lt;computer name&gt;</div>
141+
</div><!-- fragment --><p> where <code>&lt;computer name&gt;</code> could be <code>phoenix</code> or any of the others in the <a href="https://github.com/MFlowCode/MFC/tree/master/toolchain/templates">templates</a>). You can create new templates with the appropriate run commands or omit this option. The use of <code>--</code> in the above command passes options to the <code>./mfc.sh run</code> command underlying the <code>./mfc.sh test</code>.</p>
141142
<h2><a class="anchor" id="autotoc_md94"></a>
142143
Creating Tests</h2>
143144
<p>To (re)generate <em>golden files</em>, append the <code>--generate</code> option: </p><div class="fragment"><div class="line">./mfc.sh test --generate -j 8</div>
@@ -174,7 +175,7 @@ <h2><a class="anchor" id="autotoc_md94"></a>
174175
<div class="line"> stack.pop()</div>
175176
<div class="line"> </div>
176177
<div class="line"> stack.pop()</div>
177-
</div><!-- fragment --><p>When pushing to the stack, or creating a new case with the <code>define_case_d</code> function, you must specify:</p><ul>
178+
</div><!-- fragment --><p>When pushing to the stack or creating a new case with the <code>define_case_d</code> function, you must specify:</p><ul>
178179
<li><code>stack</code>: The current stack.</li>
179180
<li><code>trace</code>: A human-readable string describing what you are currently varying.</li>
180181
<li><code>variations</code>: A Python dictionary with case parameter variations.</li>
@@ -184,8 +185,8 @@ <h2><a class="anchor" id="autotoc_md94"></a>
184185
<p>Finally, the case is appended to the <code>cases</code> list, which will be returned by the <code>list_cases</code> function.</p>
185186
<h2><a class="anchor" id="autotoc_md95"></a>
186187
Testing Post Process</h2>
187-
<p>To test updated post process code, append the <code>-a</code> or <code>--test-all</code> option: </p><div class="fragment"><div class="line">./mfc.sh test -a -j 8</div>
188-
</div><!-- fragment --><p>This argument will re-run the test stack with <code>parallel_io=True</code>, which generates silo_hdf5 files. It will also turn most write parameters (<code>*_wrt</code>) on. Then, it searches through the silo files using <code>h5dump</code> to ensure that there are no NaNs or Infinitys. Although adding this option does not guarantee that accurate silo files are generated, it does ensure that post process does not fail or produce malformed data. </p>
188+
<p>To test the post-processing code, append the <code>-a</code> or <code>--test-all</code> option: </p><div class="fragment"><div class="line">./mfc.sh test -a -j 8</div>
189+
</div><!-- fragment --><p>This argument will re-run the test stack with &lsquo;parallel_io='T&rsquo;<code>, which generates silo_hdf5 files. It will also turn most write parameters (</code>*_wrt<code>) on. Then, it searches through the silo files using</code>h5dump<code>to ensure that there are no</code>NaN<code>s or</code>Infinity<code>s. Although adding this option does not guarantee that accurate</code>.silo` files are generated, it does ensure that the post-process code does not fail or produce malformed data. </p>
189190
</div></div><!-- contents -->
190191
</div><!-- PageDoc -->
191192
</div><!-- doc-content -->

0 commit comments

Comments
 (0)