82 lines
1.6 KiB
C++
82 lines
1.6 KiB
C++
/*
|
|
#if GTEST
|
|
#include <gtest/gtest.h>
|
|
|
|
#include <math.h>
|
|
#include <limits>
|
|
|
|
#include "Angle.h"
|
|
// #include "Angle16.h"
|
|
// #include "Angle8.h"
|
|
|
|
#define FLOAT_INFINITY std::numeric_limits<float>::infinity()
|
|
|
|
TEST(Angle8, Construct) {
|
|
float angle = 0.0F;
|
|
Angle8 a = Angle8::Degrees(angle);
|
|
EXPECT_FLOAT_EQ(a.InDegrees(), angle);
|
|
|
|
angle = -180.0F;
|
|
a = Angle8::Degrees(angle);
|
|
EXPECT_FLOAT_EQ(a.InDegrees(), angle);
|
|
}
|
|
|
|
TEST(Angle8, Negate) {
|
|
float angle = 0;
|
|
Angle8 a = Angle8::Degrees(angle);
|
|
a = -a;
|
|
EXPECT_FLOAT_EQ(a.InDegrees(), angle);
|
|
|
|
angle = 90.0F;
|
|
a = Angle8::Degrees(angle);
|
|
a = -a;
|
|
EXPECT_FLOAT_EQ(a.InDegrees(), -angle);
|
|
}
|
|
|
|
TEST(Angle8, Add) {
|
|
Angle8 a = Angle8::Degrees(-45);
|
|
Angle8 b = Angle8::Degrees(45.0F);
|
|
Angle8 r = a + b;
|
|
EXPECT_FLOAT_EQ(r.InDegrees(), 0);
|
|
}
|
|
|
|
TEST(Angle8, Subtract) {
|
|
Angle8 a = Angle8::Degrees(0);
|
|
Angle8 b = Angle8::Degrees(45.0F);
|
|
Angle8 r = a - b;
|
|
EXPECT_FLOAT_EQ(r.InDegrees(), -45);
|
|
}
|
|
|
|
TEST(Angle16, Construct) {
|
|
Angle16 a = Angle16::Degrees(0.0F);
|
|
EXPECT_FLOAT_EQ(a.InDegrees(), 0);
|
|
}
|
|
|
|
TEST(Angle16, Negate) {
|
|
float angle = 0;
|
|
Angle16 a = Angle16::Degrees(angle);
|
|
a = -a;
|
|
EXPECT_FLOAT_EQ(a.InDegrees(), angle);
|
|
|
|
angle = 90.0F;
|
|
a = Angle16::Degrees(angle);
|
|
a = -a;
|
|
EXPECT_FLOAT_EQ(a.InDegrees(), -angle);
|
|
}
|
|
|
|
TEST(Angle16, Subtract) {
|
|
Angle16 a = Angle16::Degrees(0);
|
|
Angle16 b = Angle16::Degrees(45.0F);
|
|
Angle16 r = a - b;
|
|
EXPECT_FLOAT_EQ(r.InDegrees(), -45);
|
|
}
|
|
|
|
TEST(Angle16, Add) {
|
|
Angle16 a = Angle16::Degrees(-45);
|
|
Angle16 b = Angle16::Degrees(45.0F);
|
|
Angle16 r = a + b;
|
|
EXPECT_FLOAT_EQ(r.InDegrees(), 0);
|
|
}
|
|
|
|
#endif
|
|
*/ |