From 76d58265e34851b78e952a7f275340863c90a9f5 Mon Sep 17 00:00:00 2001 From: Wesley Wiedenmeier Date: Thu, 8 Jun 2017 18:23:31 -0400 Subject: Integration Testing: tox env, pyxld 2.2.3, and revamp framework Massive update to clean up and greatly enhance the integration testing framework developed by Wesley Wiedenmeier. - Updated tox environment to run integration test 'citest' to utilize pylxd 2.2.3 - Add support for distro feature flags - add framework for feature flags to release config with feature groups and overrides allowed in any release conf override level - add support for feature flags in platform and config handling - during collect, skip testcases that require features not supported by the image with a warning message - Enable additional distros (i.e. centos, debian) - Add 'bddeb' command to build a deb from the current working tree cleanly in a container, so deps do not have to be installed on host - Adds a command line option '--preserve-data' that ensures that collected data will be left after tests run. This also allows the directory to store collected data in during the run command to be specified using '--data-dir'. - Updated Read the Docs testing page and doc strings for pep 257 compliance --- .../testcases/examples/alter_completion_message.py | 23 +++++++--------------- 1 file changed, 7 insertions(+), 16 deletions(-) (limited to 'tests/cloud_tests/testcases/examples/alter_completion_message.py') diff --git a/tests/cloud_tests/testcases/examples/alter_completion_message.py b/tests/cloud_tests/testcases/examples/alter_completion_message.py index b06ad01b..b7b5d5e0 100644 --- a/tests/cloud_tests/testcases/examples/alter_completion_message.py +++ b/tests/cloud_tests/testcases/examples/alter_completion_message.py @@ -1,34 +1,27 @@ # This file is part of cloud-init. See LICENSE file for license information. -"""cloud-init Integration Test Verify Script""" +"""cloud-init Integration Test Verify Script.""" from tests.cloud_tests.testcases import base class TestFinalMessage(base.CloudTestCase): - """ - test cloud init module `cc_final_message` - """ + """Test cloud init module `cc_final_message`.""" + subs_char = '$' def get_final_message_config(self): - """ - get config for final message - """ + """Get config for final message.""" self.assertIn('final_message', self.cloud_config) return self.cloud_config['final_message'] def get_final_message(self): - """ - get final message from log - """ + """Get final message from log.""" out = self.get_data_file('cloud-init-output.log') lines = len(self.get_final_message_config().splitlines()) return '\n'.join(out.splitlines()[-1 * lines:]) def test_final_message_string(self): - """ - ensure final handles regular strings - """ + """Ensure final handles regular strings.""" for actual, config in zip( self.get_final_message().splitlines(), self.get_final_message_config().splitlines()): @@ -36,9 +29,7 @@ class TestFinalMessage(base.CloudTestCase): self.assertEqual(actual, config) def test_final_message_subs(self): - """ - test variable substitution in final message - """ + """Test variable substitution in final message.""" # TODO: add verification of other substitutions patterns = {'$datasource': self.get_datasource()} for key, expected in patterns.items(): -- cgit v1.2.3