Refactoring of ProjectSettings to extend ProjectConfig
[snaps.git] / docs / how-to-use / UnitTests.rst
1 SNAPS Unit Testing
2 ==================
3
4 | Tests designated as Unit tests extend the unittest.TestCase class and
5   can be exercised without any external resources
6 | other than the filesystem. Most of these tests simply ensure that the
7   configuration settings classes check their
8 | constructor arguments properly.
9
10 The Test Classes
11 ================
12
13 FileUtilsTests
14 --------------
15
16 -  testFileIsDirectory - ensures that the expected path is a directory
17 -  testFileNotExist - ensures that a file that does not exist returns
18    False
19 -  testFileExists - ensures that a file that does exist returns True
20 -  testDownloadBadUrl - ensures that an Exception is thrown when
21    attempting to download a file with a bad URL
22 -  testCirrosImageDownload - ensures that the Cirros image can be
23    downloaded
24 -  testReadOSEnvFile - ensures that an OpenStack RC file can be properly
25    parsed
26
27 ProxySettingsUnitTests
28 ----------------------
29
30 Ensures that all required members are included when constructing a
31 ProxySettings object
32
33 OSCredsUnitTests
34 ----------------
35
36 Ensures that all required members are included when constructing a
37 OSCreds object
38
39 SecurityGroupRuleSettingsUnitTests
40 ----------------------------------
41
42 Ensures that all required members are included when constructing a
43 SecurityGroupRuleSettings object
44
45 SecurityGroupRuleDomainObjectTests
46 ----------------------------------
47
48 Ensures that all required members are included when constructing a
49 SecurityGroupRule domain object
50
51 SecurityGroupSettingsUnitTests
52 ------------------------------
53
54 Ensures that all required members are included when constructing a
55 SecuirtyGroupSettings object
56
57 SecurityGroupDomainObjectTests
58 ------------------------------
59
60 Ensures that all required members are included when constructing a
61 SecurityGroup domain object
62
63 ImageConfigUnitTests
64 --------------------
65
66 Ensures that all required members are included when constructing a
67 ImageConfig object
68
69 ImageSettingsUnitTests
70 ----------------------
71
72 Ensures that all required members are included when constructing a
73 ImageSettings object (deprecated see ImageConfigUnitTests)
74
75 ImageDomainObjectTests
76 ----------------------
77
78 Ensures that all required members are included when constructing a
79 Image domain object
80
81 FlavorConfigUnitTests
82 ---------------------
83
84 Ensures that all required members are included when constructing a
85 FlavorConfig object
86
87 FlavorSettingsUnitTests
88 -----------------------
89
90 Ensures that all required members are included when constructing a
91 deprecated FlavorSettings object
92
93 FlavorDomainObjectTests
94 -----------------------
95
96 Ensures that all required members are included when constructing a
97 Flavor domain object
98
99 KeypairConfigUnitTests
100 ----------------------
101
102 Ensures that all required members are included when constructing a
103 KeypairConfig object
104
105 KeypairSettingsUnitTests
106 ------------------------
107
108 Ensures that all required members are included when constructing a
109 deprecated KeypairSettings object
110
111 KeypairDomainObjectTests
112 ------------------------
113
114 Ensures that all required members are included when constructing a
115 Keypair domain object
116
117 UserSettingsUnitTests
118 ---------------------
119
120 Ensures that all required members are included when constructing a
121 UserSettings object
122
123 UserDomainObjectTests
124 ---------------------
125
126 Ensures that all required members are included when constructing a
127 User domain object
128
129 ProjectConfigUnitTests
130 ----------------------
131
132 Ensures that all required members are included when constructing a
133 ProjectConfig object
134
135 ProjectSettingsUnitTests
136 ------------------------
137
138 Ensures that all required members are included when constructing a
139 deprecated ProjectSettings object
140
141 ProjectDomainObjectTests
142 ------------------------
143
144 Ensures that all required members are included when constructing a
145 Project domain object
146
147 DomainDomainObjectTests
148 -----------------------
149
150 Ensures that all required members are included when constructing a
151 Domain domain object
152
153 ComputeQuotasDomainObjectTests
154 ------------------------------
155
156 Ensures that all required members are included when constructing a
157 ComputeQuotas domain object
158
159 NetworkQuotasDomainObjectTests
160 ------------------------------
161
162 Ensures that all required members are included when constructing a
163 NetworkQuotas domain object
164
165 RoleDomainObjectTests
166 ---------------------
167
168 Ensures that all required members are included when constructing a
169 Role domain object
170
171 NetworkSettingsUnitTests
172 ------------------------
173
174 Ensures that all required members are included when constructing a
175 NetworkSettings object
176
177 NetworkObjectTests
178 ------------------
179
180 Ensures that all required members are included when constructing a
181 Network domain object
182
183 SubnetSettingsUnitTests
184 -----------------------
185
186 Ensures that all required members are included when constructing a
187 SubnetSettings object
188
189 SubnetObjectTests
190 -----------------
191
192 Ensures that all required members are included when constructing a
193 Subnet domain object
194
195 PortSettingsUnitTests
196 ---------------------
197
198 Ensures that all required members are included when constructing a
199 PortSettings object
200
201 PortDomainObjectTests
202 ---------------------
203
204 Ensures that all required members are included when constructing a
205 Port domain object
206
207 RouterSettingsUnitTests
208 -----------------------
209
210 Ensures that all required members are included when constructing a
211 RouterSettings object
212
213 RouterDomainObjectTests
214 -----------------------
215
216 Ensures that all required members are included when constructing a
217 Router domain object
218
219 InterfaceRouterDomainObjectTests
220 --------------------------------
221
222 Ensures that all required members are included when constructing a
223 InterfaceRouter domain object
224
225 StackSettingsUnitTests
226 ----------------------
227
228 Ensures that all required members are included when constructing a
229 StackSettings object
230
231 StackDomainObjectTests
232 ----------------------
233
234 Ensures that all required members are included when constructing a
235 Stack domain object (for Heat)
236
237 ResourceDomainObjectTests
238 -------------------------
239
240 Ensures that all required members are included when constructing a
241 Resource domain object (for Heat)
242
243 OutputDomainObjectTests
244 -----------------------
245
246 Ensures that all required members are included when constructing a
247 Output domain object (for Heat)
248
249 VolumeSettingsUnitTests
250 -----------------------
251
252 Ensures that all required members are included when constructing a
253 VolumeSettings object
254
255 VolumeDomainObjectTests
256 -----------------------
257
258 Ensures that all required members are included when constructing a
259 Volume domain object (for Cinder)
260
261 VolumeTypeSettingsUnitTests
262 ---------------------------
263
264 Ensures that all required members are included when constructing a
265 VolumeTypeSettings object
266
267 VolumeTypeDomainObjectTests
268 ---------------------------
269
270 Ensures that all required members are included when constructing a
271 VolumeType domain object (for Cinder)
272
273 VolumeTypeEncryptionObjectTests
274 -------------------------------
275
276 Ensures that all required members are included when constructing a
277 VolumeTypeEncryption domain object (for Cinder)
278
279 QoSSettingsUnitTests
280 --------------------
281
282 Ensures that all required members are included when constructing a
283 QoSSettings object
284
285 QoSSpecDomainObjectTests
286 ------------------------
287
288 Ensures that all required members are included when constructing a
289 QoSSpec domain object (for Cinder)
290
291 VolumeDomainObjectTests
292 -----------------------
293
294 Ensures that all required members are included when constructing a
295 Volume domain object (for Cinder)
296
297 FloatingIpSettingsUnitTests
298 ---------------------------
299
300 Ensures that all required members are included when constructing a
301 FloatingIpSettings object
302
303 FloatingIpDomainObjectTests
304 ---------------------------
305
306 Ensures that all required members are included when constructing a
307 FloatingIp domain object
308
309 VmInstanceSettingsUnitTests
310 ---------------------------
311
312 Ensures that all required members are included when constructing a
313 VmInstanceSettings object
314
315 VmInstDomainObjectTests
316 -----------------------
317
318 Ensures that all required members are included when constructing a
319 VmInst domain object
320
321 SettingsUtilsUnitTests
322 ----------------------
323
324 Ensures that the settings_utils.py#create_volume_settings() function properly
325 maps a snaps.domain.Volume object correctly to a
326 snaps.openstack.create_volume.VolumeSettings object as well as a
327 snaps.domain.VolumeType object to a
328 snaps.openstack.create_volume.VolumeSettings object
329
330
331 Ensures that the settings_utils.py#create_flavor_config() function properly
332 maps a snaps.domain.Flavor object correctly to a
333 snaps.config.flavor.FlavorConfig object