<feed xmlns='http://www.w3.org/2005/Atom'>
<title>vyos-cloud-init.git/cloudinit/tests/helpers.py, branch rolling</title>
<subtitle> (mirror of https://github.com/vyos/vyos-cloud-init.git)
</subtitle>
<id>https://git.amelek.net/vyos/vyos-cloud-init.git/atom?h=rolling</id>
<link rel='self' href='https://git.amelek.net/vyos/vyos-cloud-init.git/atom?h=rolling'/>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-cloud-init.git/'/>
<updated>2021-12-03T20:11:46+00:00</updated>
<entry>
<title>Reorganize unit test locations under tests/unittests (#1126)</title>
<updated>2021-12-03T20:11:46+00:00</updated>
<author>
<name>Brett Holman</name>
<email>bholman.devel@gmail.com</email>
</author>
<published>2021-12-03T20:11:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-cloud-init.git/commit/?id=039c40f9b3d88ee8158604bb18ca4bf2fb5d5e51'/>
<id>urn:sha1:039c40f9b3d88ee8158604bb18ca4bf2fb5d5e51</id>
<content type='text'>
This attempts to standardize unit test file location under test/unittests/
such that any source file located at cloudinit/path/to/file.py may have a
corresponding unit test file at test/unittests/path/to/test_file.py.

Noteworthy Comments:
====================
Four different duplicate test files existed:
test_{gpg,util,cc_mounts,cc_resolv_conf}.py
Each of these duplicate file pairs has been merged together. This is a
break in git history for these files.

The test suite appears to have a dependency on test order. Changing test
order causes some tests to fail. This should be rectified, but for now
some tests have been modified in
tests/unittests/config/test_set_passwords.py.

A helper class name starts with "Test" which causes pytest to try
executing it as a test case, which then throws warnings "due to Class
having __init__()".  Silence by changing the name of the class.

# helpers.py is imported in many test files, import paths change
cloudinit/tests/helpers.py -&gt; tests/unittests/helpers.py

# Move directories:
cloudinit/distros/tests -&gt; tests/unittests/distros
cloudinit/cmd/devel/tests -&gt; tests/unittests/cmd/devel
cloudinit/cmd/tests -&gt; tests/unittests/cmd/
cloudinit/sources/helpers/tests -&gt; tests/unittests/sources/helpers
cloudinit/sources/tests -&gt; tests/unittests/sources
cloudinit/net/tests -&gt; tests/unittests/net
cloudinit/config/tests -&gt; tests/unittests/config
cloudinit/analyze/tests/ -&gt; tests/unittests/analyze/

# Standardize tests already in tests/unittests/
test_datasource -&gt; sources
test_distros -&gt; distros
test_vmware -&gt; sources/vmware
test_handler -&gt; config        # this contains cloudconfig module tests
test_runs -&gt; runs</content>
</entry>
<entry>
<title>Fix unit tests breaking from new httpretty version (#903)</title>
<updated>2021-05-14T17:48:52+00:00</updated>
<author>
<name>James Falcon</name>
<email>TheRealFalcon@users.noreply.github.com</email>
</author>
<published>2021-05-14T17:48:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-cloud-init.git/commit/?id=57964125205790f7803dbebfadc6c52ed195c6bf'/>
<id>urn:sha1:57964125205790f7803dbebfadc6c52ed195c6bf</id>
<content type='text'>
httpretty now logs all requests by default which gets mixed up with our
logging tests. Also we were incorrectly setting a logging level to
'None', which now also causes issues with the new httpretty version.
See https://github.com/gabrielfalcao/HTTPretty/pull/419</content>
</entry>
<entry>
<title>Move subp into its own module. (#416)</title>
<updated>2020-06-08T16:49:12+00:00</updated>
<author>
<name>Scott Moser</name>
<email>smoser@brickies.net</email>
</author>
<published>2020-06-08T16:49:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-cloud-init.git/commit/?id=3c551f6ebc12f7729a2755c89b19b9000e27cc88'/>
<id>urn:sha1:3c551f6ebc12f7729a2755c89b19b9000e27cc88</id>
<content type='text'>
This was painful, but it finishes a TODO from cloudinit/subp.py.

It moves the following from util to subp:
  ProcessExecutionError
  subp
  which
  target_path

I moved subp_blob_in_tempfile into cc_chef, which is its only caller.
That saved us from having to deal with it using write_file
and temp_utils from subp (which does not import any cloudinit things now).

It is arguable that 'target_path' could be moved to a 'path_utils' or
something, but in order to use it from subp and also from utils,
we had to get it out of utils.</content>
</entry>
<entry>
<title>cloudinit: remove unneeded __future__ imports (#362)</title>
<updated>2020-05-14T15:25:02+00:00</updated>
<author>
<name>Daniel Watkins</name>
<email>oddbloke@ubuntu.com</email>
</author>
<published>2020-05-14T15:25:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-cloud-init.git/commit/?id=4261ae538563d262bc76b8c55f7cc0c8abb14b00'/>
<id>urn:sha1:4261ae538563d262bc76b8c55f7cc0c8abb14b00</id>
<content type='text'>
We live in the future now.</content>
</entry>
<entry>
<title>conftest: add docs and tests regarding CiTestCase's subp functionality (#343)</title>
<updated>2020-05-12T18:09:40+00:00</updated>
<author>
<name>Daniel Watkins</name>
<email>oddbloke@ubuntu.com</email>
</author>
<published>2020-05-12T18:09:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-cloud-init.git/commit/?id=c8f20b31cd57443b1bef17579dfceca432420c94'/>
<id>urn:sha1:c8f20b31cd57443b1bef17579dfceca432420c94</id>
<content type='text'>
And raise TypeError when subp called with no args, which more accurately mirrors normal behaviour:

&gt;&gt;&gt; from cloudinit.util import subp
&gt;&gt;&gt; subp()
Traceback (most recent call last):
  File "&lt;stdin&gt;", line 1, in &lt;module&gt;
TypeError: subp() missing 1 required positional argument: 'args'</content>
</entry>
<entry>
<title>cloudinit: drop dependencies on unittest2 and contextlib2 (#322)</title>
<updated>2020-04-24T13:26:51+00:00</updated>
<author>
<name>Daniel Watkins</name>
<email>oddbloke@ubuntu.com</email>
</author>
<published>2020-04-24T13:26:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-cloud-init.git/commit/?id=38a7e6e9756fdab31264c0d6e93d20432ed111ac'/>
<id>urn:sha1:38a7e6e9756fdab31264c0d6e93d20432ed111ac</id>
<content type='text'>
These libraries provide backports of Python 3's stdlib components to Python 2. As we only support Python 3, we can simply use the stdlib now. This pull request does the following:

* removes some unneeded compatibility code for the old spelling of `assertRaisesRegex`
* replaces invocations of the Python 2-only `assertItemsEqual` with its new name, `assertCountEqual`
* replaces all usage of `unittest2` with `unittest`
* replaces all usage of `contextlib2` with `contextlib`
* drops `unittest2` and `contextlib2` from requirements files and tox.ini

It also rewrites some `test_azure` helpers to use bare asserts. We were seeing a strange error in xenial builds of this branch which appear to be stemming from the AssertionError that pytest produces being _different_ from the standard AssertionError.  This means that the modified helpers weren't behaving correctly, because they weren't catching AssertionErrors as one would expect. (I believe this is related, in some way, to https://github.com/pytest-dev/pytest/issues/645, but the only version of pytest where we're affected is so far in the past that it's not worth pursuing it any further as we have a workaround.)</content>
</entry>
<entry>
<title>CiTestCase: stop using and remove sys_exit helper (#283)</title>
<updated>2020-03-31T20:32:40+00:00</updated>
<author>
<name>Daniel Watkins</name>
<email>oddbloke@ubuntu.com</email>
</author>
<published>2020-03-31T20:32:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-cloud-init.git/commit/?id=b698b349c827f30fa60de55e2469a21ae4342669'/>
<id>urn:sha1:b698b349c827f30fa60de55e2469a21ae4342669</id>
<content type='text'>
This shim was required to support Python 2.6, so we no longer need it.</content>
</entry>
<entry>
<title>CiTestCase: remove now-unneeded parse_and_read helper method (#286)</title>
<updated>2020-03-27T16:29:05+00:00</updated>
<author>
<name>Daniel Watkins</name>
<email>oddbloke@ubuntu.com</email>
</author>
<published>2020-03-27T16:29:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-cloud-init.git/commit/?id=36a597de6f130a17360856697759b08f3c835df1'/>
<id>urn:sha1:36a597de6f130a17360856697759b08f3c835df1</id>
<content type='text'>
(And sort some imports where I was changing them.)</content>
</entry>
<entry>
<title>Add Netbsd support (#62)</title>
<updated>2020-03-12T18:37:08+00:00</updated>
<author>
<name>Gonéri Le Bouder</name>
<email>goneri@lebouder.net</email>
</author>
<published>2020-03-12T18:37:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-cloud-init.git/commit/?id=94838def772349387e16cc642b3642020e22deda'/>
<id>urn:sha1:94838def772349387e16cc642b3642020e22deda</id>
<content type='text'>
Add support for the NetBSD Operating System.                                    
                                                                                
Features in this branch:                                                        
* Add BSD distro parent class from which NetBSD and FreeBSD can                 
  specialize                                                                    
* Add *bsd util functions to cloudinit.net and cloudinit.net.bsd_utils          
* subclass cloudinit.distro.freebsd.Distro from bsd.Distro                      
* Add new cloudinit.distro.netbsd and cloudinit.net.renderer for                
  netbsd                                                                        
* Add lru_cached util.is_NetBSD functions                                       
* Add NetBSD detection for ConfigDrive and NoCloud datasources                  
                                                                                
This branch has been tested with:                                               
                                                                                
- NoCloud and OpenStack (with and without config-drive)                         
- NetBSD 8.1. and 9.0                                                           
- FreeBSD 11.2 and 12.1                                                         
- Python 3.7 only, because of the dependency oncrypt.METHOD_BLOWFISH.           
  This version is available in NetBSD 7, 8 and 9 anyway</content>
</entry>
<entry>
<title>Replace mock library with unittest.mock (#186)</title>
<updated>2020-01-29T21:55:39+00:00</updated>
<author>
<name>Daniel Watkins</name>
<email>oddbloke@ubuntu.com</email>
</author>
<published>2020-01-29T21:55:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-cloud-init.git/commit/?id=5f8f85bb38cc972d3d2c705a1ec73db3f690f323'/>
<id>urn:sha1:5f8f85bb38cc972d3d2c705a1ec73db3f690f323</id>
<content type='text'>
* cloudinit: replace "import mock" with "from unittest import mock"

* test-requirements.txt: drop mock

Co-authored-by: Chad Smith &lt;chad.smith@canonical.com&gt;
</content>
</entry>
</feed>
