101 lines
4.2 KiB
Java
101 lines
4.2 KiB
Java
/**
|
|
*
|
|
*/
|
|
package org.gcube.documentstore.records;
|
|
|
|
|
|
import java.net.URI;
|
|
|
|
import org.gcube.accounting.datamodel.UsageRecord.OperationResult;
|
|
import org.gcube.accounting.datamodel.aggregation.AggregatedServiceUsageRecord;
|
|
import org.gcube.accounting.datamodel.aggregation.AggregatedStorageUsageRecord;
|
|
import org.gcube.accounting.datamodel.basetypes.AbstractStorageUsageRecord.DataType;
|
|
import org.gcube.accounting.datamodel.basetypes.AbstractStorageUsageRecord.OperationType;
|
|
import org.gcube.accounting.datamodel.usagerecords.ServiceUsageRecord;
|
|
import org.junit.Assert;
|
|
import org.junit.Test;
|
|
import org.slf4j.Logger;
|
|
import org.slf4j.LoggerFactory;
|
|
|
|
/**
|
|
* @author Luca Frosini (ISTI - CNR)
|
|
*
|
|
*/
|
|
public class RecordUtilityTest {
|
|
|
|
private static Logger logger = LoggerFactory.getLogger(RecordUtilityTest.class);
|
|
|
|
@Test
|
|
public void testImportOldRecord() throws Exception {
|
|
String line = "{"
|
|
+ "resourceScope=/gcube/devsec, "
|
|
+ "scope=/gcube/devsec, "
|
|
+ "operationCount=1, "
|
|
+ "usageRecordType=StorageUsageRecord, "
|
|
+ "endTime=1448447153009, "
|
|
+ "consumerId=CSV, "
|
|
+ "startTime=1448447153009, "
|
|
+ "id=c7bab219-4024-4019-a8ad-ff5f342b439b, "
|
|
+ "dataVolume=68, "
|
|
+ "dataType=STORAGE, "
|
|
+ "resourceOwner=CSV, "
|
|
+ "operationResult=SUCCESS, "
|
|
+ "resourceURI=testprotocol://objectURI, "
|
|
+ "operationType=CREATE, "
|
|
+ "aggregated=true, "
|
|
+ "creationTime=1448447153096, "
|
|
+ "providerURI=data.d4science.org}";
|
|
|
|
logger.debug(line);
|
|
|
|
|
|
Record record = RecordUtility.getRecord(line);
|
|
Assert.assertTrue(record instanceof AggregatedStorageUsageRecord);
|
|
AggregatedStorageUsageRecord aggregatedStorageUsageRecord = (AggregatedStorageUsageRecord) record;
|
|
|
|
Assert.assertTrue(aggregatedStorageUsageRecord.getResourceScope().compareTo("/gcube/devsec")==0);
|
|
Assert.assertTrue(aggregatedStorageUsageRecord.getScope().compareTo("/gcube/devsec")==0);
|
|
Assert.assertTrue(aggregatedStorageUsageRecord.getOperationCount()==1);
|
|
//
|
|
Assert.assertTrue(aggregatedStorageUsageRecord.getRecordType().compareTo("StorageUsageRecord")==0);
|
|
Assert.assertTrue(aggregatedStorageUsageRecord.getEndTime().getTimeInMillis()==(new Long("1448447153009")));
|
|
Assert.assertTrue(aggregatedStorageUsageRecord.getConsumerId().compareTo("CSV")==0);
|
|
Assert.assertTrue(aggregatedStorageUsageRecord.getStartTime().getTimeInMillis()==(new Long("1448447153009")));
|
|
Assert.assertTrue(aggregatedStorageUsageRecord.getId().compareTo("c7bab219-4024-4019-a8ad-ff5f342b439b")==0);
|
|
Assert.assertTrue(aggregatedStorageUsageRecord.getDataVolume()==68);
|
|
Assert.assertTrue(aggregatedStorageUsageRecord.getDataType()==DataType.STORAGE);
|
|
Assert.assertTrue(aggregatedStorageUsageRecord.getResourceOwner().compareTo("CSV")==0);
|
|
Assert.assertTrue(aggregatedStorageUsageRecord.getOperationResult()==OperationResult.SUCCESS);
|
|
Assert.assertTrue(aggregatedStorageUsageRecord.getResourceURI().compareTo(new URI("testprotocol://objectURI"))==0);
|
|
Assert.assertTrue(aggregatedStorageUsageRecord.getOperationType()==OperationType.CREATE);
|
|
Assert.assertTrue((Boolean) aggregatedStorageUsageRecord.getResourceProperty(AggregatedStorageUsageRecord.AGGREGATED));
|
|
Assert.assertTrue(aggregatedStorageUsageRecord.getCreationTime().getTimeInMillis()==(new Long("1448447153096")));
|
|
Assert.assertTrue(aggregatedStorageUsageRecord.getProviderURI().compareTo(new URI("data.d4science.org"))==0);
|
|
|
|
|
|
logger.debug("{}", aggregatedStorageUsageRecord);
|
|
}
|
|
|
|
@Test
|
|
public void test() {
|
|
Assert.assertTrue(Record.class.isAssignableFrom(ServiceUsageRecord.class));
|
|
Assert.assertFalse(AggregatedRecord.class.isAssignableFrom(ServiceUsageRecord.class));
|
|
Assert.assertTrue(Record.class.isAssignableFrom(AggregatedServiceUsageRecord.class));
|
|
Assert.assertTrue(AggregatedRecord.class.isAssignableFrom(AggregatedServiceUsageRecord.class));
|
|
}
|
|
|
|
@Test
|
|
public void testNewReflection() {
|
|
RecordUtility.addRecordPackage(ServiceUsageRecord.class.getPackage());
|
|
logger.trace("{}", RecordUtility.recordClassesFound);
|
|
RecordUtility.addRecordPackage(AggregatedServiceUsageRecord.class.getPackage());
|
|
logger.trace("{}", RecordUtility.aggregatedRecordClassesFound);
|
|
logger.trace("{}", RecordUtility.recordAggregationMapping);
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|