2020import static org .junit .Assert .assertFalse ;
2121import static org .junit .Assert .assertNull ;
2222import static org .junit .Assert .assertTrue ;
23+ import static org .mockito .Matchers .any ;
24+ import static org .mockito .Mockito .never ;
2325import static org .mockito .Mockito .verify ;
2426import static org .mockito .Mockito .verifyZeroInteractions ;
2527import static org .mockito .Mockito .when ;
2628
2729import java .util .HashMap ;
2830import java .util .Map ;
2931
32+ import com .vmware .vim25 .ClusterConfigInfoEx ;
33+ import com .vmware .vim25 .DatacenterConfigInfo ;
34+ import com .vmware .vim25 .VirtualMachineConfigSpec ;
3035import org .junit .After ;
3136import org .junit .AfterClass ;
3237import org .junit .Before ;
@@ -62,6 +67,16 @@ public class HypervisorHostHelperTest {
6267 ServiceContent serviceContent ;
6368 @ Mock
6469 AboutInfo aboutInfo ;
70+ @ Mock
71+ private VirtualMachineConfigSpec vmSpec ;
72+ @ Mock
73+ private ClusterMO clusterMO ;
74+ @ Mock
75+ private DatacenterMO datacenterMO ;
76+ @ Mock
77+ private ClusterConfigInfoEx clusterConfigInfo ;
78+ @ Mock
79+ private DatacenterConfigInfo datacenterConfigInfo ;
6580
6681 String vSwitchName ;
6782 Integer networkRateMbps ;
@@ -70,10 +85,12 @@ public class HypervisorHostHelperTest {
7085 String svlanId = null ;
7186
7287 @ Before
73- public void setup () {
88+ public void setup () throws Exception {
7489 MockitoAnnotations .initMocks (this );
7590 when (context .getServiceContent ()).thenReturn (serviceContent );
7691 when (serviceContent .getAbout ()).thenReturn (aboutInfo );
92+ when (clusterMO .getClusterConfigInfo ()).thenReturn (clusterConfigInfo );
93+ when (datacenterMO .getDatacenterConfigInfo ()).thenReturn (datacenterConfigInfo );
7794 }
7895
7996 @ BeforeClass
@@ -883,4 +900,29 @@ public void testCreateDVPortVlanSpecInvalidInputVlanRange() {
883900 assertTrue (((VmwareDistributedVirtualSwitchTrunkVlanSpec ) spec ).getVlanId ().get (0 ).getStart () == 0 );
884901 assertTrue (((VmwareDistributedVirtualSwitchTrunkVlanSpec ) spec ).getVlanId ().get (0 ).getEnd () == 0 );
885902 }
903+
904+ @ Test
905+ public void testSetVMHardwareVersionClusterLevel () throws Exception {
906+ when (clusterConfigInfo .getDefaultHardwareVersionKey ()).thenReturn ("vmx-11" );
907+ when (datacenterConfigInfo .getDefaultHardwareVersionKey ()).thenReturn ("vmx-9" );
908+ HypervisorHostHelper .setVMHardwareVersion (vmSpec , clusterMO , datacenterMO );
909+ verify (vmSpec ).setVersion ("vmx-11" );
910+ verify (vmSpec , never ()).setVersion ("vmx-9" );
911+ }
912+
913+ @ Test
914+ public void testSetVMHardwareVersionDatacenterLevel () throws Exception {
915+ when (clusterConfigInfo .getDefaultHardwareVersionKey ()).thenReturn (null );
916+ when (datacenterConfigInfo .getDefaultHardwareVersionKey ()).thenReturn ("vmx-9" );
917+ HypervisorHostHelper .setVMHardwareVersion (vmSpec , clusterMO , datacenterMO );
918+ verify (vmSpec ).setVersion ("vmx-9" );
919+ }
920+
921+ @ Test
922+ public void testSetVMHardwareVersionUnset () throws Exception {
923+ when (clusterConfigInfo .getDefaultHardwareVersionKey ()).thenReturn (null );
924+ when (datacenterConfigInfo .getDefaultHardwareVersionKey ()).thenReturn (null );
925+ HypervisorHostHelper .setVMHardwareVersion (vmSpec , clusterMO , datacenterMO );
926+ verify (vmSpec , never ()).setVersion (any ());
927+ }
886928}
0 commit comments