// File: /workspace/github_cpp_makefile_star2_O2/philipperemy[P]digital-setting-circles/Test.cpp
// Function: Test::test_StarData()
void Test::test_StarData()
{
    setUpErrorMessage("test_ValidateStarData() - failed");

    StarData starData;

    assertTrue(!starDataNamespace::validStarData(starData));

    assertNan(starData.az);
    assertNan(starData.el);
    assertNan(starData.ra);
    assertNan(starData.dec);
    assertNan(starData.time);
    assertEquals(0.0, starData.time);

    starData.az = 1;
    starData.el = 2;
    starData.ra = 3;
    starData.dec = 4;
    starData.time = 5;

    assertTrue(starDataNamespace::validStarData(starData));

    assertEquals(1.0, starData.az);
    assertEquals(2.0, starData.el);
    assertEquals(3.0, starData.ra);
    assertEquals(4.0, starData.dec);
    assertEquals(5.0, starData.time);

    starData.clearData();

    assertTrue(!starDataNamespace::validStarData(starData));

    assertNan(starData.az);
    assertNan(starData.el);
    assertEquals(3.0, starData.ra);
    assertEquals(4.0, starData.dec);
    assertNan(starData.time);
    assertEquals(0.0, starData.time);

}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r14
pushq %rbx
subq $0x50, %rsp
movq %rdi, %rbx
leaq 0x9fea(%rip), %rsi      # 0x25c8b
leaq -0x60(%rbp), %rdi
leaq -0x40(%rbp), %rdx
callq 0x4ce2
leaq -0x60(%rbp), %rsi
movq %rbx, %rdi
callq 0x1df6c
leaq -0x60(%rbp), %rdi
callq 0x3100
leaq -0x40(%rbp), %r14
movq %r14, %rdi
callq 0x1bb80
movq %r14, %rdi
callq 0x1dcc1
xorb $0x1, %al
movzbl %al, %esi
movq %rbx, %rdi
callq 0x1e196
movsd -0x38(%rbp), %xmm0
movq %rbx, %rdi
callq 0x1df76
movsd -0x30(%rbp), %xmm0
movq %rbx, %rdi
callq 0x1df76
movsd -0x28(%rbp), %xmm0
movq %rbx, %rdi
callq 0x1df76
movsd -0x20(%rbp), %xmm0
movq %rbx, %rdi
callq 0x1df76
movsd -0x18(%rbp), %xmm0
movq %rbx, %rdi
callq 0x1df76
movsd -0x18(%rbp), %xmm1
xorps %xmm0, %xmm0
movq %rbx, %rdi
callq 0x1e2a6
movabsq $0x3ff0000000000000, %rax # imm = 0x3FF0000000000000
leaq -0x40(%rbp), %rdi
movq %rax, 0x8(%rdi)
movabsq $0x4000000000000000, %rax # imm = 0x4000000000000000
movq %rax, 0x10(%rdi)
movabsq $0x4008000000000000, %rax # imm = 0x4008000000000000
movq %rax, 0x18(%rdi)
movabsq $0x4010000000000000, %rax # imm = 0x4010000000000000
movq %rax, 0x20(%rdi)
movabsq $0x4014000000000000, %rax # imm = 0x4014000000000000
movq %rax, 0x28(%rdi)
callq 0x1dcc1
movzbl %al, %esi
movq %rbx, %rdi
callq 0x1e196
movsd -0x38(%rbp), %xmm1
movsd 0x4274(%rip), %xmm0     # 0x20010
movq %rbx, %rdi
callq 0x1e2a6
movsd -0x30(%rbp), %xmm1
movsd 0x9ca7(%rip), %xmm0     # 0x25a58
movq %rbx, %rdi
callq 0x1e2a6
movsd -0x28(%rbp), %xmm1
movsd 0x9c9a(%rip), %xmm0     # 0x25a60
movq %rbx, %rdi
callq 0x1e2a6
movsd -0x20(%rbp), %xmm1
movsd 0x9c8d(%rip), %xmm0     # 0x25a68
movq %rbx, %rdi
callq 0x1e2a6
movsd -0x18(%rbp), %xmm1
movsd 0x9c80(%rip), %xmm0     # 0x25a70
movq %rbx, %rdi
callq 0x1e2a6
leaq -0x40(%rbp), %rdi
callq 0x1bbac
leaq -0x40(%rbp), %rdi
callq 0x1dcc1
xorb $0x1, %al
movzbl %al, %esi
movq %rbx, %rdi
callq 0x1e196
movsd -0x38(%rbp), %xmm0
movq %rbx, %rdi
callq 0x1df76
movsd -0x30(%rbp), %xmm0
movq %rbx, %rdi
callq 0x1df76
movsd -0x28(%rbp), %xmm1
movsd 0x9c22(%rip), %xmm0     # 0x25a60
movq %rbx, %rdi
callq 0x1e2a6
movsd -0x20(%rbp), %xmm1
movsd 0x9c15(%rip), %xmm0     # 0x25a68
movq %rbx, %rdi
callq 0x1e2a6
movsd -0x18(%rbp), %xmm0
movq %rbx, %rdi
callq 0x1df76
movsd -0x18(%rbp), %xmm1
xorps %xmm0, %xmm0
movq %rbx, %rdi
callq 0x1e2a6
leaq -0x40(%rbp), %rdi
callq 0x1bba6
addq $0x50, %rsp
popq %rbx
popq %r14
popq %rbp
retq
movq %rax, %rbx
leaq -0x60(%rbp), %rdi
callq 0x3100
jmp 0x1bea9
movq %rax, %rbx
jmp 0x1bea9
movq %rax, %rbx
leaq -0x40(%rbp), %rdi
callq 0x1bba6
movq %rbx, %rdi
callq 0x34a0
nop