summaryrefslogtreecommitdiff
path: root/tests/unittests/test_handler/test_handler_snappy.py
diff options
context:
space:
mode:
authorScott Moser <smoser@ubuntu.com>2015-03-27 16:20:05 -0400
committerScott Moser <smoser@ubuntu.com>2015-03-27 16:20:05 -0400
commit09cc5909e3d69c03622b7dc2c4cb35fd378743cb (patch)
treede15adf402db75ff4f6da45c569c10b10d2338cb /tests/unittests/test_handler/test_handler_snappy.py
parentcb03a028430902c79f82097230abb7120f366bbd (diff)
downloadvyos-cloud-init-09cc5909e3d69c03622b7dc2c4cb35fd378743cb.tar.gz
vyos-cloud-init-09cc5909e3d69c03622b7dc2c4cb35fd378743cb.zip
be more user-friendly when looking for matching .config
On fspath installs, look for .config files harder. Given a file named: pkg.namespace_0.version_arch.snap We'll search for config files named: pkg.namespace_0.version_arch.config pkg.namespace.config pkg.config
Diffstat (limited to 'tests/unittests/test_handler/test_handler_snappy.py')
-rw-r--r--tests/unittests/test_handler/test_handler_snappy.py34
1 files changed, 34 insertions, 0 deletions
diff --git a/tests/unittests/test_handler/test_handler_snappy.py b/tests/unittests/test_handler/test_handler_snappy.py
index f0776259..84512846 100644
--- a/tests/unittests/test_handler/test_handler_snappy.py
+++ b/tests/unittests/test_handler/test_handler_snappy.py
@@ -112,6 +112,40 @@ class TestInstallPackages(t_help.TestCase):
makeop_tmpd(self.tmp, 'install', 'snapf2', path="snapf2.snap"),
makeop('install', 'pkg1')])
+ def test_package_ops_common_filename(self):
+ # fish package name from filename
+ # package names likely look like: pkgname.namespace_version_arch.snap
+ fname = "xkcd-webserver.canonical_0.3.4_all.snap"
+ name = "xkcd-webserver.canonical"
+ shortname = "xkcd-webserver"
+
+ # find filenames
+ self.populate_tmp(
+ {"pkg-ws.smoser_0.3.4_all.snap": "pkg-ws-snapdata",
+ "pkg-ws.config": "pkg-ws-config",
+ "pkg1.smoser_1.2.3_all.snap": "pkg1.snapdata",
+ "pkg1.smoser.config": "pkg1.smoser.config-data",
+ "pkg1.config": "pkg1.config-data",
+ "pkg2.smoser_0.0_amd64.snap": "pkg2-snapdata",
+ "pkg2.smoser_0.0_amd64.config": "pkg2.config",
+ })
+
+ ret = get_package_ops(
+ packages=[], configs={}, installed=[], fspath=self.tmp)
+ raise Exception("ret: %s" % ret)
+ self.assertEqual(
+ ret,
+ [makeop_tmpd(self.tmp, 'install', 'pkg-ws.smoser',
+ path="pkg-ws.smoser_0.3.4_all.snap",
+ cfgfile="pkg-ws.config"),
+ makeop_tmpd(self.tmp, 'install', 'pkg1.smoser',
+ path="pkg1.smoser_1.2.3_all.snap",
+ cfgfile="pkg1.smoser.config"),
+ makeop_tmpd(self.tmp, 'install', 'pkg2.smoser',
+ path="pkg2.smoser_0.0_amd64.snap",
+ cfgfile="pkg2.smoser_0.0_amd64.config"),
+ ])
+
def test_package_ops_config_overrides_file(self):
# config data overrides local file .config
self.populate_tmp(