|
31 | 31 | import java.util.List; |
32 | 32 | import java.util.Map; |
33 | 33 |
|
| 34 | +import org.junit.Assert; |
34 | 35 | import org.junit.Test; |
35 | 36 | import org.junit.runner.RunWith; |
36 | 37 | import org.mockito.InjectMocks; |
@@ -186,4 +187,26 @@ public void testFindLatestTemplateByTypeAndHypervisorAndArch_NotFound() { |
186 | 187 | VMTemplateVO result = templateDao.findLatestTemplateByTypeAndHypervisorAndArch(hypervisorType, arch, type); |
187 | 188 | assertNull(result); |
188 | 189 | } |
| 190 | + |
| 191 | + @Test |
| 192 | + public void testFindSystemVMReadyTemplate() { |
| 193 | + Long zoneId = 1L; |
| 194 | + VMTemplateVO systemVmTemplate1 = mock(VMTemplateVO.class); |
| 195 | + Mockito.when(systemVmTemplate1.getArch()).thenReturn(CPU.CPUArch.x86); |
| 196 | + Mockito.when(systemVmTemplate1.getHypervisorType()).thenReturn(Hypervisor.HypervisorType.KVM); |
| 197 | + VMTemplateVO systemVmTemplate2 = mock(VMTemplateVO.class); |
| 198 | + Mockito.when(systemVmTemplate2.getArch()).thenReturn(CPU.CPUArch.x86); |
| 199 | + Mockito.when(systemVmTemplate2.getHypervisorType()).thenReturn(Hypervisor.HypervisorType.KVM); |
| 200 | + VMTemplateVO systemVmTemplate3 = mock(VMTemplateVO.class); |
| 201 | + Mockito.when(systemVmTemplate3.getArch()).thenReturn(CPU.CPUArch.arm64); |
| 202 | + Mockito.when(systemVmTemplate3.getHypervisorType()).thenReturn(Hypervisor.HypervisorType.KVM); |
| 203 | + List<VMTemplateVO> templates = Arrays.asList(systemVmTemplate1, systemVmTemplate2, systemVmTemplate3); |
| 204 | + Mockito.when(hostDao.listDistinctHypervisorTypes(zoneId)).thenReturn(Arrays.asList(Hypervisor.HypervisorType.KVM)); |
| 205 | + SearchBuilder<VMTemplateVO> sb = mock(SearchBuilder.class); |
| 206 | + templateDao.readySystemTemplateSearch = sb; |
| 207 | + when(sb.create()).thenReturn(mock(SearchCriteria.class)); |
| 208 | + doReturn(templates).when(templateDao).listBy(any(SearchCriteria.class), any(Filter.class)); |
| 209 | + VMTemplateVO readyTemplate = templateDao.findSystemVMReadyTemplate(zoneId, Hypervisor.HypervisorType.KVM, CPU.CPUArch.arm64.getType()); |
| 210 | + Assert.assertEquals(CPU.CPUArch.arm64, readyTemplate.getArch()); |
| 211 | + } |
189 | 212 | } |
0 commit comments