95 lines
2.1 KiB
Java
95 lines
2.1 KiB
Java
|
|
package eu.dnetlib.dhp.broker.oa.util;
|
|
|
|
import static org.junit.jupiter.api.Assertions.assertTrue;
|
|
|
|
import org.junit.jupiter.api.Test;
|
|
|
|
import eu.dnetlib.broker.objects.OaBrokerAuthor;
|
|
import eu.dnetlib.broker.objects.OaBrokerMainEntity;
|
|
import eu.dnetlib.broker.objects.OaBrokerTypedValue;
|
|
|
|
public class TrustUtilsTest {
|
|
|
|
private static final double THRESHOLD = 0.95;
|
|
|
|
@Test
|
|
void rescaleTest_1() {
|
|
verifyValue(-0.3, BrokerConstants.MIN_TRUST);
|
|
}
|
|
|
|
@Test
|
|
void rescaleTest_2() {
|
|
verifyValue(0.0, BrokerConstants.MIN_TRUST);
|
|
}
|
|
|
|
@Test
|
|
void rescaleTest_3() {
|
|
verifyValue(0.5, BrokerConstants.MIN_TRUST);
|
|
}
|
|
|
|
@Test
|
|
void rescaleTest_4() {
|
|
verifyValue(0.95, BrokerConstants.MIN_TRUST);
|
|
}
|
|
|
|
@Test
|
|
void rescaleTest_5() {
|
|
verifyValue(0.96, BrokerConstants.MIN_TRUST);
|
|
}
|
|
|
|
@Test
|
|
void rescaleTest_6() {
|
|
verifyValue(0.97, 0.3f);
|
|
}
|
|
|
|
@Test
|
|
void rescaleTest_7() {
|
|
verifyValue(0.98, 0.45f);
|
|
}
|
|
|
|
@Test
|
|
void rescaleTest_8() {
|
|
verifyValue(0.99, 0.6f);
|
|
}
|
|
|
|
@Test
|
|
void rescaleTest_9() {
|
|
verifyValue(1.00, BrokerConstants.MAX_TRUST);
|
|
}
|
|
|
|
@Test
|
|
void rescaleTest_10() {
|
|
verifyValue(1.01, BrokerConstants.MAX_TRUST);
|
|
}
|
|
|
|
@Test
|
|
void rescaleTest_11() {
|
|
verifyValue(2.00, BrokerConstants.MAX_TRUST);
|
|
}
|
|
|
|
@Test
|
|
void test() {
|
|
final OaBrokerMainEntity r1 = new OaBrokerMainEntity();
|
|
r1.getTitles().add("D-NET Service Package: Data Import");
|
|
r1.getPids().add(new OaBrokerTypedValue("doi", "123"));
|
|
r1.getCreators().add(new OaBrokerAuthor("Michele Artini", null));
|
|
r1.getCreators().add(new OaBrokerAuthor("Claudio Atzori", null));
|
|
|
|
final OaBrokerMainEntity r2 = new OaBrokerMainEntity();
|
|
r2.getTitles().add("D-NET Service Package: Data Import");
|
|
// r2.getPids().add(new OaBrokerTypedValue("doi", "123"));
|
|
r2.getCreators().add(new OaBrokerAuthor("Michele Artini", null));
|
|
// r2.getCreators().add(new OaBrokerAuthor("Claudio Atzori", null));
|
|
|
|
System.out.println("TRUST: " + TrustUtils.calculateTrust(r1, r2));
|
|
}
|
|
|
|
private void verifyValue(final double originalScore, final float expectedTrust) {
|
|
final float trust = TrustUtils.rescale(originalScore, THRESHOLD);
|
|
System.out.println(trust);
|
|
assertTrue(Math.abs(trust - expectedTrust) < 0.01);
|
|
}
|
|
|
|
}
|