using Test, Flux, LinearAlgebra include("../src/Orbits.jl") using .Orbits #= The purpose of this document is to organize tests of the state structs and state transition functions =# @testset "States and Physical models testing" verbose=true begin n_const = 2 n_debr = 3 n_data = 5 #built structs u = UniformDataConstructor(n_data,0,5,2,3) s = u(n_const,n_debr) b = BasicPhysics( 0.05 ,0.02*LinearAlgebra.ones(n_const,n_const) ,0.1 ,0.002 ,0.002 ,0.2 ) a2 = ones(n_const,n_data) #test that dimensions match etc @test size(b.satellite_collision_rates)[1] == size(s.stocks)[1] @test size(b.satellite_collision_rates)[2] == size(s.stocks)[1] @test n_data == size(s.stocks)[2] @test n_data == size(s.debris)[2] @test size(s.stocks) == size(a2) @testset "DataConstructor and states" begin @test u.N == 5 @test length(s.debris) != 3 @test length(s.stocks) != 2 @test length(s.stocks) == 10 @test length(s.debris) == 15 @test size(s.stocks) == (2,5) @test size(s.debris) == (3,5) end @testset "BasicPhysics" begin @testset "Survival Functions" verbose = true begin @test survival_rates_1(s,b) <: AbstractArray end @testset "Transitions" begin @test true end end end #States and physcial models testing