summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam Thursfield <sam.thursfield@codethink.co.uk>2015-02-10 17:13:52 +0000
committerSam Thursfield <sam.thursfield@codethink.co.uk>2015-02-11 16:04:44 +0000
commit29662e2918f5335266b09acfa14ab4dba77e175a (patch)
tree767ce3466458a214a988a7b29f8578c0a4c3abe7
parentfe531122452a394f738690a15e789f34a9580b0d (diff)
downloadmorph-29662e2918f5335266b09acfa14ab4dba77e175a.tar.gz
Add test_utils module (oops)
-rw-r--r--morphlib/test_utils.py57
1 files changed, 57 insertions, 0 deletions
diff --git a/morphlib/test_utils.py b/morphlib/test_utils.py
new file mode 100644
index 00000000..a3c7a80f
--- /dev/null
+++ b/morphlib/test_utils.py
@@ -0,0 +1,57 @@
+# Copyright (C) 2012-2015 Codethink Limited
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with this program; if not, write to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+
+'''Collected utilities for use in automated tests of Morph.'''
+
+
+import fs
+
+import morphlib
+
+
+def example_chunk():
+ '''Returns a chunk source with some artifacts.'''
+
+ loader = morphlib.morphloader.MorphologyLoader()
+ morph = loader.load_from_string(
+ '''
+ name: test
+ kind: chunk
+ products:
+ - artifact: chunk-runtime
+ include:
+ - usr/bin
+ - usr/sbin
+ - usr/lib
+ - usr/libexec
+ - artifact: chunk-devel
+ include:
+ - usr/include
+ - artifact: chunk-doc
+ include:
+ - usr/share/doc
+ ''')
+
+ source = next(morphlib.source.make_sources(
+ 'repo', 'original/ref', 'chunk.morph', 'sha1', 'tree', morph))
+ source.cache_key = 'CHUNK'
+ return source
+
+
+
+class FakeLocalArtifactCache(morphlib.localartifactcache.LocalArtifactCache):
+ def __init__(self):
+ super(FakeLocalArtifactCache, self).__init__(fs.tempfs.TempFS())