Skip to content
GitLab
Explore
Projects
Groups
Snippets
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
CityDoctor
CityDoctor2
Commits
7bb08ccb
Commit
7bb08ccb
authored
5 days ago
by
Riegel
Browse files
Options
Download
Email Patches
Plain Diff
Test: Fix TransportationObject tests
parent
26496f2a
master
dev
dev_gui_features_zip_loading
archive/dev_gui_features_zip_loading
2 merge requests
!28
Version 3.17.0 Release
,
!27
TransportationObject model rework
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
CityDoctorParent/CityDoctorModel/src/test/java/de/hft/stuttgart/citydoctor2/datastructure/TransportationObjectTest.java
+143
-36
...t/citydoctor2/datastructure/TransportationObjectTest.java
with
143 additions
and
36 deletions
+143
-36
CityDoctorParent/CityDoctorModel/src/test/java/de/hft/stuttgart/citydoctor2/datastructure/TransportationObjectTest.java
+
143
-
36
View file @
7bb08ccb
...
...
@@ -22,6 +22,7 @@ import static org.junit.Assert.assertEquals;
import
static
org
.
junit
.
Assert
.
assertFalse
;
import
static
org
.
junit
.
Assert
.
assertNull
;
import
static
org
.
junit
.
Assert
.
assertTrue
;
import
static
org
.
junit
.
Assert
.
fail
;
import
static
org
.
mockito
.
ArgumentMatchers
.
any
;
import
static
org
.
mockito
.
Mockito
.
mock
;
import
static
org
.
mockito
.
Mockito
.
verify
;
...
...
@@ -33,13 +34,23 @@ import java.util.List;
import
org.citygml4j.core.model.deprecated.core.DeprecatedPropertiesOfAbstractThematicSurface
;
import
org.citygml4j.core.model.deprecated.transportation.DeprecatedPropertiesOfAbstractTransportationSpace
;
import
org.citygml4j.core.model.deprecated.transportation.TransportationComplex
;
import
org.citygml4j.core.model.transportation.AbstractTransportationSpace
;
import
org.citygml4j.core.model.transportation.AuxiliaryTrafficArea
;
import
org.citygml4j.core.model.transportation.AuxiliaryTrafficSpace
;
import
org.citygml4j.core.model.transportation.AuxiliaryTrafficSpaceProperty
;
import
org.citygml4j.core.model.transportation.Intersection
;
import
org.citygml4j.core.model.transportation.Railway
;
import
org.citygml4j.core.model.transportation.Road
;
import
org.citygml4j.core.model.transportation.Section
;
import
org.citygml4j.core.model.transportation.Square
;
import
org.citygml4j.core.model.transportation.Track
;
import
org.citygml4j.core.model.transportation.TrafficArea
;
import
org.citygml4j.core.model.transportation.TrafficSpace
;
import
org.citygml4j.core.model.transportation.Waterway
;
import
org.citygml4j.core.util.geometry.GeometryFactory
;
import
org.junit.Test
;
import
org.mockito.Mock
;
import
org.mockito.Mockito
;
import
org.xmlobjects.gml.model.geometry.aggregates.MultiSurfaceProperty
;
import
de.hft.stuttgart.citydoctor2.check.CheckError
;
...
...
@@ -53,87 +64,171 @@ public class TransportationObjectTest {
@Test
public
void
testGetFeatureType
()
{
T
ransportationObject
to
=
new
TransportationObject
(
TransportationType
.
ROAD
);
T
opLevelTransportFeature
to
=
TopLevelTransportFeature
.
from
(
Mockito
.
mock
(
Road
.
class
)
);
assertEquals
(
FeatureType
.
TRANSPORTATION
,
to
.
getFeatureType
());
}
@Test
public
void
testObjectConstruction
()
{
TopLevelTransportFeature
road
=
TopLevelTransportFeature
.
from
(
Mockito
.
mock
(
Road
.
class
));
assertEquals
(
TransportationType
.
ROAD
,
road
.
getTransportationType
());
TopLevelTransportFeature
track
=
TopLevelTransportFeature
.
from
(
Mockito
.
mock
(
Track
.
class
));
assertEquals
(
TransportationType
.
TRACK
,
track
.
getTransportationType
());
TopLevelTransportFeature
waterway
=
TopLevelTransportFeature
.
from
(
Mockito
.
mock
(
Waterway
.
class
));
assertEquals
(
TransportationType
.
WATERWAY
,
waterway
.
getTransportationType
());
TopLevelTransportFeature
railway
=
TopLevelTransportFeature
.
from
(
Mockito
.
mock
(
Railway
.
class
));
assertEquals
(
TransportationType
.
RAILWAY
,
railway
.
getTransportationType
());
TopLevelTransportFeature
square
=
TopLevelTransportFeature
.
from
(
Mockito
.
mock
(
Square
.
class
));
assertEquals
(
TransportationType
.
SQUARE
,
square
.
getTransportationType
());
assertNull
(
TopLevelTransportFeature
.
from
(
Mockito
.
mock
(
Section
.
class
)));
assertNull
(
TopLevelTransportFeature
.
from
(
Mockito
.
mock
(
Intersection
.
class
)));
}
@Test
(
expected
=
IllegalStateException
.
class
)
public
void
testReCreateGeometriesSolid
()
{
T
ransportationObject
to
=
new
TransportationObject
(
TransportationType
.
ROAD
);
T
opLevelTransportFeature
to
=
TopLevelTransportFeature
.
from
(
Mockito
.
mock
(
Road
.
class
)
);
to
.
addGeometry
(
GeometryTestUtils
.
createDummyGeometry
(
GeometryType
.
SOLID
,
Lod
.
LOD1
));
GeometryFactory
factory
=
GeometryFactory
.
newInstance
();
to
.
reCreateGeometries
(
factory
,
mock
(
ParserConfiguration
.
class
));
}
@Test
public
void
testReCreateGeometriesWithComposedOf
()
{
T
ransportationObject
to
=
new
TransportationObject
(
TransportationType
.
ROAD
);
TransportationComplex
tcMock
=
new
TransportationComplex
();
to
.
setGmlObject
(
tc
Mock
);
Tra
nsportation
Object
ataTo
=
new
Tra
nsportationObject
(
Transportation
Type
.
AUXIL
L
IARY_TRAFFIC_SPACE
);
T
opLevelTransportFeature
to
=
TopLevelTransportFeature
.
from
(
Mockito
.
mock
(
Road
.
class
)
);
Road
roadMock
=
new
Road
();
to
.
setGmlObject
(
road
Mock
);
Tra
fficSpace
Object
ataTo
=
new
Tra
fficSpaceObject
(
TrafficSpaceObject
.
TrafficSpace
Type
.
AUXILIARY_TRAFFIC_SPACE
);
AuxiliaryTrafficSpace
ataMock
=
mock
(
AuxiliaryTrafficSpace
.
class
);
ataTo
.
addGeometry
(
GeometryTestUtils
.
createDummyGeometry
(
GeometryType
.
MULTI_SURFACE
,
Lod
.
LOD2
));
ataTo
.
setGmlObject
(
ataMock
);
tc
Mock
.
getAuxiliaryTrafficSpaces
().
add
(
new
AuxiliaryTrafficSpaceProperty
(
ataMock
));
road
Mock
.
getAuxiliaryTrafficSpaces
().
add
(
new
AuxiliaryTrafficSpaceProperty
(
ataMock
));
to
.
add
Child
(
ataTo
);
to
.
add
AuxTrafficSpace
(
ataTo
);
GeometryFactory
factory
=
GeometryFactory
.
newInstance
();
to
.
reCreateGeometries
(
factory
,
mock
(
ParserConfiguration
.
class
));
verify
(
ataMock
).
setLod2MultiSurface
(
any
());
}
@Test
public
void
testReCreateGeometriesMultiSurfaceLod0
()
{
TopLevelTransportFeature
top
=
TopLevelTransportFeature
.
from
(
Mockito
.
mock
(
Road
.
class
));
Road
roadMock
=
mock
(
Road
.
class
);
top
.
setGmlObject
(
roadMock
);
TrafficSpaceObject
tsMock
=
new
TrafficSpaceObject
(
TrafficSpaceObject
.
TrafficSpaceType
.
TRAFFIC_SPACE
);
TrafficSpace
trafficSpaceMock
=
mock
(
TrafficSpace
.
class
);
tsMock
.
setGmlObject
(
trafficSpaceMock
);
TrafficAreaObject
taMock
=
new
TrafficAreaObject
(
TrafficAreaObject
.
TrafficAreaType
.
TRAFFIC_AREA
);
TrafficArea
trafficAreaMock
=
mock
(
TrafficArea
.
class
);
taMock
.
setGmlObject
(
trafficAreaMock
);
top
.
addTrafficSpace
(
tsMock
);
tsMock
.
addTrafficArea
(
taMock
);
taMock
.
addGeometry
(
GeometryTestUtils
.
createDummyGeometry
(
GeometryType
.
MULTI_SURFACE
,
Lod
.
LOD0
));
GeometryFactory
factory
=
GeometryFactory
.
newInstance
();
top
.
reCreateGeometries
(
factory
,
mock
(
ParserConfiguration
.
class
));
verify
(
trafficAreaMock
).
setLod0MultiSurface
(
any
());
}
@Test
public
void
testReCreateGeometriesMultiSurfaceLod1
()
{
T
ransportationObject
to
=
new
Transport
ationObject
(
TransportationType
.
ROAD
);
T
opLevelTransportFeature
to
p
=
TopLevel
Transport
Feature
.
from
(
Mockito
.
mock
(
Road
.
class
)
);
Road
roadMock
=
mock
(
Road
.
class
);
DeprecatedPropertiesOfAbstractTransportationSpace
dSpace
=
mock
(
DeprecatedPropertiesOfAbstractTransportationSpace
.
class
);
when
(
roadMock
.
getDeprecatedProperties
()).
thenReturn
(
dSpace
);
to
.
setGmlObject
(
roadMock
);
to
.
addGeometry
(
GeometryTestUtils
.
createDummyGeometry
(
GeometryType
.
MULTI_SURFACE
,
Lod
.
LOD1
));
top
.
setGmlObject
(
roadMock
);
TrafficSpaceObject
tsMock
=
new
TrafficSpaceObject
(
TrafficSpaceObject
.
TrafficSpaceType
.
TRAFFIC_SPACE
);
TrafficSpace
trafficSpaceMock
=
mock
(
TrafficSpace
.
class
);
tsMock
.
setGmlObject
(
trafficSpaceMock
);
TrafficAreaObject
taMock
=
new
TrafficAreaObject
(
TrafficAreaObject
.
TrafficAreaType
.
TRAFFIC_AREA
);
TrafficArea
trafficAreaMock
=
mock
(
TrafficArea
.
class
);
taMock
.
setGmlObject
(
trafficAreaMock
);
top
.
addTrafficSpace
(
tsMock
);
tsMock
.
addTrafficArea
(
taMock
);
taMock
.
addGeometry
(
GeometryTestUtils
.
createDummyGeometry
(
GeometryType
.
MULTI_SURFACE
,
Lod
.
LOD1
));
GeometryFactory
factory
=
GeometryFactory
.
newInstance
();
to
.
reCreateGeometries
(
factory
,
mock
(
ParserConfiguration
.
class
));
verify
(
dSpace
).
setLod1MultiSurface
(
any
());
to
p
.
reCreateGeometries
(
factory
,
mock
(
ParserConfiguration
.
class
));
verify
(
trafficAreaMock
).
setLod1MultiSurface
(
any
());
}
@Test
public
void
testReCreateGeometriesMultiSurfaceLod2
()
{
T
ransportationObject
to
=
new
Transport
ationObject
(
TransportationType
.
ROAD
);
T
opLevelTransportFeature
to
p
=
TopLevel
Transport
Feature
.
from
(
Mockito
.
mock
(
Road
.
class
)
);
Road
roadMock
=
mock
(
Road
.
class
);
to
.
setGmlObject
(
roadMock
);
to
.
addGeometry
(
GeometryTestUtils
.
createDummyGeometry
(
GeometryType
.
MULTI_SURFACE
,
Lod
.
LOD2
));
top
.
setGmlObject
(
roadMock
);
TrafficSpaceObject
tsMock
=
new
TrafficSpaceObject
(
TrafficSpaceObject
.
TrafficSpaceType
.
TRAFFIC_SPACE
);
TrafficSpace
trafficSpaceMock
=
mock
(
TrafficSpace
.
class
);
tsMock
.
setGmlObject
(
trafficSpaceMock
);
TrafficAreaObject
taMock
=
new
TrafficAreaObject
(
TrafficAreaObject
.
TrafficAreaType
.
TRAFFIC_AREA
);
TrafficArea
trafficAreaMock
=
mock
(
TrafficArea
.
class
);
taMock
.
setGmlObject
(
trafficAreaMock
);
top
.
addTrafficSpace
(
tsMock
);
tsMock
.
addTrafficArea
(
taMock
);
taMock
.
addGeometry
(
GeometryTestUtils
.
createDummyGeometry
(
GeometryType
.
MULTI_SURFACE
,
Lod
.
LOD2
));
GeometryFactory
factory
=
GeometryFactory
.
newInstance
();
to
.
reCreateGeometries
(
factory
,
mock
(
ParserConfiguration
.
class
));
verify
(
road
Mock
).
setLod2MultiSurface
(
any
());
to
p
.
reCreateGeometries
(
factory
,
mock
(
ParserConfiguration
.
class
));
verify
(
trafficArea
Mock
).
setLod2MultiSurface
(
any
());
}
@Test
public
void
testReCreateGeometriesMultiSurfaceLod3
()
{
T
ransportationObject
to
=
new
Transport
ationObject
(
TransportationType
.
ROAD
);
T
opLevelTransportFeature
to
p
=
TopLevel
Transport
Feature
.
from
(
Mockito
.
mock
(
Road
.
class
)
);
Road
roadMock
=
mock
(
Road
.
class
);
to
.
setGmlObject
(
roadMock
);
to
.
addGeometry
(
GeometryTestUtils
.
createDummyGeometry
(
GeometryType
.
MULTI_SURFACE
,
Lod
.
LOD3
));
top
.
setGmlObject
(
roadMock
);
TrafficSpaceObject
tsMock
=
new
TrafficSpaceObject
(
TrafficSpaceObject
.
TrafficSpaceType
.
TRAFFIC_SPACE
);
TrafficSpace
trafficSpaceMock
=
mock
(
TrafficSpace
.
class
);
tsMock
.
setGmlObject
(
trafficSpaceMock
);
TrafficAreaObject
taMock
=
new
TrafficAreaObject
(
TrafficAreaObject
.
TrafficAreaType
.
TRAFFIC_AREA
);
TrafficArea
trafficAreaMock
=
mock
(
TrafficArea
.
class
);
taMock
.
setGmlObject
(
trafficAreaMock
);
top
.
addTrafficSpace
(
tsMock
);
tsMock
.
addTrafficArea
(
taMock
);
taMock
.
addGeometry
(
GeometryTestUtils
.
createDummyGeometry
(
GeometryType
.
MULTI_SURFACE
,
Lod
.
LOD3
));
GeometryFactory
factory
=
GeometryFactory
.
newInstance
();
to
.
reCreateGeometries
(
factory
,
mock
(
ParserConfiguration
.
class
));
verify
(
road
Mock
).
setLod3MultiSurface
(
any
());
to
p
.
reCreateGeometries
(
factory
,
mock
(
ParserConfiguration
.
class
));
verify
(
trafficArea
Mock
).
setLod3MultiSurface
(
any
());
}
@Test
public
void
testReCreateGeometriesMultiSurfaceLod4
()
{
T
ransportationObject
to
=
new
Transport
ationObject
(
TransportationType
.
ROAD
);
T
opLevelTransportFeature
to
p
=
TopLevel
Transport
Feature
.
from
(
Mockito
.
mock
(
Road
.
class
)
);
Road
roadMock
=
mock
(
Road
.
class
);
DeprecatedPropertiesOfAbstractTransportationSpace
dSpace
=
mock
(
DeprecatedPropertiesOfAbstractTransportationSpace
.
class
);
when
(
roadMock
.
getDeprecatedProperties
()).
thenReturn
(
dSpace
);
to
.
setGmlObject
(
roadMock
);
to
.
addGeometry
(
GeometryTestUtils
.
createDummyGeometry
(
GeometryType
.
MULTI_SURFACE
,
Lod
.
LOD4
));
top
.
setGmlObject
(
roadMock
);
TrafficSpaceObject
tsMock
=
new
TrafficSpaceObject
(
TrafficSpaceObject
.
TrafficSpaceType
.
TRAFFIC_SPACE
);
TrafficSpace
trafficSpaceMock
=
mock
(
TrafficSpace
.
class
);
tsMock
.
setGmlObject
(
trafficSpaceMock
);
TrafficAreaObject
taMock
=
new
TrafficAreaObject
(
TrafficAreaObject
.
TrafficAreaType
.
TRAFFIC_AREA
);
TrafficArea
trafficAreaMock
=
mock
(
TrafficArea
.
class
);
taMock
.
setGmlObject
(
trafficAreaMock
);
top
.
addTrafficSpace
(
tsMock
);
tsMock
.
addTrafficArea
(
taMock
);
DeprecatedPropertiesOfAbstractThematicSurface
dSpace
=
mock
(
DeprecatedPropertiesOfAbstractThematicSurface
.
class
);
when
(
trafficAreaMock
.
getDeprecatedProperties
()).
thenReturn
(
dSpace
);
taMock
.
addGeometry
(
GeometryTestUtils
.
createDummyGeometry
(
GeometryType
.
MULTI_SURFACE
,
Lod
.
LOD4
));
GeometryFactory
factory
=
GeometryFactory
.
newInstance
();
to
.
reCreateGeometries
(
factory
,
mock
(
ParserConfiguration
.
class
));
to
p
.
reCreateGeometries
(
factory
,
mock
(
ParserConfiguration
.
class
));
verify
(
dSpace
).
setLod4MultiSurface
(
any
());
}
/*
@Test(expected = IllegalStateException.class)
public void testReCreateGeometriesMultiSurfaceLod0() {
T
ransportationObject
to
=
new
TransportationObject
(
TransportationType
.
ROAD
);
T
opLevelTransportFeature to = TopLevelTransportFeature.from(Mockito.mock(Road.class)
);
Road roadMock = mock(Road.class);
to.setGmlObject(roadMock);
to.addGeometry(GeometryTestUtils.createDummyGeometry(GeometryType.MULTI_SURFACE, Lod.LOD0));
...
...
@@ -143,16 +238,20 @@ public class TransportationObjectTest {
@Test(expected = IllegalStateException.class)
public void testReCreateGeometriesTrafficAreaMultiSurfaceLod1() {
TransportationObject to = new TransportationObject(TransportationType.TRAFFIC_AREA);
TrafficArea roadMock = mock(TrafficArea.class);
to.setGmlObject(roadMock);
to.addGeometry(GeometryTestUtils.createDummyGeometry(GeometryType.MULTI_SURFACE, Lod.LOD1));
GeometryFactory factory = GeometryFactory.newInstance();
to.reCreateGeometries(factory, mock(ParserConfiguration.class));
}
@Test
public void testReCreateGeometriesTrafficAreaMultiSurfaceLod2() {
TransportationObject to = new TransportationObject(TransportationType.TRAFFIC_AREA);
TrafficArea roadMock = mock(TrafficArea.class);
to.setGmlObject(roadMock);
...
...
@@ -160,10 +259,13 @@ public class TransportationObjectTest {
GeometryFactory factory = GeometryFactory.newInstance();
to.reCreateGeometries(factory, mock(ParserConfiguration.class));
verify(roadMock).setLod2MultiSurface(any());
}
@Test
public void testReCreateGeometriesTrafficAreaMultiSurfaceLod3() {
TransportationObject to = new TransportationObject(TransportationType.TRAFFIC_AREA);
TrafficArea roadMock = mock(TrafficArea.class);
to.setGmlObject(roadMock);
...
...
@@ -171,10 +273,14 @@ public class TransportationObjectTest {
GeometryFactory factory = GeometryFactory.newInstance();
to.reCreateGeometries(factory, mock(ParserConfiguration.class));
verify(roadMock).setLod3MultiSurface(any());
}
@Test
public void testReCreateGeometriesTrafficAreaMultiSurfaceLod4() {
TransportationObject to = new TransportationObject(TransportationType.TRAFFIC_AREA);
TrafficArea roadMock = mock(TrafficArea.class);
DeprecatedPropertiesOfAbstractThematicSurface dSpace = mock(DeprecatedPropertiesOfAbstractThematicSurface.class);
...
...
@@ -185,6 +291,7 @@ public class TransportationObjectTest {
to.reCreateGeometries(factory, mock(ParserConfiguration.class));
verify(dSpace).setLod4MultiSurface(any());
}
@Test
public void testContainsError() {
...
...
@@ -278,5 +385,5 @@ public class TransportationObjectTest {
assertNull(r.getLod3MultiSurface());
assertNull(dSpace.getLod4MultiSurface());
}
*/
}
This diff is collapsed.
Click to expand it.
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment
Menu
Explore
Projects
Groups
Snippets