refs #2437: Some records accounted on fallback are not recovered in the proper way in a special case
https://support.d4science.org/issues/2437 Added Tests git-svn-id: https://svn.d4science.research-infrastructures.eu/gcube/trunk/accounting/accounting-lib@124673 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
parent
9ba2a2e788
commit
34df63030e
|
@ -29,8 +29,7 @@ public class AggregatedServiceUsageRecord extends AbstractServiceUsageRecord imp
|
||||||
*/
|
*/
|
||||||
private static final long serialVersionUID = 6387584974618335623L;
|
private static final long serialVersionUID = 6387584974618335623L;
|
||||||
|
|
||||||
// Redefining DURATION to Set @AggregatedField
|
@AggregatedField
|
||||||
@RequiredField @ValidLong @AggregatedField
|
|
||||||
public static final String DURATION = AbstractServiceUsageRecord.DURATION;
|
public static final String DURATION = AbstractServiceUsageRecord.DURATION;
|
||||||
|
|
||||||
@RequiredField @ValidLong @AggregatedField
|
@RequiredField @ValidLong @AggregatedField
|
||||||
|
|
|
@ -33,10 +33,12 @@ public class AggregatedServiceUsageRecordTest extends ScopedTest {
|
||||||
AggregatedServiceUsageRecord aggregatedServiceUsageRecord = new AggregatedServiceUsageRecord(serviceUsageRecord);
|
AggregatedServiceUsageRecord aggregatedServiceUsageRecord = new AggregatedServiceUsageRecord(serviceUsageRecord);
|
||||||
|
|
||||||
Set<String> expectedRequiredFields = ServiceUsageRecordTest.getExpectedRequiredFields();
|
Set<String> expectedRequiredFields = ServiceUsageRecordTest.getExpectedRequiredFields();
|
||||||
expectedRequiredFields.add(AggregatedServiceUsageRecord.DURATION);
|
|
||||||
expectedRequiredFields.add(AggregatedServiceUsageRecord.MAX_INVOCATION_TIME);
|
expectedRequiredFields.add(AggregatedServiceUsageRecord.MAX_INVOCATION_TIME);
|
||||||
expectedRequiredFields.add(AggregatedServiceUsageRecord.MIN_INVOCATION_TIME);
|
expectedRequiredFields.add(AggregatedServiceUsageRecord.MIN_INVOCATION_TIME);
|
||||||
|
|
||||||
|
expectedRequiredFields.addAll(AggregatedUsageRecordTest.getExpectedRequiredFields());
|
||||||
|
|
||||||
|
|
||||||
logger.debug("Expected Required Fields : {}", expectedRequiredFields);
|
logger.debug("Expected Required Fields : {}", expectedRequiredFields);
|
||||||
|
|
||||||
Set<String> gotRequiredFields = aggregatedServiceUsageRecord.getRequiredFields();
|
Set<String> gotRequiredFields = aggregatedServiceUsageRecord.getRequiredFields();
|
||||||
|
|
|
@ -3,7 +3,10 @@
|
||||||
*/
|
*/
|
||||||
package org.gcube.accounting.datamodel.aggregation;
|
package org.gcube.accounting.datamodel.aggregation;
|
||||||
|
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
import org.gcube.accounting.datamodel.usagerecords.StorageUsageRecord;
|
import org.gcube.accounting.datamodel.usagerecords.StorageUsageRecord;
|
||||||
|
import org.gcube.accounting.datamodel.usagerecords.StorageUsageRecordTest;
|
||||||
import org.gcube.documentstore.exception.InvalidValueException;
|
import org.gcube.documentstore.exception.InvalidValueException;
|
||||||
import org.gcube.documentstore.exception.NotAggregatableRecordsExceptions;
|
import org.gcube.documentstore.exception.NotAggregatableRecordsExceptions;
|
||||||
import org.gcube.testutility.ScopedTest;
|
import org.gcube.testutility.ScopedTest;
|
||||||
|
@ -21,6 +24,28 @@ public class AggregatedStorageUsageRecordTest extends ScopedTest {
|
||||||
|
|
||||||
private static Logger logger = LoggerFactory.getLogger(AggregatedStorageUsageRecordTest.class);
|
private static Logger logger = LoggerFactory.getLogger(AggregatedStorageUsageRecordTest.class);
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testRequiredFields() throws InvalidValueException {
|
||||||
|
StorageUsageRecord storageUsageRecord = TestUsageRecord.createTestStorageUsageRecord();
|
||||||
|
Assert.assertTrue(storageUsageRecord.getScope()==null);
|
||||||
|
storageUsageRecord.setScope(TestUsageRecord.TEST_SCOPE);
|
||||||
|
|
||||||
|
AggregatedStorageUsageRecord aggregatedStorageUsageRecord = new AggregatedStorageUsageRecord(storageUsageRecord);
|
||||||
|
|
||||||
|
Set<String> expectedRequiredFields = StorageUsageRecordTest.getExpectedRequiredFields();
|
||||||
|
expectedRequiredFields.addAll(AggregatedUsageRecordTest.getExpectedRequiredFields());
|
||||||
|
|
||||||
|
logger.debug("Expected Required Fields : {}", expectedRequiredFields);
|
||||||
|
|
||||||
|
Set<String> gotRequiredFields = aggregatedStorageUsageRecord.getRequiredFields();
|
||||||
|
|
||||||
|
logger.debug("Got Required Fields : {}", gotRequiredFields);
|
||||||
|
|
||||||
|
Assert.assertTrue(expectedRequiredFields.containsAll(gotRequiredFields));
|
||||||
|
Assert.assertTrue(gotRequiredFields.containsAll(expectedRequiredFields));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void secondAsNotAggregated() throws InvalidValueException, NotAggregatableRecordsExceptions {
|
public void secondAsNotAggregated() throws InvalidValueException, NotAggregatableRecordsExceptions {
|
||||||
StorageUsageRecord storageUsageRecord = TestUsageRecord.createTestStorageUsageRecord();
|
StorageUsageRecord storageUsageRecord = TestUsageRecord.createTestStorageUsageRecord();
|
||||||
|
|
|
@ -0,0 +1,24 @@
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
package org.gcube.accounting.datamodel.aggregation;
|
||||||
|
|
||||||
|
import java.util.HashSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
|
import org.gcube.accounting.datamodel.AggregatedUsageRecord;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author Luca Frosini (ISTI - CNR) http://www.lucafrosini.com/
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public class AggregatedUsageRecordTest {
|
||||||
|
public static Set<String> getExpectedRequiredFields(){
|
||||||
|
Set<String> expectedRequiredFields = new HashSet<String>();
|
||||||
|
expectedRequiredFields.add(AggregatedUsageRecord.AGGREGATED);
|
||||||
|
expectedRequiredFields.add(AggregatedUsageRecord.END_TIME);
|
||||||
|
expectedRequiredFields.add(AggregatedUsageRecord.START_TIME);
|
||||||
|
expectedRequiredFields.add(AggregatedUsageRecord.OPERATION_COUNT);
|
||||||
|
return expectedRequiredFields;
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue