77import mock
88
99import SoftLayer
10- from SoftLayer import exceptions
1110from SoftLayer import fixtures
1211from SoftLayer import testing
1312
@@ -685,11 +684,6 @@ def test_upgrade_dedicated_host_instance(self):
685684 self .assertEqual (order_container ['prices' ], [{'id' : 115566 }])
686685 self .assertEqual (order_container ['virtualGuests' ], [{'id' : 1 }])
687686
688- def test_upgrade_skips_location_based_prices (self ):
689- # Test that no prices that have locationGroupId set are used
690- self .assertRaises (exceptions .SoftLayerError ,
691- self .vs .upgrade , 1 , cpus = 55 , memory = 2 , public = True )
692-
693687 def test_get_item_id_for_upgrade (self ):
694688 item_id = 0
695689 package_items = self .client ['Product_Package' ].getItems (id = 46 )
@@ -700,6 +694,48 @@ def test_get_item_id_for_upgrade(self):
700694 break
701695 self .assertEqual (1133 , item_id )
702696
697+ def test_get_package_items (self ):
698+ self .vs ._get_package_items ()
699+ self .assert_called_with ('SoftLayer_Product_Package' , 'getItems' )
700+
701+ def test_get_package_items_errors (self ):
702+ mock = self .set_mock ('SoftLayer_Product_Package' , 'getAllObjects' )
703+ mock .return_value = []
704+
705+ self .assertRaises (ValueError , self .vs ._get_package_items )
706+
707+ def test_get_price_id_for_upgrade (self ):
708+ package_items = self .vs ._get_package_items ()
709+
710+ price_id = self .vs ._get_price_id_for_upgrade (package_items = package_items ,
711+ option = 'cpus' ,
712+ value = '4' )
713+ self .assertEqual (1144 , price_id )
714+
715+ def test_get_price_id_for_upgrade_skips_location_price (self ):
716+ package_items = self .vs ._get_package_items ()
717+
718+ price_id = self .vs ._get_price_id_for_upgrade (package_items = package_items ,
719+ option = 'cpus' ,
720+ value = '55' )
721+ self .assertEqual (None , price_id )
722+
723+ def test_get_price_id_for_upgrade_finds_nic_price (self ):
724+ package_items = self .vs ._get_package_items ()
725+
726+ price_id = self .vs ._get_price_id_for_upgrade (package_items = package_items ,
727+ option = 'memory' ,
728+ value = '2' )
729+ self .assertEqual (1133 , price_id )
730+
731+ def test_get_price_id_for_upgrade_finds_memory_price (self ):
732+ package_items = self .vs ._get_package_items ()
733+
734+ price_id = self .vs ._get_price_id_for_upgrade (package_items = package_items ,
735+ option = 'nic_speed' ,
736+ value = '1000' )
737+ self .assertEqual (1122 , price_id )
738+
703739
704740class VSWaitReadyGoTests (testing .TestCase ):
705741
0 commit comments