Lines Matching +full:working +full:- +full:directory
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
8 <!--tidy options: -i -wrap 78 -->
9 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
14 p.revision { text-align: right; font-style: italic }
15 pre.code { margin-left: 2em }
16 pre.example { margin-left: 2em; border: solid black thin }
17 pre.output { margin-left: 2em }
19 h1 { text-align: right }
34 <dl class="page-index">
35 <dt><a href="#sec-intro">Introduction for users</a></dt>
38 <dl class="page-index">
39 <dt><a href="#sec-command-line-options">Command line options</a></dt>
43 <dt><a href="#sec-developers">Introduction for developers</a></dt>
46 <dl class="page-index">
47 <dt><a href="#sec-intro-changing">Changing the working
48 directory</a></dt>
50 <dt><a href="#sec-intro-examining">Examining the working directory and
53 <dt><a href="#sec-intro-results">Test result</a></dt>
57 <dt><a href="#sec-reference">Reference documentation</a></dt>
60 <dl class="page-index">
61 <dt><a href="#method-__init__">Method __init__</a></dt>
63 <dt><a href="#method-set_tree">Method <tt>set_tree</tt></a></dt>
65 <dt><a href="#method-write">Method <tt>write</tt></a></dt>
67 <dt><a href="#method-copy">Method <tt>copy</tt></a></dt>
69 <dt><a href="#method-touch">Method <tt>touch</tt></a></dt>
71 <dt><a href="#method-run_build_system">Method
74 <dt><a href="#method-read">Method <tt>read</tt></a></dt>
76 <dt><a href="#method-read_and_strip">Method
79 <dt><a href="#methods-expectations">Methods for declaring
82 <dt><a href="#methods-ignoring">Methods for ignoring
85 <dt><a href="#methods-result">Methods for explicitly specifying
88 <dt><a href="#class-list">Helper class <tt>List</tt></a></dt>
94 <h2><a name="sec-intro">Introduction for users</a></h2>
97 scripts for automatically testing user-obversable behaviour. It uses
115 <li>Configure at least one toolset. You can edit <tt>site-config.jam</tt>
116 or <tt>user-config.jam</tt> to add new toolsets. Or you can create file
117 <tt>test-config.jam</tt> in <tt>$boost_build_root/test</tt> directory. In
118 this case, <tt>site-config.jam</tt> and <tt>user-config.jam</tt> will be
141 <h3><a name="sec-command-line-options">Command line options</a></h3>
148 python generators_test.py msvc-7.1
154 <li><tt>--default-bjam</tt> -- By default the test system will use the
159 <li><tt>--preserve</tt> -- In case of a failed test its working
160 directory will be copied to the "failed_test" directory under the
161 current directory.</li>
163 <li><tt>--verbose</tt> -- Makes the test system and the run build system
168 <h2><a name="sec-developers">Introduction for developers</a></h2>
196 <li>Set up the initial working directory state</li>
204 <li>changes made to the working directory,</li>
206 <li>new content of the working directory.</li>
220 # Create a temporary working directory
252 <p>The <tt>test</tt> directory contains a file "template.py" which can be
258 <h3><a name="sec-intro-changing">Changing the working directory</a></h3>
260 <p>The class <tt>Tester</tt> creates a temporary directory in its
261 constructor and changes to that directory. It can be modified by calling
265 <li><tt>set_tree</tt> -- sets the content of the working directory to be
266 equal to the content of the specified directory. This method is
267 preferable when directory tree for testing is large.</li>
269 <li><tt>write</tt> -- sets the content of file in a working directory.
270 This is optimal if you want to create a directory tree with 3-4 small
273 <li><tt>touch</tt> -- changes the modification times of a file</li>
276 <h3><a name="sec-intro-examining">Examining the working directory and
280 be used to read any file in the working directory and check its content.
282 system is run (using <a href="#method-run_build_system"><tt>run_build_system
283 </tt></a>), the working dir state before and after running is recorded. In
284 addition, difference between the two states -- i.e. lists of files that were
285 added, removed, modified or touched -- are stored in two member variables -
301 <h3><a name="sec-intro-results">Test result</a></h3>
306 filesystem functions can be used to work with the directory tree. Methods
310 <p>Typically, after test termination, the working directory is erased. See
311 the <a href="#sec-command-line-options">"--preserve" command line option</a>
312 for information on how to preserve the working directory content for failed
315 <h2 id="sec-reference">Reference documentation</h2>
326 <h3><a name="method-__init__">Method <tt>__init__(self, arguments="",
335 -- Arguments passed to the run executable.</li>
337 -- Name of the executable to invoke.</li>
339 -- Function to use for compating actual and expected file contents.
342 -- Boost build path to be passed to the run executable.</li>
344 -- Whether to update suffixes on the the file names passed from the
350 -- Whether the test system should pass the specified toolset to the
353 -- Whether the test system should tell the run executable to read in
356 -- Whether the test system should tell the run executable to ignore
359 -- Indicates an absolute directory where the test will be run from.
367 -- Test description string displayed in case of a failed test.</li>
369 -- List of subdirectories to automatically create under the working
370 directory. Each subdirectory needs to be specified separately
373 -- Flag that may be used to enable more verbose test system output.
375 like the <a href="#sec-command-line-options">"--verbose" command
382 <li>Remembers the current working directory in member
386 default) and build system files, assuming that the current directory is
390 by subsequent invocation of <a href="#method-run_build_system"><tt>
393 <li>Changes the current working directory to the temporary working
394 directory created by the base constructor.</li>
396 <li>If you want to run a test in an existing directory, pass it as
401 "#method-run_build_system"><tt>run_build_system</tt></a> parameters.
404 <h3><a name="method-set_tree">Method <tt>set_tree(self,
409 <p>Replaces the content of the current working directory with the content
410 of directory at <tt>tree_location</tt>. If <tt>tree_location</tt> is not
415 <h3><a name="method-write">Method <tt>write(self, name,
421 the temporary working directory. If the file already exists, it is
424 <h3><a name="method-copy">Method <tt>copy(self, src, dst)</tt></a></h3>
430 <h3><a name="method-touch">Method <tt>touch(self, names)</tt></a></h3>
438 <h3><a name="method-run_build_system">Method <tt>run_build_system(self,
446 <li>Stores the state of the working directory in
467 <li>Stores the new state of the working directory in <tt>self.tree</tt>.
476 <h3><a name="method-read">Method <tt>read(self, name)</tt></a></h3>
483 <h3><a name="method-read_and_strip">Method <tt>read_and_strip(self, name)
497 <h3><a name="methods-expectations">Methods for declaring expectations</a>
542 as-is, otherwise, two transformations are applied:</p>
551 <h3><a name="methods-ignoring">Methods for ignoring changes</a></h3>
553 <p>There are five methods which ignore changes made to the working tree.
570 <h3><a name="methods-result">Methods for explicitly specifying results</a>
583 <h3><a name="class-list">Helper class <tt>List</tt></a></h3>