@@ -27,6 +27,7 @@ class TestInstance(unittest.TestCase):
2727 LOCATION = "projects/" + PROJECT + "/locations/" + CONFIG_NAME
2828 DISPLAY_NAME = "display_name"
2929 NODE_COUNT = 5
30+ PROCESSING_UNITS = 5000
3031 OP_ID = 8915
3132 OP_NAME = "operations/projects/%s/instances/%soperations/%d" % (
3233 PROJECT ,
@@ -39,6 +40,7 @@ class TestInstance(unittest.TestCase):
3940 DATABASE_ID = "database_id"
4041 DATABASE_NAME = "%s/databases/%s" % (INSTANCE_NAME , DATABASE_ID )
4142 LABELS = {"test" : "true" }
43+ FIELD_MASK = ["config" , "display_name" , "processing_units" , "labels" ]
4244
4345 def _getTargetClass (self ):
4446 from google .cloud .spanner_v1 .instance import Instance
@@ -230,7 +232,7 @@ def test_create_already_exists(self):
230232 self .assertEqual (instance .name , self .INSTANCE_NAME )
231233 self .assertEqual (instance .config , self .CONFIG_NAME )
232234 self .assertEqual (instance .display_name , self .INSTANCE_ID )
233- self .assertEqual (instance .node_count , 1 )
235+ self .assertEqual (instance .processing_units , 1000 )
234236 self .assertEqual (metadata , [("google-cloud-resource-prefix" , instance .name )])
235237
236238 def test_create_success (self ):
@@ -258,7 +260,36 @@ def test_create_success(self):
258260 self .assertEqual (instance .name , self .INSTANCE_NAME )
259261 self .assertEqual (instance .config , self .CONFIG_NAME )
260262 self .assertEqual (instance .display_name , self .DISPLAY_NAME )
261- self .assertEqual (instance .node_count , self .NODE_COUNT )
263+ self .assertEqual (instance .processing_units , self .PROCESSING_UNITS )
264+ self .assertEqual (instance .labels , self .LABELS )
265+ self .assertEqual (metadata , [("google-cloud-resource-prefix" , instance .name )])
266+
267+ def test_create_with_processing_units (self ):
268+ op_future = _FauxOperationFuture ()
269+ client = _Client (self .PROJECT )
270+ api = client .instance_admin_api = _FauxInstanceAdminAPI (
271+ _create_instance_response = op_future
272+ )
273+ instance = self ._make_one (
274+ self .INSTANCE_ID ,
275+ client ,
276+ configuration_name = self .CONFIG_NAME ,
277+ display_name = self .DISPLAY_NAME ,
278+ processing_units = self .PROCESSING_UNITS ,
279+ labels = self .LABELS ,
280+ )
281+
282+ future = instance .create ()
283+
284+ self .assertIs (future , op_future )
285+
286+ (parent , instance_id , instance , metadata ) = api ._created_instance
287+ self .assertEqual (parent , self .PARENT )
288+ self .assertEqual (instance_id , self .INSTANCE_ID )
289+ self .assertEqual (instance .name , self .INSTANCE_NAME )
290+ self .assertEqual (instance .config , self .CONFIG_NAME )
291+ self .assertEqual (instance .display_name , self .DISPLAY_NAME )
292+ self .assertEqual (instance .processing_units , self .PROCESSING_UNITS )
262293 self .assertEqual (instance .labels , self .LABELS )
263294 self .assertEqual (metadata , [("google-cloud-resource-prefix" , instance .name )])
264295
@@ -389,9 +420,7 @@ def test_update_not_found(self):
389420 instance .update ()
390421
391422 instance , field_mask , metadata = api ._updated_instance
392- self .assertEqual (
393- field_mask .paths , ["config" , "display_name" , "node_count" , "labels" ]
394- )
423+ self .assertEqual (field_mask .paths , self .FIELD_MASK )
395424 self .assertEqual (instance .name , self .INSTANCE_NAME )
396425 self .assertEqual (instance .config , self .CONFIG_NAME )
397426 self .assertEqual (instance .display_name , self .INSTANCE_ID )
@@ -417,14 +446,42 @@ def test_update_success(self):
417446
418447 self .assertIs (future , op_future )
419448
449+ instance , field_mask , metadata = api ._updated_instance
450+ self .assertEqual (field_mask .paths , self .FIELD_MASK )
451+ self .assertEqual (instance .name , self .INSTANCE_NAME )
452+ self .assertEqual (instance .config , self .CONFIG_NAME )
453+ self .assertEqual (instance .display_name , self .DISPLAY_NAME )
454+ self .assertEqual (instance .node_count , self .NODE_COUNT )
455+ self .assertEqual (instance .labels , self .LABELS )
456+ self .assertEqual (metadata , [("google-cloud-resource-prefix" , instance .name )])
457+
458+ def test_update_success_with_processing_units (self ):
459+ op_future = _FauxOperationFuture ()
460+ client = _Client (self .PROJECT )
461+ api = client .instance_admin_api = _FauxInstanceAdminAPI (
462+ _update_instance_response = op_future
463+ )
464+ instance = self ._make_one (
465+ self .INSTANCE_ID ,
466+ client ,
467+ configuration_name = self .CONFIG_NAME ,
468+ processing_units = self .PROCESSING_UNITS ,
469+ display_name = self .DISPLAY_NAME ,
470+ labels = self .LABELS ,
471+ )
472+
473+ future = instance .update ()
474+
475+ self .assertIs (future , op_future )
476+
420477 instance , field_mask , metadata = api ._updated_instance
421478 self .assertEqual (
422- field_mask .paths , ["config" , "display_name" , "node_count " , "labels" ]
479+ field_mask .paths , ["config" , "display_name" , "processing_units " , "labels" ]
423480 )
424481 self .assertEqual (instance .name , self .INSTANCE_NAME )
425482 self .assertEqual (instance .config , self .CONFIG_NAME )
426483 self .assertEqual (instance .display_name , self .DISPLAY_NAME )
427- self .assertEqual (instance .node_count , self .NODE_COUNT )
484+ self .assertEqual (instance .processing_units , self .PROCESSING_UNITS )
428485 self .assertEqual (instance .labels , self .LABELS )
429486 self .assertEqual (metadata , [("google-cloud-resource-prefix" , instance .name )])
430487
0 commit comments