Fix RockSim import/export unit tests
This commit is contained in:
parent
01df928f3c
commit
a249c2dddc
@ -127,24 +127,26 @@ public class RockSimDocumentDTOTest extends RockSimTestBase {
|
||||
List<RocketComponent> originalChildren = originalRocket.getAllChildren();
|
||||
List<RocketComponent> importedChildren = importedRocket.getAllChildren();
|
||||
assertEquals(" Number of total children doesn't match",
|
||||
originalChildren.size(), importedChildren.size());
|
||||
originalChildren.size() + 5, importedChildren.size()); // More children because RockSim has individual podsets
|
||||
assertEquals(" Number of rocket children doesn't match", 1, importedRocket.getChildCount());
|
||||
AxialStage stage = (AxialStage) importedRocket.getChild(0);
|
||||
assertEquals(" Number of stage children doesn't match", 2, stage.getChildCount());
|
||||
BodyTube tube = (BodyTube) stage.getChild(1);
|
||||
assertEquals(" Number of body tube children doesn't match", 3, tube.getChildCount());
|
||||
assertEquals(" Number of body tube children doesn't match", 6, tube.getChildCount());
|
||||
PodSet pod1 = (PodSet) tube.getChild(0);
|
||||
assertEquals(" Number of pod 1 children doesn't match", 1, pod1.getChildCount());
|
||||
PodSet pod2 = (PodSet) tube.getChild(1);
|
||||
assertEquals(" Number of pod 2 children doesn't match", 2, pod2.getChildCount());
|
||||
PodSet pod3 = (PodSet) tube.getChild(2);
|
||||
PodSet pod3 = (PodSet) tube.getChild(3);
|
||||
assertEquals(" Number of pod 3 children doesn't match", 0, pod3.getChildCount());
|
||||
|
||||
// Test component names
|
||||
for (int i = 1; i < originalChildren.size(); i++) {
|
||||
assertEquals(" Child " + i + " does not match",
|
||||
originalChildren.get(i).getName(), importedChildren.get(i).getName());
|
||||
}
|
||||
assertEquals(" Name does not match", "Pod 1", importedChildren.get(3).getName());
|
||||
assertEquals(" Name does not match", "Pod 2 #1", importedChildren.get(5).getName());
|
||||
assertEquals(" Name does not match", "Pod 2 #2", importedChildren.get(8).getName());
|
||||
assertEquals(" Name does not match", "Pod 3 #1", importedChildren.get(11).getName());
|
||||
assertEquals(" Name does not match", "Pod 3 #2", importedChildren.get(12).getName());
|
||||
assertEquals(" Name does not match", "Pod 3 #3", importedChildren.get(13).getName());
|
||||
|
||||
// Test pod parameters
|
||||
assertEquals(-0.14, pod1.getAxialOffset(), 0.0001);
|
||||
@ -163,6 +165,7 @@ public class RockSimDocumentDTOTest extends RockSimTestBase {
|
||||
stream.close();
|
||||
Files.delete(output);
|
||||
}
|
||||
|
||||
/**
|
||||
* Tests exporting a design where a tube coupler has children, which is not supported by RockSim, so the children
|
||||
* need to be moved outside the tube coupler.
|
||||
@ -232,7 +235,7 @@ public class RockSimDocumentDTOTest extends RockSimTestBase {
|
||||
pod2.setName("Pod 2");
|
||||
tube.addChild(pod2);
|
||||
PodSet pod3 = new PodSet();
|
||||
pod2.setName("Pod 3");
|
||||
pod3.setName("Pod 3");
|
||||
tube.addChild(pod3);
|
||||
|
||||
// Pod 1 children
|
||||
|
@ -15,6 +15,7 @@ import net.sf.openrocket.rocketcomponent.InnerTube;
|
||||
import net.sf.openrocket.rocketcomponent.MassComponent;
|
||||
import net.sf.openrocket.rocketcomponent.NoseCone;
|
||||
import net.sf.openrocket.rocketcomponent.Parachute;
|
||||
import net.sf.openrocket.rocketcomponent.ParallelStage;
|
||||
import net.sf.openrocket.rocketcomponent.PodSet;
|
||||
import net.sf.openrocket.rocketcomponent.RocketComponent;
|
||||
import net.sf.openrocket.rocketcomponent.Transition;
|
||||
@ -205,7 +206,7 @@ public class RockSimLoaderTest extends BaseTestCase {
|
||||
rocket = doc.getRocket();
|
||||
Assert.assertNotNull(rocket);
|
||||
Assert.assertEquals("Three Stage Everything Included Rocket - Override Total Mass/CG", doc.getRocket().getName());
|
||||
Assert.assertEquals(3, rocket.getStageCount());
|
||||
Assert.assertEquals(4, rocket.getStageCount());
|
||||
stage1 = (AxialStage) rocket.getChild(0);
|
||||
stage2 = (AxialStage) rocket.getChild(1);
|
||||
stage3 = (AxialStage) rocket.getChild(2);
|
||||
@ -249,11 +250,11 @@ public class RockSimLoaderTest extends BaseTestCase {
|
||||
Assert.assertEquals("Launch lug", bt1.getChild(3).getName());
|
||||
Assert.assertEquals("Pod", bt1.getChild(4).getName());
|
||||
|
||||
PodSet pod = (PodSet) bt1.getChild(4);
|
||||
Assert.assertEquals(1, pod.getChildCount());
|
||||
c = pod.getChild(0);
|
||||
ParallelStage booster = (ParallelStage) bt1.getChild(4);
|
||||
Assert.assertEquals(1, booster.getChildCount());
|
||||
c = booster.getChild(0);
|
||||
Assert.assertEquals(BodyTube.class, c.getClass());
|
||||
Assert.assertEquals("Body tube", pod.getChild(0).getName());
|
||||
Assert.assertEquals("Body tube", booster.getChild(0).getName());
|
||||
|
||||
Assert.assertEquals(1, stage2.getChildCount());
|
||||
Assert.assertEquals("2nd Stage Tube", stage2.getChild(0).getName());
|
||||
@ -392,7 +393,7 @@ public class RockSimLoaderTest extends BaseTestCase {
|
||||
Rocket rocket = doc.getRocket();
|
||||
Assert.assertNotNull(rocket);
|
||||
Assert.assertEquals("Pod Test", doc.getRocket().getName());
|
||||
Assert.assertEquals(3, loader.getWarnings().size());
|
||||
Assert.assertEquals(5, loader.getWarnings().size());
|
||||
|
||||
InputStream stream = this.getClass().getResourceAsStream("PodTest.rkt");
|
||||
Assert.assertNotNull("Could not open PodTest.rkt", stream);
|
||||
@ -406,7 +407,7 @@ public class RockSimLoaderTest extends BaseTestCase {
|
||||
Assert.assertNotNull(doc);
|
||||
rocket = doc.getRocket();
|
||||
Assert.assertNotNull(rocket);
|
||||
Assert.assertEquals(1, rocket.getStageCount());
|
||||
Assert.assertEquals(3, rocket.getStageCount());
|
||||
AxialStage stage1 = (AxialStage) rocket.getChild(0);
|
||||
|
||||
Assert.assertEquals(3, stage1.getChildCount());
|
||||
@ -427,7 +428,7 @@ public class RockSimLoaderTest extends BaseTestCase {
|
||||
|
||||
Assert.assertEquals(2, bodyTube1.getChildCount());
|
||||
RocketComponent pod2 = bodyTube1.getChild(0);
|
||||
Assert.assertEquals(PodSet.class, pod2.getClass());
|
||||
Assert.assertEquals(ParallelStage.class, pod2.getClass());
|
||||
Assert.assertEquals("Pod 2", pod2.getName());
|
||||
component = bodyTube1.getChild(1);
|
||||
Assert.assertEquals(Bulkhead.class, component.getClass());
|
||||
@ -454,7 +455,7 @@ public class RockSimLoaderTest extends BaseTestCase {
|
||||
Assert.assertEquals(TrapezoidFinSet.class, component.getClass());
|
||||
Assert.assertEquals("Fin set 2", component.getName());
|
||||
RocketComponent pod3 = bodyTube2.getChild(1);
|
||||
Assert.assertEquals(PodSet.class, pod3.getClass());
|
||||
Assert.assertEquals(ParallelStage.class, pod3.getClass());
|
||||
Assert.assertEquals("Pod 3", pod3.getName());
|
||||
component = bodyTube2.getChild(2);
|
||||
Assert.assertEquals(LaunchLug.class, component.getClass());
|
||||
@ -465,7 +466,7 @@ public class RockSimLoaderTest extends BaseTestCase {
|
||||
Assert.assertEquals(BodyTube.class, component.getClass());
|
||||
Assert.assertEquals("Body tube 3", component.getName());
|
||||
Assert.assertEquals(0.04, pod3.getAxialOffset(), MathUtil.EPSILON);
|
||||
Assert.assertEquals(Math.PI / 2, pod3.getAngleOffset(), 0.0001);
|
||||
Assert.assertEquals(1.76043, pod3.getAngleOffset(), 0.0001);
|
||||
Assert.assertEquals(0.05, pod3.getRadiusOffset(), MathUtil.EPSILON);
|
||||
|
||||
Assert.assertEquals(1, transition1.getChildCount());
|
||||
|
Loading…
x
Reference in New Issue
Block a user