summaryrefslogtreecommitdiffstats
path: root/sourcecode/JOID/charm-k8s-ovn/layers/ovn/tests
diff options
context:
space:
mode:
authorAakashKT <aakash.kt@research.iiit.ac.in>2018-03-21 14:12:24 +0530
committerAakashKT <aakash.kt@research.iiit.ac.in>2018-03-27 22:22:19 +0530
commitdd2ff7be51548c62f5f708b7e323e23ca5171b95 (patch)
treee6dca8fea09187e888ad8371fa098d6ebf86efd5 /sourcecode/JOID/charm-k8s-ovn/layers/ovn/tests
parente0e7d50a8dbf70117baec66451df7f594a7db233 (diff)
Code for charm-k8s-ovn under sourcecode/JOID/charm-k8s-ovn
Change-Id: I07209b0955436d06cdcd8b19f0dfe8f2c146a36c Signed-off-by: AakashKT <aakash.kt@research.iiit.ac.in>
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()