forked from D-Net/dnet-hadoop
refactoring
This commit is contained in:
parent
55ea485783
commit
4c9bc4c3a5
|
@ -82,19 +82,21 @@ public class SparkAtomicActionUsageJob implements Serializable {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void prepareResultData(String dbname, SparkSession spark, String workingPath, String tableName, String resultAttributeName, String datasourceAttributeName) {
|
private static void prepareResultData(String dbname, SparkSession spark, String workingPath, String tableName,
|
||||||
|
String resultAttributeName, String datasourceAttributeName) {
|
||||||
spark
|
spark
|
||||||
.sql(
|
.sql(
|
||||||
String
|
String
|
||||||
.format(
|
.format(
|
||||||
"select %s as id, %s as datasourceId, sum(downloads) as downloads, sum(views) as views " +
|
"select %s as id, %s as datasourceId, sum(downloads) as downloads, sum(views) as views " +
|
||||||
"from %s.%s group by %s, %s",
|
"from %s.%s group by %s, %s",
|
||||||
resultAttributeName, datasourceAttributeName, dbname, tableName, resultAttributeName, datasourceAttributeName))
|
resultAttributeName, datasourceAttributeName, dbname, tableName, resultAttributeName,
|
||||||
.as(Encoders.bean(UsageStatsResultModel.class))
|
datasourceAttributeName))
|
||||||
.write()
|
.as(Encoders.bean(UsageStatsResultModel.class))
|
||||||
.mode(SaveMode.Overwrite)
|
.write()
|
||||||
.option("compression", "gzip")
|
.mode(SaveMode.Overwrite)
|
||||||
.json(workingPath);
|
.option("compression", "gzip")
|
||||||
|
.json(workingPath);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void prepareData(String dbname, SparkSession spark, String workingPath, String tableName,
|
private static void prepareData(String dbname, SparkSession spark, String workingPath, String tableName,
|
||||||
|
@ -131,30 +133,32 @@ public class SparkAtomicActionUsageJob implements Serializable {
|
||||||
.saveAsHadoopFile(outputPath, Text.class, Text.class, SequenceFileOutputFormat.class);
|
.saveAsHadoopFile(outputPath, Text.class, Text.class, SequenceFileOutputFormat.class);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static Measure newMeasureInstance(String id) {
|
public static Measure newMeasureInstance(String id) {
|
||||||
Measure m = new Measure();
|
Measure m = new Measure();
|
||||||
m.setId(id);
|
m.setId(id);
|
||||||
m.setUnit(new ArrayList<>());
|
m.setUnit(new ArrayList<>());
|
||||||
return m;
|
return m;
|
||||||
}
|
}
|
||||||
|
|
||||||
private static Dataset<Result> getFinalIndicatorsResult(SparkSession spark, String inputPath) {
|
private static Dataset<Result> getFinalIndicatorsResult(SparkSession spark, String inputPath) {
|
||||||
|
|
||||||
return readPath(spark, inputPath, UsageStatsResultModel.class)
|
return readPath(spark, inputPath, UsageStatsResultModel.class)
|
||||||
.groupByKey((MapFunction<UsageStatsResultModel, String>) usm -> usm.getId(), Encoders.STRING())
|
.groupByKey((MapFunction<UsageStatsResultModel, String>) usm -> usm.getId(), Encoders.STRING())
|
||||||
.mapGroups((MapGroupsFunction<String, UsageStatsResultModel, Result>) (k,it) -> {
|
.mapGroups((MapGroupsFunction<String, UsageStatsResultModel, Result>) (k, it) -> {
|
||||||
Result r = new Result();
|
Result r = new Result();
|
||||||
r.setId("50|" + k);
|
r.setId("50|" + k);
|
||||||
//id = download or view and unit = list of key value pairs
|
// id = download or view and unit = list of key value pairs
|
||||||
Measure download = newMeasureInstance("downloads");
|
Measure download = newMeasureInstance("downloads");
|
||||||
Measure view = newMeasureInstance("views");
|
Measure view = newMeasureInstance("views");
|
||||||
UsageStatsResultModel first = it.next();
|
UsageStatsResultModel first = it.next();
|
||||||
addCountForDatasource(download, first, view);
|
addCountForDatasource(download, first, view);
|
||||||
it.forEachRemaining(usm -> {
|
it.forEachRemaining(usm -> {
|
||||||
addCountForDatasource(download, usm, view);
|
addCountForDatasource(download, usm, view);
|
||||||
});
|
});
|
||||||
r.setMeasures(Arrays.asList(download, view));
|
r.setMeasures(Arrays.asList(download, view));
|
||||||
return r;
|
return r;
|
||||||
}, Encoders.bean(Result.class))
|
}, Encoders.bean(Result.class))
|
||||||
// .map((MapFunction<UsageStatsResultModel, Result>) usm -> {
|
// .map((MapFunction<UsageStatsResultModel, Result>) usm -> {
|
||||||
// Result r = new Result();
|
// Result r = new Result();
|
||||||
// r.setId("50|" + usm.getId());
|
// r.setId("50|" + usm.getId());
|
||||||
|
@ -166,20 +170,26 @@ public class SparkAtomicActionUsageJob implements Serializable {
|
||||||
|
|
||||||
private static void addCountForDatasource(Measure download, UsageStatsResultModel usm, Measure view) {
|
private static void addCountForDatasource(Measure download, UsageStatsResultModel usm, Measure view) {
|
||||||
DataInfo dataInfo = OafMapperUtils
|
DataInfo dataInfo = OafMapperUtils
|
||||||
.dataInfo(
|
.dataInfo(
|
||||||
false,
|
false,
|
||||||
UPDATE_DATA_INFO_TYPE,
|
UPDATE_DATA_INFO_TYPE,
|
||||||
true,
|
true,
|
||||||
false,
|
false,
|
||||||
OafMapperUtils
|
OafMapperUtils
|
||||||
.qualifier(
|
.qualifier(
|
||||||
UPDATE_MEASURE_USAGE_COUNTS_CLASS_ID,
|
UPDATE_MEASURE_USAGE_COUNTS_CLASS_ID,
|
||||||
UPDATE_CLASS_NAME,
|
UPDATE_CLASS_NAME,
|
||||||
ModelConstants.DNET_PROVENANCE_ACTIONS,
|
ModelConstants.DNET_PROVENANCE_ACTIONS,
|
||||||
ModelConstants.DNET_PROVENANCE_ACTIONS),
|
ModelConstants.DNET_PROVENANCE_ACTIONS),
|
||||||
"");
|
"");
|
||||||
download.getUnit().add(OafMapperUtils.newKeyValueInstance(usm.getDatasourceId(), String.valueOf(usm.getDownloads()), dataInfo));
|
download
|
||||||
view.getUnit().add(OafMapperUtils.newKeyValueInstance(usm.getDatasourceId(), String.valueOf(usm.getViews()), dataInfo));
|
.getUnit()
|
||||||
|
.add(
|
||||||
|
OafMapperUtils
|
||||||
|
.newKeyValueInstance(usm.getDatasourceId(), String.valueOf(usm.getDownloads()), dataInfo));
|
||||||
|
view
|
||||||
|
.getUnit()
|
||||||
|
.add(OafMapperUtils.newKeyValueInstance(usm.getDatasourceId(), String.valueOf(usm.getViews()), dataInfo));
|
||||||
}
|
}
|
||||||
|
|
||||||
private static Dataset<Project> getFinalIndicatorsProject(SparkSession spark, String inputPath) {
|
private static Dataset<Project> getFinalIndicatorsProject(SparkSession spark, String inputPath) {
|
||||||
|
|
|
@ -1,17 +1,18 @@
|
||||||
|
|
||||||
package eu.dnetlib.dhp.actionmanager.usagestats;
|
package eu.dnetlib.dhp.actionmanager.usagestats;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author miriam.baglioni
|
* @author miriam.baglioni
|
||||||
* @Date 30/06/23
|
* @Date 30/06/23
|
||||||
*/
|
*/
|
||||||
public class UsageStatsResultModel extends UsageStatsModel{
|
public class UsageStatsResultModel extends UsageStatsModel {
|
||||||
private String datasourceId ;
|
private String datasourceId;
|
||||||
|
|
||||||
public String getDatasourceId() {
|
public String getDatasourceId() {
|
||||||
return datasourceId;
|
return datasourceId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setDatasourceId(String datasourceId) {
|
public void setDatasourceId(String datasourceId) {
|
||||||
this.datasourceId = datasourceId;
|
this.datasourceId = datasourceId;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,7 +8,6 @@ import java.nio.file.Files;
|
||||||
import java.nio.file.Path;
|
import java.nio.file.Path;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
import eu.dnetlib.dhp.schema.oaf.Measure;
|
|
||||||
import org.apache.commons.io.FileUtils;
|
import org.apache.commons.io.FileUtils;
|
||||||
import org.apache.hadoop.io.Text;
|
import org.apache.hadoop.io.Text;
|
||||||
import org.apache.spark.SparkConf;
|
import org.apache.spark.SparkConf;
|
||||||
|
@ -25,6 +24,7 @@ import org.slf4j.LoggerFactory;
|
||||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||||
|
|
||||||
import eu.dnetlib.dhp.schema.action.AtomicAction;
|
import eu.dnetlib.dhp.schema.action.AtomicAction;
|
||||||
|
import eu.dnetlib.dhp.schema.oaf.Measure;
|
||||||
import eu.dnetlib.dhp.schema.oaf.OafEntity;
|
import eu.dnetlib.dhp.schema.oaf.OafEntity;
|
||||||
import eu.dnetlib.dhp.schema.oaf.Result;
|
import eu.dnetlib.dhp.schema.oaf.Result;
|
||||||
|
|
||||||
|
@ -144,7 +144,8 @@ public class SparkAtomicActionCountJobTest {
|
||||||
"Inferred by OpenAIRE",
|
"Inferred by OpenAIRE",
|
||||||
u.getDataInfo().getProvenanceaction().getClassname()))));
|
u.getDataInfo().getProvenanceaction().getClassname()))));
|
||||||
|
|
||||||
tmp.filter(aa -> ((OafEntity) aa.getPayload()).getId().startsWith("40|"))
|
tmp
|
||||||
|
.filter(aa -> ((OafEntity) aa.getPayload()).getId().startsWith("40|"))
|
||||||
.foreach(
|
.foreach(
|
||||||
r -> ((OafEntity) r.getPayload())
|
r -> ((OafEntity) r.getPayload())
|
||||||
.getMeasures()
|
.getMeasures()
|
||||||
|
@ -160,60 +161,82 @@ public class SparkAtomicActionCountJobTest {
|
||||||
u.getKey()))));
|
u.getKey()))));
|
||||||
|
|
||||||
Assertions
|
Assertions
|
||||||
.assertEquals(
|
.assertEquals(
|
||||||
1,
|
1,
|
||||||
tmp
|
tmp
|
||||||
.filter(
|
.filter(
|
||||||
r -> ((OafEntity) r.getPayload())
|
|
||||||
.getId()
|
|
||||||
.equals("50|dedup_wf_001::53575dc69e9ace947e02d47ecd54a7a6"))
|
|
||||||
.count());
|
|
||||||
|
|
||||||
OafEntity entity = (OafEntity) tmp.filter(aa -> ((OafEntity) aa.getPayload()).getId().equals("50|dedup_wf_001::53575dc69e9ace947e02d47ecd54a7a6")).first()
|
|
||||||
.getPayload();
|
|
||||||
|
|
||||||
entity
|
|
||||||
.getMeasures()
|
|
||||||
.stream()
|
|
||||||
.forEach(
|
|
||||||
m -> Assertions.assertEquals(3, m.getUnit().size() ));
|
|
||||||
|
|
||||||
Measure downloads = entity.getMeasures()
|
|
||||||
.stream()
|
|
||||||
.filter(m -> m.getId().equals("downloads"))
|
|
||||||
.findFirst()
|
|
||||||
.get();
|
|
||||||
|
|
||||||
|
|
||||||
Assertions.assertEquals(String.valueOf(0), downloads.getUnit().stream().filter(u -> u.getKey().equals("10|fake1")).findFirst().get().getValue());
|
|
||||||
Assertions.assertEquals(String.valueOf(0), downloads.getUnit().stream().filter(u -> u.getKey().equals("10|fake2")).findFirst().get().getValue());
|
|
||||||
Assertions.assertEquals(String.valueOf(1), downloads.getUnit().stream().filter(u -> u.getKey().equals("10|fake3")).findFirst().get().getValue());
|
|
||||||
|
|
||||||
Measure views = entity.getMeasures()
|
|
||||||
.stream()
|
|
||||||
.filter(m -> m.getId().equals("views"))
|
|
||||||
.findFirst()
|
|
||||||
.get();
|
|
||||||
|
|
||||||
Assertions.assertEquals(String.valueOf(5), views.getUnit().stream().filter(u -> u.getKey().equals("10|fake1")).findFirst().get().getValue());
|
|
||||||
Assertions.assertEquals(String.valueOf(1), views.getUnit().stream().filter(u -> u.getKey().equals("10|fake2")).findFirst().get().getValue());
|
|
||||||
Assertions.assertEquals(String.valueOf(3), views.getUnit().stream().filter(u -> u.getKey().equals("10|fake3")).findFirst().get().getValue());
|
|
||||||
|
|
||||||
tmp.filter(aa -> ((OafEntity) aa.getPayload()).getId().startsWith("10|"))
|
|
||||||
.foreach(
|
|
||||||
r -> ((OafEntity) r.getPayload())
|
r -> ((OafEntity) r.getPayload())
|
||||||
.getMeasures()
|
.getId()
|
||||||
.stream()
|
.equals("50|dedup_wf_001::53575dc69e9ace947e02d47ecd54a7a6"))
|
||||||
.forEach(
|
.count());
|
||||||
m -> m
|
|
||||||
.getUnit()
|
|
||||||
.stream()
|
|
||||||
.forEach(
|
|
||||||
u -> Assertions
|
|
||||||
.assertEquals(
|
|
||||||
"count",
|
|
||||||
u.getKey()))));
|
|
||||||
|
|
||||||
|
OafEntity entity = (OafEntity) tmp
|
||||||
|
.filter(
|
||||||
|
aa -> ((OafEntity) aa.getPayload()).getId().equals("50|dedup_wf_001::53575dc69e9ace947e02d47ecd54a7a6"))
|
||||||
|
.first()
|
||||||
|
.getPayload();
|
||||||
|
|
||||||
|
entity
|
||||||
|
.getMeasures()
|
||||||
|
.stream()
|
||||||
|
.forEach(
|
||||||
|
m -> Assertions.assertEquals(3, m.getUnit().size()));
|
||||||
|
|
||||||
|
Measure downloads = entity
|
||||||
|
.getMeasures()
|
||||||
|
.stream()
|
||||||
|
.filter(m -> m.getId().equals("downloads"))
|
||||||
|
.findFirst()
|
||||||
|
.get();
|
||||||
|
|
||||||
|
Assertions
|
||||||
|
.assertEquals(
|
||||||
|
String.valueOf(0),
|
||||||
|
downloads.getUnit().stream().filter(u -> u.getKey().equals("10|fake1")).findFirst().get().getValue());
|
||||||
|
Assertions
|
||||||
|
.assertEquals(
|
||||||
|
String.valueOf(0),
|
||||||
|
downloads.getUnit().stream().filter(u -> u.getKey().equals("10|fake2")).findFirst().get().getValue());
|
||||||
|
Assertions
|
||||||
|
.assertEquals(
|
||||||
|
String.valueOf(1),
|
||||||
|
downloads.getUnit().stream().filter(u -> u.getKey().equals("10|fake3")).findFirst().get().getValue());
|
||||||
|
|
||||||
|
Measure views = entity
|
||||||
|
.getMeasures()
|
||||||
|
.stream()
|
||||||
|
.filter(m -> m.getId().equals("views"))
|
||||||
|
.findFirst()
|
||||||
|
.get();
|
||||||
|
|
||||||
|
Assertions
|
||||||
|
.assertEquals(
|
||||||
|
String.valueOf(5),
|
||||||
|
views.getUnit().stream().filter(u -> u.getKey().equals("10|fake1")).findFirst().get().getValue());
|
||||||
|
Assertions
|
||||||
|
.assertEquals(
|
||||||
|
String.valueOf(1),
|
||||||
|
views.getUnit().stream().filter(u -> u.getKey().equals("10|fake2")).findFirst().get().getValue());
|
||||||
|
Assertions
|
||||||
|
.assertEquals(
|
||||||
|
String.valueOf(3),
|
||||||
|
views.getUnit().stream().filter(u -> u.getKey().equals("10|fake3")).findFirst().get().getValue());
|
||||||
|
|
||||||
|
tmp
|
||||||
|
.filter(aa -> ((OafEntity) aa.getPayload()).getId().startsWith("10|"))
|
||||||
|
.foreach(
|
||||||
|
r -> ((OafEntity) r.getPayload())
|
||||||
|
.getMeasures()
|
||||||
|
.stream()
|
||||||
|
.forEach(
|
||||||
|
m -> m
|
||||||
|
.getUnit()
|
||||||
|
.stream()
|
||||||
|
.forEach(
|
||||||
|
u -> Assertions
|
||||||
|
.assertEquals(
|
||||||
|
"count",
|
||||||
|
u.getKey()))));
|
||||||
|
|
||||||
Assertions
|
Assertions
|
||||||
.assertEquals(
|
.assertEquals(
|
||||||
|
@ -413,19 +436,20 @@ public class SparkAtomicActionCountJobTest {
|
||||||
.get(0)
|
.get(0)
|
||||||
.getValue());
|
.getValue());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void testMatch() {
|
void testMatch() {
|
||||||
String usageScoresPath = getClass()
|
String usageScoresPath = getClass()
|
||||||
.getResource("/eu/dnetlib/dhp/actionmanager/usagestats/test1")
|
.getResource("/eu/dnetlib/dhp/actionmanager/usagestats/test1")
|
||||||
.getPath();
|
.getPath();
|
||||||
|
|
||||||
SparkAtomicActionUsageJob.writeActionSet(spark, usageScoresPath, workingDir.toString() + "/actionSet");
|
SparkAtomicActionUsageJob.writeActionSet(spark, usageScoresPath, workingDir.toString() + "/actionSet");
|
||||||
|
|
||||||
final JavaSparkContext sc = new JavaSparkContext(spark.sparkContext());
|
final JavaSparkContext sc = new JavaSparkContext(spark.sparkContext());
|
||||||
|
|
||||||
JavaRDD<AtomicAction> tmp = sc
|
JavaRDD<AtomicAction> tmp = sc
|
||||||
.sequenceFile(workingDir.toString() + "/actionSet", Text.class, Text.class)
|
.sequenceFile(workingDir.toString() + "/actionSet", Text.class, Text.class)
|
||||||
.map(usm -> OBJECT_MAPPER.readValue(usm._2.getBytes(), AtomicAction.class));
|
.map(usm -> OBJECT_MAPPER.readValue(usm._2.getBytes(), AtomicAction.class));
|
||||||
// .map(aa -> (Result) aa.getPayload());
|
// .map(aa -> (Result) aa.getPayload());
|
||||||
|
|
||||||
Assertions.assertEquals(9, tmp.filter(aa -> ((OafEntity) aa.getPayload()).getId().startsWith("50|")).count());
|
Assertions.assertEquals(9, tmp.filter(aa -> ((OafEntity) aa.getPayload()).getId().startsWith("50|")).count());
|
||||||
|
@ -434,412 +458,415 @@ public class SparkAtomicActionCountJobTest {
|
||||||
|
|
||||||
tmp.foreach(r -> Assertions.assertEquals(2, ((OafEntity) r.getPayload()).getMeasures().size()));
|
tmp.foreach(r -> Assertions.assertEquals(2, ((OafEntity) r.getPayload()).getMeasures().size()));
|
||||||
tmp
|
tmp
|
||||||
.foreach(
|
.foreach(
|
||||||
r -> ((OafEntity) r.getPayload())
|
r -> ((OafEntity) r.getPayload())
|
||||||
.getMeasures()
|
.getMeasures()
|
||||||
.stream()
|
.stream()
|
||||||
.forEach(
|
.forEach(
|
||||||
m -> m
|
m -> m
|
||||||
.getUnit()
|
.getUnit()
|
||||||
.stream()
|
.stream()
|
||||||
.forEach(u -> Assertions.assertFalse(u.getDataInfo().getDeletedbyinference()))));
|
.forEach(u -> Assertions.assertFalse(u.getDataInfo().getDeletedbyinference()))));
|
||||||
tmp
|
tmp
|
||||||
.foreach(
|
.foreach(
|
||||||
r -> ((OafEntity) r.getPayload())
|
r -> ((OafEntity) r.getPayload())
|
||||||
.getMeasures()
|
.getMeasures()
|
||||||
.stream()
|
.stream()
|
||||||
.forEach(
|
.forEach(
|
||||||
m -> m.getUnit().stream().forEach(u -> Assertions.assertTrue(u.getDataInfo().getInferred()))));
|
m -> m.getUnit().stream().forEach(u -> Assertions.assertTrue(u.getDataInfo().getInferred()))));
|
||||||
tmp
|
tmp
|
||||||
.foreach(
|
.foreach(
|
||||||
r -> ((OafEntity) r.getPayload())
|
r -> ((OafEntity) r.getPayload())
|
||||||
.getMeasures()
|
.getMeasures()
|
||||||
.stream()
|
.stream()
|
||||||
.forEach(
|
.forEach(
|
||||||
m -> m
|
m -> m
|
||||||
.getUnit()
|
.getUnit()
|
||||||
.stream()
|
.stream()
|
||||||
.forEach(u -> Assertions.assertFalse(u.getDataInfo().getInvisible()))));
|
.forEach(u -> Assertions.assertFalse(u.getDataInfo().getInvisible()))));
|
||||||
|
|
||||||
tmp
|
tmp
|
||||||
.foreach(
|
.foreach(
|
||||||
r -> ((OafEntity) r.getPayload())
|
r -> ((OafEntity) r.getPayload())
|
||||||
.getMeasures()
|
.getMeasures()
|
||||||
.stream()
|
.stream()
|
||||||
.forEach(
|
.forEach(
|
||||||
m -> m
|
m -> m
|
||||||
.getUnit()
|
.getUnit()
|
||||||
.stream()
|
.stream()
|
||||||
.forEach(
|
.forEach(
|
||||||
u -> Assertions
|
u -> Assertions
|
||||||
.assertEquals(
|
.assertEquals(
|
||||||
"measure:usage_counts",
|
"measure:usage_counts",
|
||||||
u.getDataInfo().getProvenanceaction().getClassid()))));
|
u.getDataInfo().getProvenanceaction().getClassid()))));
|
||||||
tmp
|
tmp
|
||||||
.foreach(
|
.foreach(
|
||||||
|
r -> ((OafEntity) r.getPayload())
|
||||||
|
.getMeasures()
|
||||||
|
.stream()
|
||||||
|
.forEach(
|
||||||
|
m -> m
|
||||||
|
.getUnit()
|
||||||
|
.stream()
|
||||||
|
.forEach(
|
||||||
|
u -> Assertions
|
||||||
|
.assertEquals(
|
||||||
|
"Inferred by OpenAIRE",
|
||||||
|
u.getDataInfo().getProvenanceaction().getClassname()))));
|
||||||
|
|
||||||
|
tmp
|
||||||
|
.filter(aa -> ((OafEntity) aa.getPayload()).getId().startsWith("40|"))
|
||||||
|
.foreach(
|
||||||
|
r -> ((OafEntity) r.getPayload())
|
||||||
|
.getMeasures()
|
||||||
|
.stream()
|
||||||
|
.forEach(
|
||||||
|
m -> m
|
||||||
|
.getUnit()
|
||||||
|
.stream()
|
||||||
|
.forEach(
|
||||||
|
u -> Assertions
|
||||||
|
.assertEquals(
|
||||||
|
"count",
|
||||||
|
u.getKey()))));
|
||||||
|
|
||||||
|
tmp
|
||||||
|
.filter(aa -> ((OafEntity) aa.getPayload()).getId().startsWith("50|"))
|
||||||
|
.foreach(
|
||||||
|
r -> ((OafEntity) r.getPayload())
|
||||||
|
.getMeasures()
|
||||||
|
.stream()
|
||||||
|
.forEach(
|
||||||
|
m -> m
|
||||||
|
.getUnit()
|
||||||
|
.stream()
|
||||||
|
.forEach(
|
||||||
|
u -> Assertions
|
||||||
|
.assertEquals(
|
||||||
|
"10|fake1",
|
||||||
|
u.getKey()))));
|
||||||
|
|
||||||
|
tmp
|
||||||
|
.filter(aa -> ((OafEntity) aa.getPayload()).getId().startsWith("10|"))
|
||||||
|
.foreach(
|
||||||
|
r -> ((OafEntity) r.getPayload())
|
||||||
|
.getMeasures()
|
||||||
|
.stream()
|
||||||
|
.forEach(
|
||||||
|
m -> m
|
||||||
|
.getUnit()
|
||||||
|
.stream()
|
||||||
|
.forEach(
|
||||||
|
u -> Assertions
|
||||||
|
.assertEquals(
|
||||||
|
"count",
|
||||||
|
u.getKey()))));
|
||||||
|
|
||||||
|
Assertions
|
||||||
|
.assertEquals(
|
||||||
|
1,
|
||||||
|
tmp
|
||||||
|
.filter(
|
||||||
r -> ((OafEntity) r.getPayload())
|
r -> ((OafEntity) r.getPayload())
|
||||||
.getMeasures()
|
.getId()
|
||||||
.stream()
|
.equals("50|dedup_wf_001::53575dc69e9ace947e02d47ecd54a7a6"))
|
||||||
.forEach(
|
.count());
|
||||||
m -> m
|
|
||||||
.getUnit()
|
|
||||||
.stream()
|
|
||||||
.forEach(
|
|
||||||
u -> Assertions
|
|
||||||
.assertEquals(
|
|
||||||
"Inferred by OpenAIRE",
|
|
||||||
u.getDataInfo().getProvenanceaction().getClassname()))));
|
|
||||||
|
|
||||||
tmp.filter(aa -> ((OafEntity) aa.getPayload()).getId().startsWith("40|"))
|
|
||||||
.foreach(
|
|
||||||
r -> ((OafEntity) r.getPayload())
|
|
||||||
.getMeasures()
|
|
||||||
.stream()
|
|
||||||
.forEach(
|
|
||||||
m -> m
|
|
||||||
.getUnit()
|
|
||||||
.stream()
|
|
||||||
.forEach(
|
|
||||||
u -> Assertions
|
|
||||||
.assertEquals(
|
|
||||||
"count",
|
|
||||||
u.getKey()))));
|
|
||||||
|
|
||||||
tmp.filter(aa -> ((OafEntity) aa.getPayload()).getId().startsWith("50|"))
|
|
||||||
.foreach(
|
|
||||||
r -> ((OafEntity) r.getPayload())
|
|
||||||
.getMeasures()
|
|
||||||
.stream()
|
|
||||||
.forEach(
|
|
||||||
m -> m
|
|
||||||
.getUnit()
|
|
||||||
.stream()
|
|
||||||
.forEach(
|
|
||||||
u -> Assertions
|
|
||||||
.assertEquals(
|
|
||||||
"10|fake1",
|
|
||||||
u.getKey()))));
|
|
||||||
|
|
||||||
tmp.filter(aa -> ((OafEntity) aa.getPayload()).getId().startsWith("10|"))
|
|
||||||
.foreach(
|
|
||||||
r -> ((OafEntity) r.getPayload())
|
|
||||||
.getMeasures()
|
|
||||||
.stream()
|
|
||||||
.forEach(
|
|
||||||
m -> m
|
|
||||||
.getUnit()
|
|
||||||
.stream()
|
|
||||||
.forEach(
|
|
||||||
u -> Assertions
|
|
||||||
.assertEquals(
|
|
||||||
"count",
|
|
||||||
u.getKey()))));
|
|
||||||
|
|
||||||
Assertions
|
Assertions
|
||||||
.assertEquals(
|
.assertEquals(
|
||||||
1,
|
"0",
|
||||||
tmp
|
tmp
|
||||||
.filter(
|
.map(r -> ((OafEntity) r.getPayload()))
|
||||||
r -> ((OafEntity) r.getPayload())
|
.filter(r -> r.getId().equals("50|dedup_wf_001::53575dc69e9ace947e02d47ecd54a7a6"))
|
||||||
.getId()
|
.collect()
|
||||||
.equals("50|dedup_wf_001::53575dc69e9ace947e02d47ecd54a7a6"))
|
.get(0)
|
||||||
.count());
|
.getMeasures()
|
||||||
|
.stream()
|
||||||
|
.filter(m -> m.getId().equals("downloads"))
|
||||||
|
.collect(Collectors.toList())
|
||||||
|
.get(0)
|
||||||
|
.getUnit()
|
||||||
|
.get(0)
|
||||||
|
.getValue());
|
||||||
|
Assertions
|
||||||
|
.assertEquals(
|
||||||
|
"5",
|
||||||
|
tmp
|
||||||
|
.map(r -> ((OafEntity) r.getPayload()))
|
||||||
|
.filter(r -> r.getId().equals("50|dedup_wf_001::53575dc69e9ace947e02d47ecd54a7a6"))
|
||||||
|
.collect()
|
||||||
|
.get(0)
|
||||||
|
.getMeasures()
|
||||||
|
.stream()
|
||||||
|
.filter(m -> m.getId().equals("views"))
|
||||||
|
.collect(Collectors.toList())
|
||||||
|
.get(0)
|
||||||
|
.getUnit()
|
||||||
|
.get(0)
|
||||||
|
.getValue());
|
||||||
|
|
||||||
Assertions
|
Assertions
|
||||||
.assertEquals(
|
.assertEquals(
|
||||||
"0",
|
"0",
|
||||||
tmp
|
tmp
|
||||||
.map(r -> ((OafEntity) r.getPayload()))
|
.map(r -> ((OafEntity) r.getPayload()))
|
||||||
.filter(r -> r.getId().equals("50|dedup_wf_001::53575dc69e9ace947e02d47ecd54a7a6"))
|
.filter(r -> r.getId().equals("50|doi_________::17eda2ff77407538fbe5d3d719b9d1c0"))
|
||||||
.collect()
|
.collect()
|
||||||
.get(0)
|
.get(0)
|
||||||
.getMeasures()
|
.getMeasures()
|
||||||
.stream()
|
.stream()
|
||||||
.filter(m -> m.getId().equals("downloads"))
|
.filter(m -> m.getId().equals("downloads"))
|
||||||
.collect(Collectors.toList())
|
.collect(Collectors.toList())
|
||||||
.get(0)
|
.get(0)
|
||||||
.getUnit()
|
.getUnit()
|
||||||
.get(0)
|
.get(0)
|
||||||
.getValue());
|
.getValue());
|
||||||
Assertions
|
Assertions
|
||||||
.assertEquals(
|
.assertEquals(
|
||||||
"5",
|
"1",
|
||||||
tmp
|
tmp
|
||||||
.map(r -> ((OafEntity) r.getPayload()))
|
.map(r -> ((OafEntity) r.getPayload()))
|
||||||
.filter(r -> r.getId().equals("50|dedup_wf_001::53575dc69e9ace947e02d47ecd54a7a6"))
|
.filter(r -> r.getId().equals("50|doi_________::17eda2ff77407538fbe5d3d719b9d1c0"))
|
||||||
.collect()
|
.collect()
|
||||||
.get(0)
|
.get(0)
|
||||||
.getMeasures()
|
.getMeasures()
|
||||||
.stream()
|
.stream()
|
||||||
.filter(m -> m.getId().equals("views"))
|
.filter(m -> m.getId().equals("views"))
|
||||||
.collect(Collectors.toList())
|
.collect(Collectors.toList())
|
||||||
.get(0)
|
.get(0)
|
||||||
.getUnit()
|
.getUnit()
|
||||||
.get(0)
|
.get(0)
|
||||||
.getValue());
|
.getValue());
|
||||||
|
|
||||||
Assertions
|
Assertions
|
||||||
.assertEquals(
|
.assertEquals(
|
||||||
"0",
|
"2",
|
||||||
tmp
|
tmp
|
||||||
.map(r -> ((OafEntity) r.getPayload()))
|
.map(r -> ((OafEntity) r.getPayload()))
|
||||||
.filter(r -> r.getId().equals("50|doi_________::17eda2ff77407538fbe5d3d719b9d1c0"))
|
.filter(r -> r.getId().equals("50|doi_________::3085e4c6e051378ca6157fe7f0430c1f"))
|
||||||
.collect()
|
.collect()
|
||||||
.get(0)
|
.get(0)
|
||||||
.getMeasures()
|
.getMeasures()
|
||||||
.stream()
|
.stream()
|
||||||
.filter(m -> m.getId().equals("downloads"))
|
.filter(m -> m.getId().equals("downloads"))
|
||||||
.collect(Collectors.toList())
|
.collect(Collectors.toList())
|
||||||
.get(0)
|
.get(0)
|
||||||
.getUnit()
|
.getUnit()
|
||||||
.get(0)
|
.get(0)
|
||||||
.getValue());
|
.getValue());
|
||||||
Assertions
|
Assertions
|
||||||
.assertEquals(
|
.assertEquals(
|
||||||
"1",
|
"6",
|
||||||
tmp
|
tmp
|
||||||
.map(r -> ((OafEntity) r.getPayload()))
|
.map(r -> ((OafEntity) r.getPayload()))
|
||||||
.filter(r -> r.getId().equals("50|doi_________::17eda2ff77407538fbe5d3d719b9d1c0"))
|
.filter(r -> r.getId().equals("50|doi_________::3085e4c6e051378ca6157fe7f0430c1f"))
|
||||||
.collect()
|
.collect()
|
||||||
.get(0)
|
.get(0)
|
||||||
.getMeasures()
|
.getMeasures()
|
||||||
.stream()
|
.stream()
|
||||||
.filter(m -> m.getId().equals("views"))
|
.filter(m -> m.getId().equals("views"))
|
||||||
.collect(Collectors.toList())
|
.collect(Collectors.toList())
|
||||||
.get(0)
|
.get(0)
|
||||||
.getUnit()
|
.getUnit()
|
||||||
.get(0)
|
.get(0)
|
||||||
.getValue());
|
.getValue());
|
||||||
|
|
||||||
Assertions
|
Assertions
|
||||||
.assertEquals(
|
.assertEquals(
|
||||||
"2",
|
"0",
|
||||||
tmp
|
tmp
|
||||||
.map(r -> ((OafEntity) r.getPayload()))
|
.map(r -> ((OafEntity) r.getPayload()))
|
||||||
.filter(r -> r.getId().equals("50|doi_________::3085e4c6e051378ca6157fe7f0430c1f"))
|
.filter(r -> r.getId().equals("40|f1__________::53575dc69e9ace947e02d47ecd54a7a6"))
|
||||||
.collect()
|
.collect()
|
||||||
.get(0)
|
.get(0)
|
||||||
.getMeasures()
|
.getMeasures()
|
||||||
.stream()
|
.stream()
|
||||||
.filter(m -> m.getId().equals("downloads"))
|
.filter(m -> m.getId().equals("downloads"))
|
||||||
.collect(Collectors.toList())
|
.collect(Collectors.toList())
|
||||||
.get(0)
|
.get(0)
|
||||||
.getUnit()
|
.getUnit()
|
||||||
.get(0)
|
.get(0)
|
||||||
.getValue());
|
.getValue());
|
||||||
Assertions
|
Assertions
|
||||||
.assertEquals(
|
.assertEquals(
|
||||||
"6",
|
"5",
|
||||||
tmp
|
tmp
|
||||||
.map(r -> ((OafEntity) r.getPayload()))
|
.map(r -> ((OafEntity) r.getPayload()))
|
||||||
.filter(r -> r.getId().equals("50|doi_________::3085e4c6e051378ca6157fe7f0430c1f"))
|
.filter(r -> r.getId().equals("40|f1__________::53575dc69e9ace947e02d47ecd54a7a6"))
|
||||||
.collect()
|
.collect()
|
||||||
.get(0)
|
.get(0)
|
||||||
.getMeasures()
|
.getMeasures()
|
||||||
.stream()
|
.stream()
|
||||||
.filter(m -> m.getId().equals("views"))
|
.filter(m -> m.getId().equals("views"))
|
||||||
.collect(Collectors.toList())
|
.collect(Collectors.toList())
|
||||||
.get(0)
|
.get(0)
|
||||||
.getUnit()
|
.getUnit()
|
||||||
.get(0)
|
.get(0)
|
||||||
.getValue());
|
.getValue());
|
||||||
|
|
||||||
Assertions
|
Assertions
|
||||||
.assertEquals(
|
.assertEquals(
|
||||||
"0",
|
"0",
|
||||||
tmp
|
tmp
|
||||||
.map(r -> ((OafEntity) r.getPayload()))
|
.map(r -> ((OafEntity) r.getPayload()))
|
||||||
.filter(r -> r.getId().equals("40|f1__________::53575dc69e9ace947e02d47ecd54a7a6"))
|
.filter(r -> r.getId().equals("40|f11_________::17eda2ff77407538fbe5d3d719b9d1c0"))
|
||||||
.collect()
|
.collect()
|
||||||
.get(0)
|
.get(0)
|
||||||
.getMeasures()
|
.getMeasures()
|
||||||
.stream()
|
.stream()
|
||||||
.filter(m -> m.getId().equals("downloads"))
|
.filter(m -> m.getId().equals("downloads"))
|
||||||
.collect(Collectors.toList())
|
.collect(Collectors.toList())
|
||||||
.get(0)
|
.get(0)
|
||||||
.getUnit()
|
.getUnit()
|
||||||
.get(0)
|
.get(0)
|
||||||
.getValue());
|
.getValue());
|
||||||
Assertions
|
Assertions
|
||||||
.assertEquals(
|
.assertEquals(
|
||||||
"5",
|
"1",
|
||||||
tmp
|
tmp
|
||||||
.map(r -> ((OafEntity) r.getPayload()))
|
.map(r -> ((OafEntity) r.getPayload()))
|
||||||
.filter(r -> r.getId().equals("40|f1__________::53575dc69e9ace947e02d47ecd54a7a6"))
|
.filter(r -> r.getId().equals("40|f11_________::17eda2ff77407538fbe5d3d719b9d1c0"))
|
||||||
.collect()
|
.collect()
|
||||||
.get(0)
|
.get(0)
|
||||||
.getMeasures()
|
.getMeasures()
|
||||||
.stream()
|
.stream()
|
||||||
.filter(m -> m.getId().equals("views"))
|
.filter(m -> m.getId().equals("views"))
|
||||||
.collect(Collectors.toList())
|
.collect(Collectors.toList())
|
||||||
.get(0)
|
.get(0)
|
||||||
.getUnit()
|
.getUnit()
|
||||||
.get(0)
|
.get(0)
|
||||||
.getValue());
|
.getValue());
|
||||||
|
|
||||||
Assertions
|
Assertions
|
||||||
.assertEquals(
|
.assertEquals(
|
||||||
"0",
|
"2",
|
||||||
tmp
|
tmp
|
||||||
.map(r -> ((OafEntity) r.getPayload()))
|
.map(r -> ((OafEntity) r.getPayload()))
|
||||||
.filter(r -> r.getId().equals("40|f11_________::17eda2ff77407538fbe5d3d719b9d1c0"))
|
.filter(r -> r.getId().equals("40|f12_________::3085e4c6e051378ca6157fe7f0430c1f"))
|
||||||
.collect()
|
.collect()
|
||||||
.get(0)
|
.get(0)
|
||||||
.getMeasures()
|
.getMeasures()
|
||||||
.stream()
|
.stream()
|
||||||
.filter(m -> m.getId().equals("downloads"))
|
.filter(m -> m.getId().equals("downloads"))
|
||||||
.collect(Collectors.toList())
|
.collect(Collectors.toList())
|
||||||
.get(0)
|
.get(0)
|
||||||
.getUnit()
|
.getUnit()
|
||||||
.get(0)
|
.get(0)
|
||||||
.getValue());
|
.getValue());
|
||||||
Assertions
|
Assertions
|
||||||
.assertEquals(
|
.assertEquals(
|
||||||
"1",
|
"6",
|
||||||
tmp
|
tmp
|
||||||
.map(r -> ((OafEntity) r.getPayload()))
|
.map(r -> ((OafEntity) r.getPayload()))
|
||||||
.filter(r -> r.getId().equals("40|f11_________::17eda2ff77407538fbe5d3d719b9d1c0"))
|
.filter(r -> r.getId().equals("40|f12_________::3085e4c6e051378ca6157fe7f0430c1f"))
|
||||||
.collect()
|
.collect()
|
||||||
.get(0)
|
.get(0)
|
||||||
.getMeasures()
|
.getMeasures()
|
||||||
.stream()
|
.stream()
|
||||||
.filter(m -> m.getId().equals("views"))
|
.filter(m -> m.getId().equals("views"))
|
||||||
.collect(Collectors.toList())
|
.collect(Collectors.toList())
|
||||||
.get(0)
|
.get(0)
|
||||||
.getUnit()
|
.getUnit()
|
||||||
.get(0)
|
.get(0)
|
||||||
.getValue());
|
.getValue());
|
||||||
|
|
||||||
Assertions
|
Assertions
|
||||||
.assertEquals(
|
.assertEquals(
|
||||||
"2",
|
"0",
|
||||||
tmp
|
tmp
|
||||||
.map(r -> ((OafEntity) r.getPayload()))
|
.map(r -> ((OafEntity) r.getPayload()))
|
||||||
.filter(r -> r.getId().equals("40|f12_________::3085e4c6e051378ca6157fe7f0430c1f"))
|
.filter(r -> r.getId().equals("10|d1__________::53575dc69e9ace947e02d47ecd54a7a6"))
|
||||||
.collect()
|
.collect()
|
||||||
.get(0)
|
.get(0)
|
||||||
.getMeasures()
|
.getMeasures()
|
||||||
.stream()
|
.stream()
|
||||||
.filter(m -> m.getId().equals("downloads"))
|
.filter(m -> m.getId().equals("downloads"))
|
||||||
.collect(Collectors.toList())
|
.collect(Collectors.toList())
|
||||||
.get(0)
|
.get(0)
|
||||||
.getUnit()
|
.getUnit()
|
||||||
.get(0)
|
.get(0)
|
||||||
.getValue());
|
.getValue());
|
||||||
Assertions
|
Assertions
|
||||||
.assertEquals(
|
.assertEquals(
|
||||||
"6",
|
"5",
|
||||||
tmp
|
tmp
|
||||||
.map(r -> ((OafEntity) r.getPayload()))
|
.map(r -> ((OafEntity) r.getPayload()))
|
||||||
.filter(r -> r.getId().equals("40|f12_________::3085e4c6e051378ca6157fe7f0430c1f"))
|
.filter(r -> r.getId().equals("10|d1__________::53575dc69e9ace947e02d47ecd54a7a6"))
|
||||||
.collect()
|
.collect()
|
||||||
.get(0)
|
.get(0)
|
||||||
.getMeasures()
|
.getMeasures()
|
||||||
.stream()
|
.stream()
|
||||||
.filter(m -> m.getId().equals("views"))
|
.filter(m -> m.getId().equals("views"))
|
||||||
.collect(Collectors.toList())
|
.collect(Collectors.toList())
|
||||||
.get(0)
|
.get(0)
|
||||||
.getUnit()
|
.getUnit()
|
||||||
.get(0)
|
.get(0)
|
||||||
.getValue());
|
.getValue());
|
||||||
|
|
||||||
Assertions
|
Assertions
|
||||||
.assertEquals(
|
.assertEquals(
|
||||||
"0",
|
"0",
|
||||||
tmp
|
tmp
|
||||||
.map(r -> ((OafEntity) r.getPayload()))
|
.map(r -> ((OafEntity) r.getPayload()))
|
||||||
.filter(r -> r.getId().equals("10|d1__________::53575dc69e9ace947e02d47ecd54a7a6"))
|
.filter(r -> r.getId().equals("10|d11_________::17eda2ff77407538fbe5d3d719b9d1c0"))
|
||||||
.collect()
|
.collect()
|
||||||
.get(0)
|
.get(0)
|
||||||
.getMeasures()
|
.getMeasures()
|
||||||
.stream()
|
.stream()
|
||||||
.filter(m -> m.getId().equals("downloads"))
|
.filter(m -> m.getId().equals("downloads"))
|
||||||
.collect(Collectors.toList())
|
.collect(Collectors.toList())
|
||||||
.get(0)
|
.get(0)
|
||||||
.getUnit()
|
.getUnit()
|
||||||
.get(0)
|
.get(0)
|
||||||
.getValue());
|
.getValue());
|
||||||
Assertions
|
Assertions
|
||||||
.assertEquals(
|
.assertEquals(
|
||||||
"5",
|
"1",
|
||||||
tmp
|
tmp
|
||||||
.map(r -> ((OafEntity) r.getPayload()))
|
.map(r -> ((OafEntity) r.getPayload()))
|
||||||
.filter(r -> r.getId().equals("10|d1__________::53575dc69e9ace947e02d47ecd54a7a6"))
|
.filter(r -> r.getId().equals("10|d11_________::17eda2ff77407538fbe5d3d719b9d1c0"))
|
||||||
.collect()
|
.collect()
|
||||||
.get(0)
|
.get(0)
|
||||||
.getMeasures()
|
.getMeasures()
|
||||||
.stream()
|
.stream()
|
||||||
.filter(m -> m.getId().equals("views"))
|
.filter(m -> m.getId().equals("views"))
|
||||||
.collect(Collectors.toList())
|
.collect(Collectors.toList())
|
||||||
.get(0)
|
.get(0)
|
||||||
.getUnit()
|
.getUnit()
|
||||||
.get(0)
|
.get(0)
|
||||||
.getValue());
|
.getValue());
|
||||||
|
|
||||||
Assertions
|
Assertions
|
||||||
.assertEquals(
|
.assertEquals(
|
||||||
"0",
|
"2",
|
||||||
tmp
|
tmp
|
||||||
.map(r -> ((OafEntity) r.getPayload()))
|
.map(r -> ((OafEntity) r.getPayload()))
|
||||||
.filter(r -> r.getId().equals("10|d11_________::17eda2ff77407538fbe5d3d719b9d1c0"))
|
.filter(r -> r.getId().equals("10|d12_________::3085e4c6e051378ca6157fe7f0430c1f"))
|
||||||
.collect()
|
.collect()
|
||||||
.get(0)
|
.get(0)
|
||||||
.getMeasures()
|
.getMeasures()
|
||||||
.stream()
|
.stream()
|
||||||
.filter(m -> m.getId().equals("downloads"))
|
.filter(m -> m.getId().equals("downloads"))
|
||||||
.collect(Collectors.toList())
|
.collect(Collectors.toList())
|
||||||
.get(0)
|
.get(0)
|
||||||
.getUnit()
|
.getUnit()
|
||||||
.get(0)
|
.get(0)
|
||||||
.getValue());
|
.getValue());
|
||||||
Assertions
|
Assertions
|
||||||
.assertEquals(
|
.assertEquals(
|
||||||
"1",
|
"6",
|
||||||
tmp
|
tmp
|
||||||
.map(r -> ((OafEntity) r.getPayload()))
|
.map(r -> ((OafEntity) r.getPayload()))
|
||||||
.filter(r -> r.getId().equals("10|d11_________::17eda2ff77407538fbe5d3d719b9d1c0"))
|
.filter(r -> r.getId().equals("10|d12_________::3085e4c6e051378ca6157fe7f0430c1f"))
|
||||||
.collect()
|
.collect()
|
||||||
.get(0)
|
.get(0)
|
||||||
.getMeasures()
|
.getMeasures()
|
||||||
.stream()
|
.stream()
|
||||||
.filter(m -> m.getId().equals("views"))
|
.filter(m -> m.getId().equals("views"))
|
||||||
.collect(Collectors.toList())
|
.collect(Collectors.toList())
|
||||||
.get(0)
|
.get(0)
|
||||||
.getUnit()
|
.getUnit()
|
||||||
.get(0)
|
.get(0)
|
||||||
.getValue());
|
.getValue());
|
||||||
|
|
||||||
Assertions
|
|
||||||
.assertEquals(
|
|
||||||
"2",
|
|
||||||
tmp
|
|
||||||
.map(r -> ((OafEntity) r.getPayload()))
|
|
||||||
.filter(r -> r.getId().equals("10|d12_________::3085e4c6e051378ca6157fe7f0430c1f"))
|
|
||||||
.collect()
|
|
||||||
.get(0)
|
|
||||||
.getMeasures()
|
|
||||||
.stream()
|
|
||||||
.filter(m -> m.getId().equals("downloads"))
|
|
||||||
.collect(Collectors.toList())
|
|
||||||
.get(0)
|
|
||||||
.getUnit()
|
|
||||||
.get(0)
|
|
||||||
.getValue());
|
|
||||||
Assertions
|
|
||||||
.assertEquals(
|
|
||||||
"6",
|
|
||||||
tmp
|
|
||||||
.map(r -> ((OafEntity) r.getPayload()))
|
|
||||||
.filter(r -> r.getId().equals("10|d12_________::3085e4c6e051378ca6157fe7f0430c1f"))
|
|
||||||
.collect()
|
|
||||||
.get(0)
|
|
||||||
.getMeasures()
|
|
||||||
.stream()
|
|
||||||
.filter(m -> m.getId().equals("views"))
|
|
||||||
.collect(Collectors.toList())
|
|
||||||
.get(0)
|
|
||||||
.getUnit()
|
|
||||||
.get(0)
|
|
||||||
.getValue());
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue