summaryrefslogtreecommitdiffstats
path: root/sourcecode/JOID/charm-k8s-ovn/layers/ovn/tests
diff options
context:
space:
mode:
Diffstat (limited to 'sourcecode/JOID/charm-k8s-ovn/layers/ovn/tests')
-rwxr-xr-xsourcecode/JOID/charm-k8s-ovn/layers/ovn/tests/00-setup5
-rwxr-xr-xsourcecode/JOID/charm-k8s-ovn/layers/ovn/tests/10-deploy35
2 files changed, 40 insertions, 0 deletions
diff --git a/sourcecode/JOID/charm-k8s-ovn/layers/ovn/tests/00-setup b/sourcecode/JOID/charm-k8s-ovn/layers/ovn/tests/00-setup
new file mode 100755
index 0000000..f0616a5
--- /dev/null
+++ b/sourcecode/JOID/charm-k8s-ovn/layers/ovn/tests/00-setup
@@ -0,0 +1,5 @@
+#!/bin/bash
+
+sudo add-apt-repository ppa:juju/stable -y
+sudo apt-get update
+sudo apt-get install amulet python-requests -y
diff --git a/sourcecode/JOID/charm-k8s-ovn/layers/ovn/tests/10-deploy b/sourcecode/JOID/charm-k8s-ovn/layers/ovn/tests/10-deploy
new file mode 100755
index 0000000..1cd905f
--- /dev/null
+++ b/sourcecode/JOID/charm-k8s-ovn/layers/ovn/tests/10-deploy
@@ -0,0 +1,35 @@
+#!/usr/bin/python3
+
+import amulet
+import requests
+import unittest
+
+
+class TestCharm(unittest.TestCase):
+ def setUp(self):
+ self.d = amulet.Deployment()
+
+ self.d.add('OVN')
+ self.d.expose('OVN')
+
+ self.d.setup(timeout=900)
+ self.d.sentry.wait()
+
+ self.unit = self.d.sentry['OVN'][0]
+
+ def test_service(self):
+ # test we can access over http
+ page = requests.get('http://{}'.format(self.unit.info['public-address']))
+ self.assertEqual(page.status_code, 200)
+ # Now you can use self.d.sentry[SERVICE][UNIT] to address each of the units and perform
+ # more in-depth steps. Each self.d.sentry[SERVICE][UNIT] has the following methods:
+ # - .info - An array of the information of that unit from Juju
+ # - .file(PATH) - Get the details of a file on that unit
+ # - .file_contents(PATH) - Get plain text output of PATH file from that unit
+ # - .directory(PATH) - Get details of directory
+ # - .directory_contents(PATH) - List files and folders in PATH on that unit
+ # - .relation(relation, service:rel) - Get relation data from return service
+
+
+if __name__ == '__main__':
+ unittest.main()