@Test
 public void testGetDefaultQuotaToDCWithoutDefaultQuotaWithNoReuse() throws Exception {
   String defaultQuotaName = quotaHelper.getDefaultQuotaName(storagePool.getname());
   when(quotaHelper.generateDefaultQuotaName(storagePool)).thenReturn(defaultQuotaName);
   Quota quotaUnlimited = quotaHelper.getUnlimitedQuota(mockStoragePool(), true, false).getFirst();
   assertQuotaUnlimited(quotaUnlimited);
   assertQuotaUnlimitedName(quotaUnlimited);
 }
 @Test
 public void testValidGlobalStorageLimitation() throws Exception {
   List<String> messages = new ArrayList<String>();
   Quota quota = mockGeneralStorageQuota();
   quota.setIsDefaultQuota(false);
   mockStorageDomains();
   assertTrue(quotaHelper.checkQuotaValidationForAdd(quota, messages));
   assertTrue(quotaHelper.checkQuotaValidationForEdit(quota, messages));
 }
 @Test
 public void testGetDefaultQuotaForDCWithDefaultQuota() throws Exception {
   when(quotaDAO.getDefaultQuotaByStoragePoolId(storagePoolUUID))
       .thenReturn(mockGeneralStorageQuota());
   String defaultQuotaName = quotaHelper.getDefaultQuotaName(storagePool.getname());
   when(quotaHelper.generateDefaultQuotaName(storagePool)).thenReturn(defaultQuotaName);
   Quota quotaUnlimited = quotaHelper.getUnlimitedQuota(mockStoragePool(), true);
   assertQuotaUnlimited(quotaUnlimited);
   assertQuotaUnlimitedName(quotaUnlimited);
 }
 @Test
 public void testStorageEmptyQuota() throws Exception {
   List<String> messages = new ArrayList<String>();
   Quota quota = mockGeneralStorageQuota();
   quota.setIsDefaultQuota(false);
   quota.setGlobalQuotaStorage(null);
   boolean isQuotaValid = quotaHelper.checkQuotaValidationForAdd(quota, messages);
   assertTrue(isQuotaValid);
   isQuotaValid = quotaHelper.checkQuotaValidationForEdit(quota, messages);
   assertTrue(isQuotaValid);
 }
  @Test
  public void testMultiSpecificVdsGroupQuota() throws Exception {
    List<String> messages = new ArrayList<String>();
    Quota quota = mockMultiSpecificVdsGroupQuota();

    boolean isQuotaValid = quotaHelper.checkQuotaValidationForAdd(quota, messages);
    assertTrue(isQuotaValid);

    isQuotaValid = quotaHelper.checkQuotaValidationForEdit(quota, messages);
    assertTrue(isQuotaValid);
  }
  @Test
  public void testRamEmptyQuota() throws Exception {
    List<String> messages = new ArrayList<String>();
    Quota quota = mockSpecificVdsGroupQuota();
    for (QuotaVdsGroup quotaVdsGroup : quota.getQuotaVdsGroups()) {
      quotaVdsGroup.setMemSizeMB(null);
    }
    quota.setGlobalQuotaVdsGroup(null);

    boolean isQuotaValid = quotaHelper.checkQuotaValidationForAdd(quota, messages);
    assertTrue(isQuotaValid);

    isQuotaValid = quotaHelper.checkQuotaValidationForEdit(quota, messages);
    assertTrue(isQuotaValid);
  }
  @Test
  public void testValidSpecificStorageLimitation() throws Exception {
    List<String> messages = new ArrayList<String>();
    firstStorageDomains.setused_disk_size(0);
    firstStorageDomains.setavailable_disk_size(100);
    Quota quota = mockGeneralStorageQuota();
    quota.setIsDefaultQuota(false);
    when(storageDomainDAO.getForStoragePool(firstStorageDomainUUID, storagePoolUUID))
        .thenReturn(firstStorageDomains);

    boolean isQuotaValid = quotaHelper.checkQuotaValidationForAdd(quota, messages);
    assertTrue(isQuotaValid);

    isQuotaValid = quotaHelper.checkQuotaValidationForEdit(quota, messages);
    assertTrue(isQuotaValid);
  }
 @Test
 public void testGetDefaultQuotaWithNullIDWithResue() throws Exception {
   storage_pool mockStoragePool = mockStoragePool();
   mockStoragePool.setId(null);
   Quota quotaUnlimited = quotaHelper.getUnlimitedQuota(mockStoragePool, true, true).getFirst();
   assertNull(quotaUnlimited);
   verifyZeroInteractions(quotaDAO);
 }
 @Test
 public void testUpdateSameQuotaWithoutChangingName() throws Exception {
   List<String> messages = new ArrayList<String>();
   Quota mockQuota = mockGeneralStorageQuota();
   when(quotaDAO.getQuotaByQuotaName(quotaName)).thenReturn(mockQuota);
   boolean isQuotaValid = quotaHelper.checkQuotaNameExisting(mockQuota, messages);
   assertTrue(isQuotaValid);
 }
Exemplo n.º 10
0
 @Test
 public void testGetUnlimitedQuota() throws Exception {
   Quota quotaUnlimited = quotaHelper.getUnlimitedQuota(mockStoragePool(), false);
   assertEquals(QuotaHelper.UNLIMITED, quotaUnlimited.getGlobalQuotaStorage().getStorageSizeGB());
   assertEquals(
       QuotaHelper.UNLIMITED.intValue(),
       quotaUnlimited.getGlobalQuotaVdsGroup().getVirtualCpu().intValue());
   assertEquals(QuotaHelper.UNLIMITED, quotaUnlimited.getGlobalQuotaVdsGroup().getMemSizeMB());
 }
