Merge "Improve "get_server" function in Kubernetes context"
[yardstick.git] / yardstick / tests / unit / benchmark / contexts / test_dummy.py
index 1a54035..3383237 100644 (file)
@@ -1,5 +1,3 @@
-#!/usr/bin/env python
-
 ##############################################################################
 # Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
 #
@@ -9,24 +7,80 @@
 # http://www.apache.org/licenses/LICENSE-2.0
 ##############################################################################
 
-# Unittest for yardstick.benchmark.contexts.dummy
-
-from __future__ import absolute_import
 import unittest
 
+from yardstick.benchmark.contexts import base
 from yardstick.benchmark.contexts import dummy
 
 
 class DummyContextTestCase(unittest.TestCase):
 
     def setUp(self):
+        self.attrs = {
+            'name': 'foo',
+            'task_id': '1234567890',
+        }
         self.test_context = dummy.DummyContext()
+        self.addCleanup(self._delete_contexts)
+
+    @staticmethod
+    def _delete_contexts():
+        for context in base.Context.list:
+            context._delete_context()
+
+    def test___init__(self):
+        self.assertFalse(self.test_context._flags.no_setup)
+        self.assertFalse(self.test_context._flags.no_teardown)
+        self.assertIsNone(self.test_context._name)
+        self.assertIsNone(self.test_context._task_id)
+
+    def test_init(self):
+        self.test_context.init(self.attrs)
+        self.assertEqual(self.test_context._name, 'foo')
+        self.assertEqual(self.test_context._task_id, '1234567890')
+        self.assertFalse(self.test_context._flags.no_setup)
+        self.assertFalse(self.test_context._flags.no_teardown)
+
+        self.assertEqual(self.test_context.name, 'foo-12345678')
+        self.assertEqual(self.test_context.assigned_name, 'foo')
+
+    def test_init_flags_no_setup(self):
+        self.attrs['flags'] = {'no_setup': True, 'no_teardown': False}
+
+        self.test_context.init(self.attrs)
+
+        self.assertEqual(self.test_context._name, 'foo')
+        self.assertEqual(self.test_context._task_id, '1234567890')
+        self.assertTrue(self.test_context._flags.no_setup)
+        self.assertFalse(self.test_context._flags.no_teardown)
+
+        self.assertEqual(self.test_context.name, 'foo')
+        self.assertEqual(self.test_context.assigned_name, 'foo')
+
+    def test_init_flags_no_teardown(self):
+        self.attrs['flags'] = {'no_setup': False, 'no_teardown': True}
+
+        self.test_context.init(self.attrs)
+
+        self.assertFalse(self.test_context._flags.no_setup)
+        self.assertTrue(self.test_context._flags.no_teardown)
+
+        self.assertEqual(self.test_context.name, 'foo')
+        self.assertEqual(self.test_context.assigned_name, 'foo')
 
     def test__get_server(self):
-        self.test_context.init(None)
+        self.test_context.init(self.attrs)
         self.test_context.deploy()
 
         result = self.test_context._get_server(None)
         self.assertEqual(result, None)
 
         self.test_context.undeploy()
+
+    def test__get_physical_nodes(self):
+        result = self.test_context._get_physical_nodes()
+        self.assertIsNone(result)
+
+    def test__get_physical_node_for_server(self):
+        result = self.test_context._get_physical_node_for_server("fake")
+        self.assertIsNone(result)