Search in sources :

Example 16 with QuotaUsageVO

use of org.apache.cloudstack.quota.vo.QuotaUsageVO in project cloudstack by apache.

the class QuotaManagerImplTest method testUpdateQuotaRecords.

@Test
public void testUpdateQuotaRecords() {
    UsageVO usageVO = new UsageVO();
    usageVO.setId(100L);
    usageVO.setQuotaCalculated(0);
    usageVO.setUsageType(UsageTypes.NETWORK_BYTES_SENT);
    usageVO.setRawUsage(9000000000.0);
    usageVO.setSize(1010101010L);
    QuotaTariffVO tariffVO = new QuotaTariffVO();
    tariffVO.setCurrencyValue(new BigDecimal(1));
    Mockito.when(quotaTariffDao.findTariffPlanByUsageType(Mockito.anyInt(), Mockito.any(Date.class))).thenReturn(tariffVO);
    QuotaUsageVO qu = quotaManager.updateQuotaNetwork(usageVO, UsageTypes.NETWORK_BYTES_SENT);
    assertTrue(qu.getQuotaUsed().compareTo(BigDecimal.ZERO) > 0);
    qu = quotaManager.updateQuotaAllocatedVMUsage(usageVO, new BigDecimal(0.5));
    assertTrue(qu.getQuotaUsed().compareTo(BigDecimal.ZERO) > 0);
    qu = quotaManager.updateQuotaDiskUsage(usageVO, new BigDecimal(0.5), UsageTypes.VOLUME);
    assertTrue(qu.getQuotaUsed().compareTo(BigDecimal.ZERO) > 0);
    qu = quotaManager.updateQuotaRaw(usageVO, new BigDecimal(0.5), UsageTypes.VPN_USERS);
    assertTrue(qu.getQuotaUsed().compareTo(BigDecimal.ZERO) > 0);
    Mockito.verify(quotaUsageDao, Mockito.times(4)).persistQuotaUsage(Mockito.any(QuotaUsageVO.class));
    Mockito.verify(usageDao, Mockito.times(4)).persistUsage(Mockito.any(UsageVO.class));
}
Also used : QuotaTariffVO(org.apache.cloudstack.quota.vo.QuotaTariffVO) QuotaUsageVO(org.apache.cloudstack.quota.vo.QuotaUsageVO) UsageVO(com.cloud.usage.UsageVO) BigDecimal(java.math.BigDecimal) Date(java.util.Date) QuotaUsageVO(org.apache.cloudstack.quota.vo.QuotaUsageVO) Test(org.junit.Test)

Aggregations

QuotaUsageVO (org.apache.cloudstack.quota.vo.QuotaUsageVO)16 BigDecimal (java.math.BigDecimal)11 ArrayList (java.util.ArrayList)8 QuotaTariffVO (org.apache.cloudstack.quota.vo.QuotaTariffVO)6 UsageVO (com.cloud.usage.UsageVO)5 Test (org.junit.Test)5 AccountVO (com.cloud.user.AccountVO)4 Date (java.util.Date)4 QuotaAccountVO (org.apache.cloudstack.quota.vo.QuotaAccountVO)4 List (java.util.List)3 Pair (com.cloud.utils.Pair)2 QuotaStatementResponse (org.apache.cloudstack.api.response.QuotaStatementResponse)2 InvalidParameterValueException (com.cloud.exception.InvalidParameterValueException)1 Field (java.lang.reflect.Field)1 HashMap (java.util.HashMap)1 QuotaTypes (org.apache.cloudstack.quota.constant.QuotaTypes)1 QuotaBalanceVO (org.apache.cloudstack.quota.vo.QuotaBalanceVO)1 ServiceOfferingVO (org.apache.cloudstack.quota.vo.ServiceOfferingVO)1