summaryrefslogtreecommitdiff
path: root/tests/unittests
AgeCommit message (Collapse)Author
2014-11-21Pretty up the debug moduleJoshua Harlow
Previously the usage of the yaml_dumps module was causing any python unicode key and value to show up as: 'item': !!python/unicode "some string" This was not very pretty... Fix this by using safe_dumps (which is also a good thing to use and allow_unicode=True). Also create a tiny helper function in the cc_debug module that does not include the yaml start and end footers (since this module has its own footers and headers). Also includes a basic sanity test for this module.
2014-11-21Fix parse_ssh_config failing in ssh_util.pyJoshua Harlow
This fix handles '=' as a delimiter in SSH config and adds appropriate test methods to ensure this functionality continues to work correctly.
2014-11-21Increase the robustness/configurability of the chef module...Joshua Harlow
Add the following adjustments to the chef template and module: - Make it so that the chef directories can be provided (defaults to the existing directories) - Make the params much more configurable, and if a parameter is provided in the chef configuration it will override existing template parameters. - Make the template skip lines if the values are None in the configuration so that template lines can be removed if/when this is desirable. - Allow the firstboot json path to be configurable (defaults to the existing location). - Adds a basic set of tests to ensure that good things are happening. - Make a helper function to tell if already installed. - Have the install routine not run chef after installed but have it instead return a result to tell the caller to run the chef program once completed. - Use the generated_by() utility function to give the ruby template a better header comment. - Set special parameters after selecting the basic chef parameters. - Allow for the running after install and run arguments to be configured. - Allow the omnibus url fetching retries to be configurable. - Move the chef running to its own helper function - Add module docs
2014-11-13Use test_helpers.TestCase for test_sshutil tests.Daniel Watkins
As requested by harlowja.
2014-11-12Handle = used as config delimiter in SSH config.Daniel Watkins
2014-11-12Add tests for current parse_ssh_config behaviour.Daniel Watkins
This also adds mock as a test dependency, as we are looking to migrate away from mocker.
2014-10-30Fix the digital ocean test on py2.6Joshua Harlow
The digital ocean datasource test is using assertIs which is only created/existent on py2.7, so for the older py2.6 we need to add similar logic so that the test works correctly there.
2014-10-20fix for rhel7 by using 'uses_systemd' to detect upstart/systemdScott Moser
2014-10-20Add Digital Ocean Datasource.Scott Moser
This adds a DataSource for DigitalOcean's metadata service. The service is documented at https://developers.digitalocean.com/metadata/ .
2014-10-18Pretty up the debug moduleJoshua Harlow
Previously the usage of the yaml_dumps module was causing any python unicode key and value to show up as: 'item': !!python/unicode "some string" This was not very pretty... Fix this by using safe_dumps (which is also a good thing to use and allow_unicode=True). Also create a tiny helper function in the cc_debug module that does not include the yaml start and end footers (since this module has its own footers and headers). Also includes a basic sanity test for this module.
2014-10-17Explicitly import only types being comparedNeal Shrader
2014-10-17Correct handling of single/multiple ssh keysNeal Shrader
2014-10-17Expose uses_systemd as a distro functionJoshua Harlow
Without this change the tests are currently failing on rhel7 since a location where a hostname file is written no longer exists at that location when systemd is active. To avoid this allow the test to inspect if the distro has systemd enabled and avoid testing the file when systemd is being used so the test passes. We likely need to figure out a better way to test features that no longer exist as files but exist as commands with systemd in general.
2014-10-16Use existing metadata crawler to populate datasourceNeal Shrader
2014-10-16Add tests for DigitalOcean datasourceNeal Shrader
2014-10-11More adjustmentsJoshua Harlow
- Use the generated_by() utility function to give the ruby template a better header comment - Set special parameters after selecting the basic chef parameters.
2014-10-10Fix some of the erroring out test casesJoshua Harlow
There are a couple new test cases that are now erroring out. - A usage of the non helper unit testcase base which is trigging and error on python 2.6 due to lack of method, fix this by using the base helper class. - A freebsd distro test check thats looking for /etc/resolv.conf and examining its contents, which won't exist due to our mocking routine that does not allow that file to be read. - A freebsd distro test where the distro class tries to call into ['ifconfig', '-a'] for a set of values, those values don't exist on the machine I am running on (and likely others machines) so we should mock the subp function out (that the distro class calls) and correctly return values that will work for the testcase.
2014-10-10Add a few template delete testsJoshua Harlow
2014-10-10Increase the robustness of the chef moduleJoshua Harlow
Add the following adjustments to the chef template and module - Make it so that the chef directories can be provided (defaults to the existing directories) - Make the params much more configurable, and if a parameter is provided in the chef configuration it will override existing template parameters. - Make the template skip lines if the values are None in the configuration so that template lines can be removed if/when this is desirable. - Allow the firstboot json path to be configurable (defaults to the existing location). - Adds a basic set of tests to ensure that good things are happening.
2014-10-02freebsd: Use the proper virtio FreeBSD network interface name.Scott Moser
2014-09-10Openstack: Vendor data cleanupScott Moser
For now, this vendor data handling is just added to openstack. However, in an effort to allow sanely handling of multi-part vendor-data that is namespaced, we add openstack.convert_vendordata_json . That basically takes whatever was loaded from vendordata and takes the 'cloud-init' key if it is a dict. This way the author can namespace cloud-init, basically telling it to ignore everything else.
2014-09-10drop version= from readersScott Moser
instead of taking a version that they should look for, the readers now just select the highest supported version. definitely a use case later for having version= but nothing is using it now.
2014-09-10pyflakes fixes.Scott Moser
make pyflakes now passes.
2014-09-02merge from trunkScott Moser
2014-08-28fix: Make sure this freebsd test succeeds on all platforms (harlowja).Harm Weites
2014-08-27no functional changes, but some minor changes.Scott Moser
2014-08-27Fixed more of the slowness around fetching and retryingJoshua Harlow
2014-08-26further remove evidence of pylint.Scott Moser
This just removes comments '# pylint:' things and other code remnents of pylint.
2014-08-26fix(pep8): Fix various pep8 violations and version-lock pep8Jay Faulkner
Fixed all complaints from running "make pep8". Also version locked pep8 in test-requirements.txt to ensure that pep8 requirements don't change without an explicit commit.
2014-08-22merge from trunkScott Moser
2014-08-22ec2_utils.py: get_instance_metadata explicitly add trailing /Scott Moser
This change works around a bug in CloudStack's EC2 api implementation. That is filed upstream at [1]. The fix is safe for openstack and EC2 use cases as well. EC2 and OpenStacks' EC2 metadata service both return a list with access to either of: <url_base>/latest/meta-data <url_base>/latest/meta-data/ Additionally, the responses explicitly contain a trailing '/' for items that have a child. The ec2_utils code then just re-uses the trailng / there. Thus, only the top level request for 'meta-data/' needs the explicit fix. This also changes test cases. Those test cases failed without fixing them. If ever this regressed, those would fail again. -- [1] https://issues.apache.org/jira/browse/CLOUDSTACK-7405 LP: #1356855
2014-08-08merge: These are the changes from the freebsd-static-networking branch.Harm Weites
2014-07-24SeLinuxGuard: remove invalid check for sanity around restorecon, fix testScott Moser
previous commit occurred because the selinux test was failing in a schroot where there was no /etc/hosts. Now, fix that test more correctly, and fix some bad assumptions in the SeLinuxGuard.
2014-07-24test: make selinux test skipped if selinux not available.Scott Moser
Also, in debian packaging depend on it (so it wont skip there).
2014-07-24pep8 fixes (2 unrelated to this mp)Scott Moser
2014-07-24merge from trunkScott Moser
2014-07-23fix httpretty based test cases if http_proxy is set.Scott Moser
previously this would fail: http_proxy=http://foo.bar make test now it will pass. This works around a bug where httpretty is not able to patch http operations if http_proxy is set. https://github.com/gabrielfalcao/HTTPretty/issues/122
2014-07-23moreDimitri John Ledkov
2014-07-23moreDimitri John Ledkov
2014-07-23moreDimitri John Ledkov
2014-07-23moreDimitri John Ledkov
2014-07-23more import statementsDimitri John Ledkov
2014-07-23Use nosetests and absolute importsDimitri John Ledkov
2014-07-21use textwrap, simple formatting improvement.Scott Moser
2014-07-21merge from trunkScott Moser
2014-07-18Add non braces matching and a few more testsJoshua Harlow
2014-07-16Fix a few tests that have been failing in python 2.6Joshua Harlow
A few of the current tests have been continually failing in python 2.6 based systems, due to lack of unit test functions that are now added to ensure we can run the unit tests (and not have to ignore those failures) on python 2.6
2014-07-16Add basic renderer support and more robust import handlingJoshua Harlow
2014-06-02SmartOS test: do not require existance of /dev/ttyS1.Scott Moser
LP: #1316597
2014-05-30CloudSigma: only poll on serial device after dmidecode check.Kiril Vladimiroff
On systems with a ttyS1 and nothing attached, the read attempts that the cloud sigma datasource would do would block. Also, Add timeouts for reading/writting from/to the serial console LP: #1316475