<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; font-size: 14px; font-family: Calibri, sans-serif; ">
<div>
<div style="color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px; ">
Hi All,</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px; ">
<br>
</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px; ">
My coworker and I would like to start filling out some gaps <font>in api coverage</font><font color="#ff0000" style="color: rgb(0, 0, 0); "> </font>that we see in <font color="#ff0000" style="color: rgb(0, 0, 0); ">the functional integration</font> tests. We
have one patch up for review (<font color="#ff0000" style="color: rgb(0, 0, 0); "><a href="https://review.openstack.org/#/c/219025/">https://review.openstack.org/#/c/219025/</a></font>). We got a comment saying that any new stack creation will prolong the
testing cycle. We agree with that and it got us thinking about a few things - </div>
<ol>
<li style="font-family: Calibri, sans-serif; font-size: 14px; ">We are planning on adding tests for the following api's<font>:</font><font color="#ff0000" style="color: rgb(0, 0, 0); "> </font>event api's, template api's, software config api's, cancel stack
updates, check stack resources and show resource data. These are the api's that we saw aren't covered in our current integration tests. Please let us know if you feel we need tests for these upstream, if we're missing something or if it's already covered somewhere.</li><li style="color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px; ">
To conserve the creation of stacks would it make sense to add one test and then under that we could call sub methods that will run tests against that stack. So something like this:
<p style="margin: 0px; font-family: Calibri; ">def _test_template_apis()</p>
<p style="margin: 0px; font-family: Calibri; ">def _test_softwareconfig_apis()</p>
<p style="margin: 0px; font-family: Calibri; ">def _test<i>_</i>event_apis()</p>
<p style="margin: 0px; font-family: Calibri; ">def test_event_template_softwareconfig_apis(self):</p>
<p style="margin: 0px; font-family: Calibri; "><span class="Apple-tab-span" style="white-space: pre; "></span><span class="Apple-tab-span" style="white-space:pre"></span>stack_id = self.stack_create(…)</p>
<p style="margin: 0px; font-family: Calibri; "><span class="Apple-tab-span" style="white-space: pre; "></span><span class="Apple-tab-span" style="white-space:pre"></span>self._test_template_apis(stack_id)</p>
<p style="margin: 0px; font-family: Calibri; "><span class="Apple-tab-span" style="white-space: pre; "></span><span class="Apple-tab-span" style="white-space:pre"></span>self._test_event_apis(stack_id)</p>
<p style="margin: 0px; font-family: Calibri; "><span class="Apple-tab-span" style="white-space: pre; "></span><span class="Apple-tab-span" style="white-space:pre"></span>self._test_softwareconfig_apis(stack_id)</p>
</li><li style="color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px; ">
<font>The</font><font color="#ff0000" style="color: rgb(0, 0, 0); "> </font>current tests are divided into two folders – scenario and functional. To help with organization - under the functional folder, would it make sense to add an 'api' folder, 'resource'
folder and 'misc folder? Here is what we're thinking about where each test can be put:
<ol style="color: rgb(0, 0, 0); ">
<li>
<p style="margin: 0px; font-family: Calibri; ">API folder - test_create_update.py, test_preview.py</p>
</li><li><span style="font-family: Calibri; ">
<p style="margin: 0px; ">Resource folder – test_autoscaling.py, test_aws_stack.py, test_conditional_exposure.py, test_create_update_neutron_port.py, test_encryption_vol_type.py, test_heat_autoscaling.py, test_instance_group.py, test_resource_group.py, test_software_config.py,
test_swiftsignal_update.py</p>
</span></li><li><span style="font-family: Calibri; ">
<p style="margin: 0px; ">Misc folder - test_default_parameters.py, test_encrypted_parameter.py, test_hooks.py, test_notifications.py, test_reload_on_sighup.py, test_remote_stack.py, test_stack_tags.py, test_template_resource.py, test_validation.py</p>
</span></li></ol>
</li><li style="color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px; ">
Should we add to our README? For example, I see that we use TestResource as a resource in some of our tests but we don't have an explanation of how to set that up. I'd also like add explanations about the pre-testhook and post-testhook file and how that works
and what each line does/what test it's attached to.</li><li style="color: rgb(0, 0, 0); "><font face="Calibri,sans-serif">For the tests that we're working on, should we be be adding </font><font style="font-family: Calibri, sans-serif; font-size: 14px; ">a</font><font color="#ff0000" style="font-family: Calibri, sans-serif; font-size: 14px; color: rgb(0, 0, 0); "> </font><font face="Calibri,sans-serif">blueprint
or task somewhere </font><font color="#ff0000" style="font-family: Calibri, sans-serif; font-size: 14px; color: rgb(0, 0, 0); ">to </font><font><font face="Calibri,sans-serif">let </font></font><font face="Calibri,sans-serif">everybody </font><font color="#ff0000" style="font-family: Calibri, sans-serif; font-size: 14px; color: rgb(0, 0, 0); ">know </font><font face="Calibri,sans-serif">that
we're working on it so there is no overlap?</font></li><li style="color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px; ">
<font>From our observations, we think it would be beneficial to add more comments to the existing tests. For example, w</font>e could have a minimum of a short blurb for each method. <font color="#ff0000" style="color: rgb(0, 0, 0); ">Comments?</font></li><li style="color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px; ">
Should we add a <font>'</font>high level coverage<font color="#ff0000" style="color: rgb(0, 0, 0); ">'</font> <font color="#ff0000" style="color: rgb(0, 0, 0); ">summary</font> in our README? It could help all of us know at a high level where we are at in
terms of which resources we have tests for and which api's, etc.</li></ol>
<div style="color: rgb(0, 0, 0); ">Let us know what you all think!</div>
<div style="color: rgb(0, 0, 0); "><br>
</div>
<div style="color: rgb(0, 0, 0); ">Thank you!</div>
</div>
<div style="color: rgb(0, 0, 0); ">Sabeen</div>
</body>
</html>