Skip to content

Commit

Permalink
[Bug #108] Add integration tests for mapping special floating point v…
Browse files Browse the repository at this point in the history
…alues (-INF, INF, NaN).
  • Loading branch information
ledsoft committed Mar 24, 2022
1 parent c8fdddd commit dd71e21
Show file tree
Hide file tree
Showing 4 changed files with 26 additions and 14 deletions.
Expand Up @@ -16,15 +16,15 @@

import cz.cvut.kbss.jopa.test.environment.JenaDataAccessor;
import cz.cvut.kbss.jopa.test.environment.JenaPersistenceFactory;
import cz.cvut.kbss.jopa.test.runner.ExplicitDatatypesRunner;
import cz.cvut.kbss.jopa.test.runner.DataTypesRunner;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class ExplicitDatatypesTest extends ExplicitDatatypesRunner {
public class DataTypesTest extends DataTypesRunner {

private static final Logger LOG = LoggerFactory.getLogger(ExplicitDatatypesTest.class);
private static final Logger LOG = LoggerFactory.getLogger(DataTypesTest.class);

public ExplicitDatatypesTest() {
public DataTypesTest() {
super(LOG, new JenaPersistenceFactory(), new JenaDataAccessor());
}
}
Expand Up @@ -16,18 +16,18 @@

import cz.cvut.kbss.jopa.test.environment.OwlapiDataAccessor;
import cz.cvut.kbss.jopa.test.environment.OwlapiPersistenceFactory;
import cz.cvut.kbss.jopa.test.runner.ExplicitDatatypesRunner;
import cz.cvut.kbss.jopa.test.runner.DataTypesRunner;
import org.semanticweb.owlapi.model.OWLOntology;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import java.net.URI;

public class ExplicitDatatypesTest extends ExplicitDatatypesRunner {
public class DataTypesTest extends DataTypesRunner {

private static final Logger LOG = LoggerFactory.getLogger(ExplicitDatatypesTest.class);
private static final Logger LOG = LoggerFactory.getLogger(DataTypesTest.class);

public ExplicitDatatypesTest() {
public DataTypesTest() {
super(LOG, new OwlapiPersistenceFactory(), new OwlapiDataAccessor());
}

Expand Down
Expand Up @@ -16,15 +16,15 @@

import cz.cvut.kbss.jopa.test.environment.SesameDataAccessor;
import cz.cvut.kbss.jopa.test.environment.SesamePersistenceFactory;
import cz.cvut.kbss.jopa.test.runner.ExplicitDatatypesRunner;
import cz.cvut.kbss.jopa.test.runner.DataTypesRunner;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class ExplicitDatatypesTest extends ExplicitDatatypesRunner {
public class DataTypesTest extends DataTypesRunner {

private static final Logger LOG = LoggerFactory.getLogger(ExplicitDatatypesTest.class);
private static final Logger LOG = LoggerFactory.getLogger(DataTypesTest.class);

public ExplicitDatatypesTest() {
public DataTypesTest() {
super(LOG, new SesamePersistenceFactory(), new SesameDataAccessor());
}
}
Expand Up @@ -34,11 +34,11 @@

import static org.junit.jupiter.api.Assertions.assertEquals;

public abstract class ExplicitDatatypesRunner extends BaseRunner {
public abstract class DataTypesRunner extends BaseRunner {

private static final String VALUE = "P1Y";

public ExplicitDatatypesRunner(Logger logger, PersistenceFactory persistenceFactory, DataAccessor dataAccessor) {
public DataTypesRunner(Logger logger, PersistenceFactory persistenceFactory, DataAccessor dataAccessor) {
super(logger, persistenceFactory, dataAccessor);
}

Expand Down Expand Up @@ -99,4 +99,16 @@ public void pluralAttributesWithExplicitDatatypeAreSupported() {
final OWLClassX result = findRequired(OWLClassX.class, entity.getUri());
assertEquals(values, result.getExplicitDatatypes());
}

@Test
public void floatingPointAttributesSupportInfinityMapping() {
this.em = getEntityManager("floatingPointAttributesSupportInfinity", false);
entityM.setFloatAttribute(Float.NEGATIVE_INFINITY);
entityM.setDoubleAttribute(Double.POSITIVE_INFINITY);
persist(entityM);

final OWLClassM result = findRequired(OWLClassM.class, entityM.getKey());
assertEquals(Float.NEGATIVE_INFINITY, result.getFloatAttribute());
assertEquals(Double.POSITIVE_INFINITY, result.getDoubleAttribute());
}
}

0 comments on commit dd71e21

Please sign in to comment.