using AstroHelper using Test import AstroHelper @testset "Quaternion Initialization" begin @test Quaternion().r == 1.0 @test Quaternion([0,0,0,1]) == Quaternion() @test Quaternion([0 0 0], 0) == Quaternion() @test Quaternion([1 -2 2], (-2 * pi / 3)) ≈ Quaternion([-sqrt(3) / 6, sqrt(3) / 3, -sqrt(3) / 3, 1 / 2]) # Roll of pi/2 @test Quaternion(0, 0, pi / 2) ≈ Quaternion([1 0 0], pi / 2) @test_throws ErrorException Quaternion(1, 2, 3, 4) end @testset "Quaternion Math" begin # Quaternion Multiplication is not Communitive. # @test Quaternion() * Quaternion([0 1 0 0]) != Quaternion([0 1 0 0]) * Quaternion() end