Browse Source

Move 4 toml config files from tests/configs/ to tests/

Moved configs to flatten directory structure:
- test_extreme_orientation_mixed.toml
- test_extreme_timescales.toml
- test_hybrid_burns.toml
- test_hybrid_energy_conservation.toml

Updated corresponding test files to use new paths:
- test_extreme_orientation_mixed.cpp
- test_extreme_timescales.cpp
- test_hybrid_burns.cpp
- test_hybrid_energy_conservation.cpp

All 240,294 assertions passing in 132 test cases
main
cinnaboot 5 months ago
parent
commit
a68b5e43f0
  1. 14
      tests/test_extreme_orientation_mixed.cpp
  2. 0
      tests/test_extreme_orientation_mixed.toml
  3. 18
      tests/test_extreme_timescales.cpp
  4. 0
      tests/test_extreme_timescales.toml
  5. 28
      tests/test_hybrid_burns.cpp
  6. 0
      tests/test_hybrid_burns.toml
  7. 20
      tests/test_hybrid_energy_conservation.cpp
  8. 0
      tests/test_hybrid_energy_conservation.toml

14
tests/test_extreme_orientation_mixed.cpp

@ -17,7 +17,7 @@ TEST_CASE("Rotation matrix behavior at extreme inclination/eccentricity combinat
const double TIME_STEP = 60.0;
SimulationState* sim = create_simulation(10, 5, 0, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_extreme_orientation_mixed.toml"));
REQUIRE(load_system_config(sim, "tests/test_extreme_orientation_mixed.toml"));
CelestialBody* earth = &sim->bodies[0];
SECTION("Multiple spacecraft with extreme orientation parameters") {
@ -102,7 +102,7 @@ TEST_CASE("Longitude of ascending node (Ω) singularity handling", "[extreme][or
const double TIME_STEP = 60.0;
SimulationState* sim = create_simulation(10, 5, 0, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_extreme_orientation_mixed.toml"));
REQUIRE(load_system_config(sim, "tests/test_extreme_orientation_mixed.toml"));
CelestialBody* earth = &sim->bodies[0];
SECTION("Spacecraft with Ω = 0 (ascending node at reference direction)") {
@ -141,7 +141,7 @@ TEST_CASE("Argument of periapsis (ω) singularity handling", "[extreme][orientat
const double TIME_STEP = 60.0;
SimulationState* sim = create_simulation(10, 5, 0, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_extreme_orientation_mixed.toml"));
REQUIRE(load_system_config(sim, "tests/test_extreme_orientation_mixed.toml"));
CelestialBody* earth = &sim->bodies[0];
SECTION("Spacecraft with ω = 0 (periapsis at ascending node)") {
@ -197,7 +197,7 @@ TEST_CASE("Velocity vector orientation at perigee and apogee for extreme orbits"
const double TIME_STEP = 60.0;
SimulationState* sim = create_simulation(10, 5, 0, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_extreme_orientation_mixed.toml"));
REQUIRE(load_system_config(sim, "tests/test_extreme_orientation_mixed.toml"));
CelestialBody* earth = &sim->bodies[0];
for (int craft_idx = 0; craft_idx < sim->craft_count; craft_idx++) {
@ -231,7 +231,7 @@ TEST_CASE("Velocity follows vis-viva equation for extreme orbits", "[extreme][or
const double TIME_STEP = 60.0;
SimulationState* sim = create_simulation(10, 5, 0, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_extreme_orientation_mixed.toml"));
REQUIRE(load_system_config(sim, "tests/test_extreme_orientation_mixed.toml"));
CelestialBody* earth = &sim->bodies[0];
for (int craft_idx = 0; craft_idx < sim->craft_count; craft_idx++) {
@ -273,7 +273,7 @@ TEST_CASE("Round-trip conversion for extreme orientation parameters", "[extreme]
const double TIME_STEP = 60.0;
SimulationState* sim = create_simulation(10, 5, 0, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_extreme_orientation_mixed.toml"));
REQUIRE(load_system_config(sim, "tests/test_extreme_orientation_mixed.toml"));
CelestialBody* earth = &sim->bodies[0];
for (int craft_idx = 0; craft_idx < sim->craft_count; craft_idx++) {
@ -328,7 +328,7 @@ TEST_CASE("Rotation matrix verification for extreme parameters", "[extreme][orie
const double TIME_STEP = 60.0;
SimulationState* sim = create_simulation(10, 5, 0, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_extreme_orientation_mixed.toml"));
REQUIRE(load_system_config(sim, "tests/test_extreme_orientation_mixed.toml"));
for (int craft_idx = 0; craft_idx < sim->craft_count; craft_idx++) {
Spacecraft* craft = &sim->spacecraft[craft_idx];

0
tests/configs/test_extreme_orientation_mixed.toml → tests/test_extreme_orientation_mixed.toml

18
tests/test_extreme_timescales.cpp

@ -29,7 +29,7 @@ TEST_CASE("Fast orbit - LEO (period ~92 minutes)", "[extreme][timescales][fast]"
const int NUM_ORBITS = 10;
SimulationState* sim = create_simulation(10, 10, 0, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_extreme_timescales.toml"));
REQUIRE(load_system_config(sim, "tests/test_extreme_timescales.toml"));
const int CRAFT_INDEX = 0;
const int PARENT_INDEX = 0;
@ -74,7 +74,7 @@ TEST_CASE("Fast orbit - Mercury-like (period ~88 days)", "[extreme][timescales][
const double TIME_STEP = 3600.0;
SimulationState* sim = create_simulation(10, 10, 0, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_extreme_timescales.toml"));
REQUIRE(load_system_config(sim, "tests/test_extreme_timescales.toml"));
const int CRAFT_INDEX = 1;
const int PARENT_INDEX = 1;
@ -117,7 +117,7 @@ TEST_CASE("Long period orbit - Jupiter-like (period ~12 years)", "[extreme][time
const double TIME_STEP = 86400.0;
SimulationState* sim = create_simulation(10, 10, 0, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_extreme_timescales.toml"));
REQUIRE(load_system_config(sim, "tests/test_extreme_timescales.toml"));
const int CRAFT_INDEX = 2;
const int PARENT_INDEX = 1;
@ -159,7 +159,7 @@ TEST_CASE("Low altitude orbit (~100 km)", "[extreme][timescales][low]") {
const double TIME_STEP = 10.0;
SimulationState* sim = create_simulation(10, 10, 0, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_extreme_timescales.toml"));
REQUIRE(load_system_config(sim, "tests/test_extreme_timescales.toml"));
const int CRAFT_INDEX = 3;
const int PARENT_INDEX = 0;
@ -197,7 +197,7 @@ TEST_CASE("Super-synchronous orbit (period > 24 hours)", "[extreme][timescales][
const double TARGET_PERIOD = 24.0 * 3600.0;
SimulationState* sim = create_simulation(10, 10, 0, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_extreme_timescales.toml"));
REQUIRE(load_system_config(sim, "tests/test_extreme_timescales.toml"));
const int CRAFT_INDEX = 4;
const int PARENT_INDEX = 0;
@ -240,7 +240,7 @@ TEST_CASE("Geosynchronous orbit (period = sidereal day)", "[extreme][timescales]
const double SIDEREAL_DAY_HOURS = 23.93447;
SimulationState* sim = create_simulation(10, 10, 0, 60.0);
REQUIRE(load_system_config(sim, "tests/configs/test_extreme_timescales.toml"));
REQUIRE(load_system_config(sim, "tests/test_extreme_timescales.toml"));
const int CRAFT_INDEX = 5;
const int PARENT_INDEX = 0;
@ -279,7 +279,7 @@ TEST_CASE("Period consistency across different true anomalies", "[extreme][times
const double TIME_STEP = 3600.0;
SimulationState* sim = create_simulation(10, 10, 0, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_extreme_timescales.toml"));
REQUIRE(load_system_config(sim, "tests/test_extreme_timescales.toml"));
const int CRAFT_INDEX = 1;
const int PARENT_INDEX = 1;
@ -320,7 +320,7 @@ TEST_CASE("Energy conservation across all timescales", "[extreme][timescales][en
const double TIME_STEP = 3600.0;
SimulationState* sim = create_simulation(10, 10, 0, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_extreme_timescales.toml"));
REQUIRE(load_system_config(sim, "tests/test_extreme_timescales.toml"));
struct EnergyTest {
int craft_index;
@ -376,7 +376,7 @@ TEST_CASE("Mean anomaly accumulation for very long periods", "[extreme][timescal
const double TIME_STEP = 86400.0;
SimulationState* sim = create_simulation(10, 10, 0, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_extreme_timescales.toml"));
REQUIRE(load_system_config(sim, "tests/test_extreme_timescales.toml"));
const int CRAFT_INDEX = 2;
const int PARENT_INDEX = 1;

0
tests/configs/test_extreme_timescales.toml → tests/test_extreme_timescales.toml

28
tests/test_hybrid_burns.cpp

@ -89,7 +89,7 @@ TEST_CASE("Config loading for hybrid burns", "[hybrid][burns][config]") {
SimulationState* sim = create_simulation(10, 10, 100, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_hybrid_burns.toml"));
REQUIRE(load_system_config(sim, "tests/test_hybrid_burns.toml"));
REQUIRE(sim->body_count == 2);
REQUIRE(std::string(sim->bodies[0].name) == "Sun");
@ -137,7 +137,7 @@ SCENARIO("Impulse Hohmann transfer with two burns", "[hybrid][burns][impulse][ho
SimulationState* sim = create_simulation(10, 10, 100, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_hybrid_burns.toml"));
REQUIRE(load_system_config(sim, "tests/test_hybrid_burns.toml"));
Spacecraft* craft = &sim->spacecraft[0];
CelestialBody* earth = &sim->bodies[1];
@ -212,7 +212,7 @@ SCENARIO("Impulse large burns (Δv > orbital velocity)", "[hybrid][burns][impuls
SimulationState* sim = create_simulation(10, 10, 100, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_hybrid_burns.toml"));
REQUIRE(load_system_config(sim, "tests/test_hybrid_burns.toml"));
Spacecraft* craft = &sim->spacecraft[5];
CelestialBody* earth = &sim->bodies[1];
@ -273,7 +273,7 @@ SCENARIO("Impulse energy conservation during burns", "[hybrid][burns][impulse][e
SimulationState* sim = create_simulation(10, 10, 100, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_hybrid_burns.toml"));
REQUIRE(load_system_config(sim, "tests/test_hybrid_burns.toml"));
Spacecraft* craft = &sim->spacecraft[0];
CelestialBody* earth = &sim->bodies[1];
@ -364,7 +364,7 @@ SCENARIO("Impulse round-trip conversion with burns", "[hybrid][burns][impulse][r
SimulationState* sim = create_simulation(10, 10, 100, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_hybrid_burns.toml"));
REQUIRE(load_system_config(sim, "tests/test_hybrid_burns.toml"));
Spacecraft* craft = &sim->spacecraft[0];
CelestialBody* earth = &sim->bodies[1];
@ -438,7 +438,7 @@ SCENARIO("Impulse multiple burn sequences", "[hybrid][burns][impulse][sequence]"
SimulationState* sim = create_simulation(10, 10, 100, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_hybrid_burns.toml"));
REQUIRE(load_system_config(sim, "tests/test_hybrid_burns.toml"));
Spacecraft* craft = &sim->spacecraft[0];
CelestialBody* earth = &sim->bodies[1];
@ -529,7 +529,7 @@ TEST_CASE("Impulse burn direction vector calculation", "[hybrid][burns][impulse]
SimulationState* sim = create_simulation(10, 10, 100, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_hybrid_burns.toml"));
REQUIRE(load_system_config(sim, "tests/test_hybrid_burns.toml"));
Spacecraft* craft = &sim->spacecraft[0];
CelestialBody* earth = &sim->bodies[1];
@ -576,7 +576,7 @@ TEST_CASE("Continuous low-thrust burns (ion engines)", "[hybrid][burns][continuo
SimulationState* sim = create_simulation(2, 10, 100, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_hybrid_burns.toml"));
REQUIRE(load_system_config(sim, "tests/test_hybrid_burns.toml"));
Spacecraft* craft = &sim->spacecraft[6];
CelestialBody* earth = &sim->bodies[1];
@ -636,7 +636,7 @@ TEST_CASE("Continuous multi-burn sequences", "[hybrid][burns][continuous][multi_
SimulationState* sim = create_simulation(2, 10, 100, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_hybrid_burns.toml"));
REQUIRE(load_system_config(sim, "tests/test_hybrid_burns.toml"));
Spacecraft* craft = &sim->spacecraft[7];
CelestialBody* earth = &sim->bodies[1];
@ -702,7 +702,7 @@ TEST_CASE("Continuous mode transitions during burns", "[hybrid][burns][continuou
SimulationState* sim = create_simulation(2, 10, 100, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_hybrid_burns.toml"));
REQUIRE(load_system_config(sim, "tests/test_hybrid_burns.toml"));
Spacecraft* craft = &sim->spacecraft[8];
CelestialBody* earth = &sim->bodies[1];
@ -760,7 +760,7 @@ TEST_CASE("Continuous energy conservation during burns", "[hybrid][burns][contin
SimulationState* sim = create_simulation(2, 10, 100, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_hybrid_burns.toml"));
REQUIRE(load_system_config(sim, "tests/test_hybrid_burns.toml"));
Spacecraft* craft = &sim->spacecraft[9];
CelestialBody* earth = &sim->bodies[1];
@ -839,7 +839,7 @@ TEST_CASE("Continuous accuracy of continuous vs. impulsive burns", "[hybrid][bur
SimulationState* sim = create_simulation(2, 10, 100, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_hybrid_burns.toml"));
REQUIRE(load_system_config(sim, "tests/test_hybrid_burns.toml"));
Spacecraft* craft = &sim->spacecraft[6];
CelestialBody* earth = &sim->bodies[1];
@ -889,7 +889,7 @@ TEST_CASE("Continuous propagation during burn", "[hybrid][burns][continuous][pro
SimulationState* sim = create_simulation(2, 10, 100, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_hybrid_burns.toml"));
REQUIRE(load_system_config(sim, "tests/test_hybrid_burns.toml"));
Spacecraft* craft = &sim->spacecraft[6];
CelestialBody* earth = &sim->bodies[1];
@ -971,7 +971,7 @@ TEST_CASE("Continuous numerical stability during many burn/conversion cycles", "
SimulationState* sim = create_simulation(2, 10, 100, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_hybrid_burns.toml"));
REQUIRE(load_system_config(sim, "tests/test_hybrid_burns.toml"));
Spacecraft* craft = &sim->spacecraft[6];
CelestialBody* earth = &sim->bodies[1];

0
tests/configs/test_hybrid_burns.toml → tests/test_hybrid_burns.toml

20
tests/test_hybrid_energy_conservation.cpp

@ -48,7 +48,7 @@ double get_orbital_period(double semi_major_axis, double parent_mass) {
TEST_CASE("Config loading for hybrid energy conservation", "[hybrid][energy][config]") {
SimulationState* sim = create_simulation(10, 10, 0, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_hybrid_energy_conservation.toml"));
REQUIRE(load_system_config(sim, "tests/test_hybrid_energy_conservation.toml"));
REQUIRE(sim->body_count == 2);
REQUIRE(std::string(sim->bodies[0].name) == "Sun");
@ -80,7 +80,7 @@ TEST_CASE("Config loading for hybrid energy conservation", "[hybrid][energy][con
TEST_CASE("Energy comparison for circular orbit", "[hybrid][energy][circular]") {
SimulationState* sim = create_simulation(10, 10, 0, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_hybrid_energy_conservation.toml"));
REQUIRE(load_system_config(sim, "tests/test_hybrid_energy_conservation.toml"));
Spacecraft* craft = &sim->spacecraft[0];
CelestialBody* earth = &sim->bodies[1];
@ -151,7 +151,7 @@ TEST_CASE("Energy comparison for circular orbit", "[hybrid][energy][circular]")
TEST_CASE("Energy comparison for elliptical orbit", "[hybrid][energy][elliptical]") {
SimulationState* sim = create_simulation(10, 10, 0, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_hybrid_energy_conservation.toml"));
REQUIRE(load_system_config(sim, "tests/test_hybrid_energy_conservation.toml"));
Spacecraft* craft = &sim->spacecraft[1];
CelestialBody* earth = &sim->bodies[1];
@ -222,7 +222,7 @@ TEST_CASE("Energy comparison for elliptical orbit", "[hybrid][energy][elliptical
TEST_CASE("Energy comparison for high eccentricity orbit", "[hybrid][energy][high_eccentricity]") {
SimulationState* sim = create_simulation(10, 10, 0, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_hybrid_energy_conservation.toml"));
REQUIRE(load_system_config(sim, "tests/test_hybrid_energy_conservation.toml"));
Spacecraft* craft = &sim->spacecraft[2];
CelestialBody* earth = &sim->bodies[1];
@ -293,7 +293,7 @@ TEST_CASE("Energy comparison for high eccentricity orbit", "[hybrid][energy][hig
TEST_CASE("Energy comparison for inclined orbit", "[hybrid][energy][inclined]") {
SimulationState* sim = create_simulation(10, 10, 0, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_hybrid_energy_conservation.toml"));
REQUIRE(load_system_config(sim, "tests/test_hybrid_energy_conservation.toml"));
Spacecraft* craft = &sim->spacecraft[3];
CelestialBody* earth = &sim->bodies[1];
@ -367,7 +367,7 @@ TEST_CASE("Energy comparison for inclined orbit", "[hybrid][energy][inclined]")
TEST_CASE("Energy comparison for fast orbit", "[hybrid][energy][fast]") {
SimulationState* sim = create_simulation(10, 10, 0, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_hybrid_energy_conservation.toml"));
REQUIRE(load_system_config(sim, "tests/test_hybrid_energy_conservation.toml"));
Spacecraft* craft = &sim->spacecraft[4];
CelestialBody* earth = &sim->bodies[1];
@ -431,7 +431,7 @@ TEST_CASE("Energy comparison for fast orbit", "[hybrid][energy][fast]") {
TEST_CASE("Energy comparison for slow orbit", "[hybrid][energy][slow]") {
SimulationState* sim = create_simulation(10, 10, 0, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_hybrid_energy_conservation.toml"));
REQUIRE(load_system_config(sim, "tests/test_hybrid_energy_conservation.toml"));
Spacecraft* craft = &sim->spacecraft[5];
CelestialBody* earth = &sim->bodies[1];
@ -502,7 +502,7 @@ TEST_CASE("Energy comparison for slow orbit", "[hybrid][energy][slow]") {
TEST_CASE("Pre/post burn energy validation", "[hybrid][energy][burn]") {
SimulationState* sim = create_simulation(10, 10, 0, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_hybrid_energy_conservation.toml"));
REQUIRE(load_system_config(sim, "tests/test_hybrid_energy_conservation.toml"));
SECTION("Circular orbit burn") {
Spacecraft* craft = &sim->spacecraft[0];
@ -650,7 +650,7 @@ TEST_CASE("Pre/post burn energy validation", "[hybrid][energy][burn]") {
TEST_CASE("Long-term energy drift comparison", "[hybrid][energy][long_term]") {
SimulationState* sim = create_simulation(10, 10, 0, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_hybrid_energy_conservation.toml"));
REQUIRE(load_system_config(sim, "tests/test_hybrid_energy_conservation.toml"));
Spacecraft* craft = &sim->spacecraft[1];
CelestialBody* earth = &sim->bodies[1];
@ -730,7 +730,7 @@ TEST_CASE("Long-term energy drift comparison", "[hybrid][energy][long_term]") {
TEST_CASE("Energy accuracy across orbit types", "[hybrid][energy][accuracy]") {
SimulationState* sim = create_simulation(10, 10, 0, TIME_STEP);
REQUIRE(load_system_config(sim, "tests/configs/test_hybrid_energy_conservation.toml"));
REQUIRE(load_system_config(sim, "tests/test_hybrid_energy_conservation.toml"));
const char* craft_names[] = {
"Circular_Orbit",

0
tests/configs/test_hybrid_energy_conservation.toml → tests/test_hybrid_energy_conservation.toml

Loading…
Cancel
Save