-
Notifications
You must be signed in to change notification settings - Fork 0
/
TestingUtilities.html
191 lines (148 loc) · 8.38 KB
/
TestingUtilities.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
<!DOCTYPE html>
<html lang="en" data-content_root="./">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Testing Utilities</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=fa44fd50" />
<link rel="stylesheet" type="text/css" href="_static/bootstrap-sphinx.css?v=fadd4351" />
<link rel="stylesheet" type="text/css" href="_static/custom.css?v=77160d70" />
<script src="_static/documentation_options.js?v=a8da1a53"></script>
<script src="_static/doctools.js?v=9bcbadda"></script>
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
<link rel="index" title="Index" href="genindex.html" />
<link rel="search" title="Search" href="search.html" />
<link rel="next" title="Running Sanitizers" href="RunningSanitizers.html" />
<link rel="prev" title="Data Files for Testing" href="DataFilesForTesting.html" />
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-59110517-1', 'auto');
ga('send', 'pageview');
</script>
</head><body>
<div id="navbar" class="navbar navbar-default ">
<div class="container">
<div class="navbar-header">
<!-- .btn-navbar is used as the toggle for collapsed navbar content -->
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".nav-collapse">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="http://www.mantidproject.org">
</a>
<span class="navbar-text navbar-version pull-left"><b>main</b></span>
</div>
<div class="collapse navbar-collapse nav-collapse">
<ul class="nav navbar-nav">
<li class="divider-vertical"></li>
<li><a href="index.html">Home</a></li>
<li><a href="https://download.mantidproject.org">Download</a></li>
<li><a href="https://docs.mantidproject.org">User Documentation</a></li>
<li><a href="http://www.mantidproject.org/contact">Contact Us</a></li>
</ul>
<form class="navbar-form navbar-right" action="search.html" method="get">
<div class="form-group">
<input type="text" name="q" class="form-control" placeholder="Search" />
</div>
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
</div>
<p>
<div class="related" role="navigation" aria-label="related navigation">
<h3>Navigation</h3>
<ul>
<li class="nav-item nav-item-0"><a href="index.html">Documentation</a> »</li>
<li class="nav-item nav-item-this"><a href="">Testing Utilities</a></li>
</ul>
</div> </p>
</div>
<div class="container">
<div class="row">
<div class="body col-md-12 content" role="main">
<section id="testing-utilities">
<span id="testingutilities"></span><h1>Testing Utilities<a class="headerlink" href="#testing-utilities" title="Link to this heading">¶</a></h1>
<nav class="contents local" id="contents">
<ul class="simple">
<li><p><a class="reference internal" href="#summary" id="id1">Summary</a></p></li>
<li><p><a class="reference internal" href="#helper-functions" id="id2">Helper Functions</a></p>
<ul>
<li><p><a class="reference internal" href="#c" id="id3">C++</a></p></li>
<li><p><a class="reference internal" href="#python" id="id4">Python</a></p></li>
</ul>
</li>
</ul>
</nav>
<section id="summary">
<h2><a class="toc-backref" href="#id1" role="doc-backlink">Summary</a><a class="headerlink" href="#summary" title="Link to this heading">¶</a></h2>
<p>This page will provide developers with details of testing utilities, such as helper files, which are
useful in creating unit tests.</p>
</section>
<section id="helper-functions">
<h2><a class="toc-backref" href="#id2" role="doc-backlink">Helper Functions</a><a class="headerlink" href="#helper-functions" title="Link to this heading">¶</a></h2>
<section id="c">
<h3><a class="toc-backref" href="#id3" role="doc-backlink">C++</a><a class="headerlink" href="#c" title="Link to this heading">¶</a></h3>
<p>The following helper files have been found in the
<a class="reference external" href="http://github.com/mantidproject/mantid/tree/main/Framework/TestHelpers">Mantid/Framework/TestHelpers</a>
package:</p>
<ul class="simple">
<li><p><a class="reference external" href="http://doxygen.mantidproject.org/d1/d4f/namespaceBinaryOperationMDTestHelper.html">BinaryOperationMDTestHelper</a></p></li>
<li><p>ComponentCreationHelper
<a class="reference external" href="http://doxygen.mantidproject.org/d8/d8d/namespaceComponentCreationHelper.html">ComponentCreationHelper</a>
This creates instrument components that can then be used in a unit test.</p></li>
<li><p>ICatTestHelper</p></li>
<li><p><a class="reference external" href="http://doxygen.mantidproject.org/d5/d75/namespaceMantid_1_1MDEvents_1_1MDEventsTestHelper.html">MDEventsTestHelper</a></p></li>
<li><p><a class="reference external" href="http://doxygen.mantidproject.org/d9/dbf/classSANSInstrumentCreationHelper.html">SANSInstrumentCreationHelper</a></p></li>
<li><p><a class="reference external" href="http://doxygen.mantidproject.org/d7/d7f/classScopedFileHelper_1_1ScopedFile.html#details">ScopedFileHelper</a>
This creates a file that is automatically deleted when no longer needed.</p></li>
<li><p><a class="reference external" href="http://doxygen.mantidproject.org/d1/db6/namespaceWorkspaceCreationHelper.html">WorkspaceCreationHelper</a>
This creates simple workspaces that can be used in a unit test. One of these workspaces has a full instrument.</p></li>
</ul>
</section>
<section id="python">
<h3><a class="toc-backref" href="#id4" role="doc-backlink">Python</a><a class="headerlink" href="#python" title="Link to this heading">¶</a></h3>
<p>There are some <code class="docutils literal notranslate"><span class="pre">testhelpers</span></code> which are only available in Python, they can
be found in the <code class="docutils literal notranslate"><span class="pre">testhelpers</span></code>-package.</p>
<ul class="simple">
<li><p><code class="docutils literal notranslate"><span class="pre">make_decorator</span></code> - A function that returns a decorator for an
algorithm without executing it.</p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">TemporaryFileHelper</span></code> - A class that creates named temporary files
and deletes them automatically when the object is deleted. Basically
a thin wrapper around <a class="reference external" href="https://docs.python.org/2/library/tempfile.html">NamedTemporaryFile</a>
from the tempfile package.</p></li>
<li><dl class="simple">
<dt><code class="docutils literal notranslate"><span class="pre">mtd.unique_name</span></code> and <code class="docutils literal notranslate"><span class="pre">mtd.unique_hidden_name</span></code> - functions that allow you to create a workspace name that will be</dt><dd><p>unique to avoid colisions with other workspaces. This is useful for testing and temporary workspaces.</p>
</dd>
</dl>
</li>
</ul>
</section>
</section>
</section>
</div>
</div>
</div>
<footer class="footer">
<div class="container">
<ul class="nav navbar-nav" style=" float: right;">
<li>
<a href="DataFilesForTesting.html" title="Previous Chapter: Data Files for Testing"><span class="glyphicon glyphicon-chevron-left visible-sm"></span><span class="hidden-sm hidden-tablet">« Data Files fo...</span>
</a>
</li>
<li>
<a href="RunningSanitizers.html" title="Next Chapter: Running Sanitizers"><span class="glyphicon glyphicon-chevron-right visible-sm"></span><span class="hidden-sm hidden-tablet">Running Sanitizers »</span>
</a>
</li>
<li><a href="#">Back to top</a></li>
</ul>
<p>
</p>
</div>
</footer>
</body>
</html>