|
38 | 38 | import com.cloud.user.AccountManager; |
39 | 39 | import com.cloud.user.UserVO; |
40 | 40 | import com.cloud.utils.Pair; |
| 41 | +import com.cloud.utils.db.EntityManager; |
41 | 42 | import com.cloud.utils.exception.CloudRuntimeException; |
| 43 | +import org.apache.cloudstack.api.InternalIdentity; |
42 | 44 | import org.apache.cloudstack.api.ServerApiException; |
43 | 45 | import org.apache.cloudstack.api.command.QuotaConfigureEmailCmd; |
44 | 46 | import org.apache.cloudstack.api.command.QuotaCreditsListCmd; |
@@ -186,6 +188,9 @@ public class QuotaResponseBuilderImplTest extends TestCase { |
186 | 188 | @Mock |
187 | 189 | User callerUserMock; |
188 | 190 |
|
| 191 | + @Mock |
| 192 | + EntityManager entityManagerMock; |
| 193 | + |
189 | 194 | @Before |
190 | 195 | public void setup() { |
191 | 196 | CallContext.register(callerUserMock, callerAccountMock); |
@@ -1135,4 +1140,35 @@ public void getDomainIdsForQuotaStatementTestThrowsAccessDeniedForProvidedDomain |
1135 | 1140 | () -> quotaResponseBuilderSpy.getDomainIdsForQuotaStatement(null, 5L, false)); |
1136 | 1141 | Mockito.verify(accountManagerMock).checkAccess(callerAccountMock, domainVoMock); |
1137 | 1142 | } |
| 1143 | + |
| 1144 | + @Test(expected = InvalidParameterValueException.class) |
| 1145 | + public void retrieveResourceTestThrowsExceptionForInvalidUsageType() { |
| 1146 | + Integer invalidUsageType = 999; |
| 1147 | + quotaResponseBuilderSpy.retrieveResource("validUuid", invalidUsageType); |
| 1148 | + } |
| 1149 | + |
| 1150 | + @Test |
| 1151 | + public void retrieveResourceTestReturnsNullForNonexistentResource() { |
| 1152 | + String invalidUuid = "nonexistentUuid"; |
| 1153 | + Integer validUsageType = QuotaTypes.ALLOCATED_VM; |
| 1154 | + |
| 1155 | + Mockito.doReturn(null).when(entityManagerMock).findByUuidIncludingRemoved(Mockito.any(), Mockito.eq(invalidUuid)); |
| 1156 | + InternalIdentity result = quotaResponseBuilderSpy.retrieveResource(invalidUuid, validUsageType); |
| 1157 | + |
| 1158 | + Assert.assertNull(result); |
| 1159 | + } |
| 1160 | + |
| 1161 | + @Test |
| 1162 | + public void retrieveResourceTestReturnsCorrectResource() { |
| 1163 | + String validUuid = "validUuid"; |
| 1164 | + Integer validUsageType = QuotaTypes.ALLOCATED_VM; |
| 1165 | + InternalIdentity mockResource = Mockito.mock(InternalIdentity.class); |
| 1166 | + |
| 1167 | + Mockito.doReturn(mockResource).when(entityManagerMock).findByUuidIncludingRemoved(Mockito.any(), Mockito.eq(validUuid)); |
| 1168 | + |
| 1169 | + InternalIdentity result = quotaResponseBuilderSpy.retrieveResource(validUuid, validUsageType); |
| 1170 | + |
| 1171 | + Assert.assertNotNull(result); |
| 1172 | + Assert.assertEquals(mockResource, result); |
| 1173 | + } |
1138 | 1174 | } |
0 commit comments