13493: Merge branch 'master' into 13493-federation-proxy
[arvados.git] / services / nodemanager / tests / test_computenode_driver_ec2.py
index ed0e0bd21ad7351084d8856542bb7c30d5d9c928..520c0dc0ccb43a78434924ecdc180be5037804b5 100644 (file)
@@ -58,9 +58,30 @@ class EC2ComputeNodeDriverTestCase(testutil.DriverTestMixin, unittest.TestCase):
         self.assertTrue(create_method.called)
         self.assertIn(
             ('test', 'testvalue'),
-            create_method.call_args[1].get(
-                'ex_metadata',
-                {'arg': 'missing'}).items()
+            create_method.call_args[1].get('ex_metadata', {'arg': 'missing'}).items()
+        )
+
+    def test_create_includes_arvados_node_size(self):
+        arv_node = testutil.arvados_node_mock()
+        size = testutil.MockSize(1)
+        driver = self.new_driver()
+        driver.create_node(size, arv_node)
+        create_method = self.driver_mock().create_node
+        self.assertTrue(create_method.called)
+        self.assertIn(
+            ('arvados_node_size', size.id),
+            create_method.call_args[1].get('ex_metadata', {'arg': 'missing'}).items()
+        )
+
+    def test_create_preemptible_instance(self):
+        arv_node = testutil.arvados_node_mock()
+        driver = self.new_driver()
+        driver.create_node(testutil.MockSize(1, preemptible=True), arv_node)
+        create_method = self.driver_mock().create_node
+        self.assertTrue(create_method.called)
+        self.assertEqual(
+            True,
+            create_method.call_args[1].get('ex_spot_market', 'arg missing')
         )
 
     def test_hostname_from_arvados_node(self):