Exemplo n.º 11
0
 @Test
 public void testQuotaWithReservedName() throws Exception {
   List<String> messages = new ArrayList<String>();
   Quota mockQuota = mockGeneralStorageQuota();
   mockQuota.setIsDefaultQuota(false);
   mockQuota.setQuotaName("DefaultQuota-Storage pool name");
   boolean isQuotaValid = quotaHelper.checkQuotaNamePrefixReserved(mockQuota, messages);
   assertTrue(
       messages.contains(
           VdcBllMessages.ACTION_TYPE_FAILED_QUOTA_NAME_RESERVED_FOR_DEFAULT.toString()));
   assertFalse(isQuotaValid);
 }
Exemplo n.º 12
0
 @Test
 public void testQuotaWithSameNameExists() throws Exception {
   List<String> messages = new ArrayList<String>();
   Quota mockQuota = mockGeneralStorageQuota();
   when(quotaDAO.getQuotaByQuotaName(quotaName)).thenReturn(mockQuota);
   Quota sameMockedQuotaWithDifferentId = mockGeneralStorageQuota();
   boolean isQuotaValid =
       quotaHelper.checkQuotaNameExisting(sameMockedQuotaWithDifferentId, messages);
   assertTrue(
       messages.contains(VdcBllMessages.ACTION_TYPE_FAILED_QUOTA_NAME_ALREADY_EXISTS.toString()));
   assertFalse(isQuotaValid);
 }
Exemplo n.º 13
0
  @Test
  public void testAddSpecificVdsGroupAndStorageQuota() throws Exception {
    List<String> messages = new ArrayList<String>();

    // Get quota for specific Vds Groups
    Quota quota = mockMultiSpecificVdsGroupQuota();

    // Get specific storage quota to initialize the vds group quota fetched before with its storage
    // list.
    Quota quotaStorage = mockMultiSpecificStorageQuota();
    quota.setQuotaStorages(quotaStorage.getQuotaStorages());

    // Set global limitation with null value to specify the quota is only for specific storage
    // limitations.
    quota.setGlobalQuotaStorage(null);

    // Mock storage domains with enough space for request.
    mockStorageDomains();
    assertTrue(quotaHelper.checkQuotaValidationForAdd(quota, messages));
    assertTrue(quotaHelper.checkQuotaValidationForEdit(quota, messages));
  }
Exemplo n.º 14
0
  @Test
  public void testGlobalAndSpecificRamForVdsGroup() throws Exception {
    List<String> messages = new ArrayList<String>();
    Quota quota = mockSpecificVdsGroupQuota();

    // Set new global quota for vds group.
    QuotaVdsGroup quotaVdsGroup = new QuotaVdsGroup();
    quotaVdsGroup.setMemSizeMB(2l);
    quota.setGlobalQuotaVdsGroup(quotaVdsGroup);

    boolean isQuotaValid = quotaHelper.checkQuotaValidationForAdd(quota, messages);
    assertTrue(
        messages.contains(
            VdcBllMessages.ACTION_TYPE_FAILED_QUOTA_LIMIT_IS_SPECIFIC_AND_GENERAL.toString()));
    assertFalse(isQuotaValid);

    isQuotaValid = quotaHelper.checkQuotaValidationForEdit(quota, messages);
    assertTrue(
        messages.contains(
            VdcBllMessages.ACTION_TYPE_FAILED_QUOTA_LIMIT_IS_SPECIFIC_AND_GENERAL.toString()));
    assertFalse(isQuotaValid);
  }
Exemplo n.º 15
0
  @Test
  public void testSpecificRamWithGlobalCpuQuota() throws Exception {
    List<String> messages = new ArrayList<String>();

    // Get specific quota for vds Quota, which will be configured as general.
    Quota quota = mockSpecificVdsGroupQuota();

    // Iterate over all the vds groups and set the virtual cpu to null.
    for (QuotaVdsGroup quotaVdsGroup : quota.getQuotaVdsGroups()) {
      quotaVdsGroup.setVirtualCpu(null);
    }

    // Set the global limitation of cpu to specific number.
    // Set new global quota for vds group.
    QuotaVdsGroup quotaVdsGroup = new QuotaVdsGroup();
    quotaVdsGroup.setVirtualCpu(20);
    quota.setGlobalQuotaVdsGroup(quotaVdsGroup);

    boolean isQuotaValid = quotaHelper.checkQuotaValidationForAdd(quota, messages);
    assertFalse(isQuotaValid);

    isQuotaValid = quotaHelper.checkQuotaValidationForEdit(quota, messages);
    assertFalse(isQuotaValid);
  }
Exemplo n.º 16
0
 @Test
 public void testGetDefaultQuotaName() throws Exception {
   String quotaDefaultName = quotaHelper.getDefaultQuotaName(mockStoragePool());
   String desiredQuotaDefaultName = "DefaultQuota-Storage pool name";
   assertEquals(desiredQuotaDefaultName, quotaDefaultName);
 }
Exemplo n.º 17
0
 private static QuotaHelper getQuotaHelper() {
   QuotaHelper quotaHelper = QuotaHelper.getInstance();
   return spy(quotaHelper);
 }
Exemplo n.º 18
0
 @Test
 public void testGetDefaultQuotaToDCWithoutDefaultQuotaWithReuse() throws Exception {
   when(quotaDAO.getDefaultQuotaByStoragePoolId(storagePoolUUID)).thenReturn(null);
   Quota quotaUnlimited = quotaHelper.getUnlimitedQuota(mockStoragePool(), true, true).getFirst();
   assertQuotaUnlimited(quotaUnlimited);
 }