diff --git a/core/src/net/sf/openrocket/rocketcomponent/FlightConfiguration.java b/core/src/net/sf/openrocket/rocketcomponent/FlightConfiguration.java index 1b2ec0f0d..0cbf35e1a 100644 --- a/core/src/net/sf/openrocket/rocketcomponent/FlightConfiguration.java +++ b/core/src/net/sf/openrocket/rocketcomponent/FlightConfiguration.java @@ -33,7 +33,6 @@ import net.sf.openrocket.util.Transformation; */ public class FlightConfiguration implements FlightConfigurableParameter, Monitorable { private static final Logger log = LoggerFactory.getLogger(FlightConfiguration.class); - private static final Translator trans = Application.getTranslator(); private String configurationName; public static String DEFAULT_CONFIG_NAME = "[{motors}]"; diff --git a/core/src/net/sf/openrocket/rocketcomponent/Rocket.java b/core/src/net/sf/openrocket/rocketcomponent/Rocket.java index 0661e39ce..513f16391 100644 --- a/core/src/net/sf/openrocket/rocketcomponent/Rocket.java +++ b/core/src/net/sf/openrocket/rocketcomponent/Rocket.java @@ -382,7 +382,9 @@ public class Rocket extends ComponentAssembly { // the default value needs to be explicitly set, because it has different semantics copyRocket.configSet = new FlightConfigurableParameterSet<>(new FlightConfiguration(copyRocket)); for (FlightConfigurationId key : this.configSet.getIds()) { - copyRocket.configSet.set(key, new FlightConfiguration(copyRocket, key)); + FlightConfiguration newCfg = new FlightConfiguration(copyRocket, key); + newCfg.setName(this.configSet.get(key).getName()); // Copy config name + copyRocket.configSet.set(key, newCfg); } copyRocket.selectedConfiguration = copyRocket.configSet.get( this.getSelectedConfiguration().getId()); @@ -432,7 +434,9 @@ public class Rocket extends ComponentAssembly { this.configSet.reset(); this.configSet.setDefault(new FlightConfiguration(this)); for (FlightConfigurationId key : source.configSet.map.keySet()) { - this.configSet.set(key, new FlightConfiguration(this, key)); + FlightConfiguration newCfg = new FlightConfiguration(this, key); + newCfg.setName(source.configSet.get(key).getName()); // Copy config name + this.configSet.set(key, newCfg); } this.selectedConfiguration = this.configSet.get(source.getSelectedConfiguration().getId()); diff --git a/core/test/net/sf/openrocket/rocketcomponent/RocketTest.java b/core/test/net/sf/openrocket/rocketcomponent/RocketTest.java index 0be44b63a..e7317a486 100644 --- a/core/test/net/sf/openrocket/rocketcomponent/RocketTest.java +++ b/core/test/net/sf/openrocket/rocketcomponent/RocketTest.java @@ -4,6 +4,7 @@ import static org.hamcrest.CoreMatchers.equalTo; import static org.hamcrest.CoreMatchers.not; import static org.hamcrest.Matchers.closeTo; import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotEquals; import static org.junit.Assert.assertThat; @@ -26,6 +27,7 @@ public class RocketTest extends BaseTestCase { public void testCopyIndependence() { Rocket rkt1 = TestRockets.makeEstesAlphaIII(); FlightConfiguration config1 = new FlightConfiguration(rkt1, null); + config1.setName("Test config 1"); rkt1.setFlightConfiguration( config1.getId(), config1); rkt1.setSelectedConfiguration( config1.getId()); FlightConfiguration config2 = new FlightConfiguration(rkt1, null); @@ -38,13 +40,17 @@ public class RocketTest extends BaseTestCase { FlightConfiguration config4 = rkt2.getSelectedConfiguration(); FlightConfigurationId fcid4 = config4.getId(); - assertThat("fcids should match: ", config1.getId().key, equalTo(fcid4.key)); - assertThat("Configurations should be different: "+config1.toDebug()+"=?="+config4.toDebug(), config1.configurationInstanceId, not( config4.configurationInstanceId)); + assertEquals("fcids should match: ", config1.getId().key, fcid4.key); + assertEquals("names should match: ", config1.getName(), config4.getName()); + assertEquals("name not right: ", "Test config 1", config4.getName()); + assertNotEquals("Configurations should be different: "+config1.toDebug()+"=?="+config4.toDebug(), + config1.configurationInstanceId, config4.configurationInstanceId); FlightConfiguration config5 = rkt2.getFlightConfiguration(config2.getId()); FlightConfigurationId fcid5 = config5.getId(); - assertThat("fcids should match: ", config2.getId(), equalTo(fcid5)); - assertThat("Configurations should bef different match: "+config2.toDebug()+"=?="+config5.toDebug(), config2.configurationInstanceId, not( config5.configurationInstanceId)); + assertEquals("fcids should match: ", config2.getId(), fcid5); + assertNotEquals("Configurations should bef different match: "+config2.toDebug()+"=?="+config5.toDebug(), + config2.configurationInstanceId, config5.configurationInstanceId); }