6988ac696303dc0d57ff1cc7a7c4a5aee0de5ab3
[ptas] / tests / ut_kkj / ut_kkj.cpp
1 #include "kkj.h"
2
3 #include <gmock/gmock.h>
4 #include <gtest/gtest.h>
5
6 #include "stlhelpers.h"
7
8 class KKJTest : public ::testing::Test
9 {
10 public:
11     const unsigned int northing;
12     const unsigned int easting;
13
14     KKJTest() :
15         northing(6682815),
16         easting(2556686)
17     {
18     }
19 };
20
21 TEST_F(KKJTest, ConstructorValuesReceivedViaGetters)
22 {
23     KKJ kkj(northing , easting);
24     ASSERT_EQ(northing, kkj.northing());
25     ASSERT_EQ(easting, kkj.easting());
26 }
27
28 TEST_F(KKJTest, EqualsOperatorReturnsTrueForEqualCoordinates)
29 {
30     KKJ kkj1(northing, easting);
31     KKJ kkj2(northing, easting);
32     ASSERT_TRUE(kkj1 == kkj2);
33 }
34
35 TEST_F(KKJTest, EqualsOperatorReturnsFalseForCoordinatesWithDifferentNorthing)
36 {
37     KKJ kkj1(northing - 1, easting);
38     KKJ kkj2(northing, easting);
39     ASSERT_FALSE(kkj1 == kkj2);
40 }
41
42 TEST_F(KKJTest, EqualsOperatorReturnsFalseForCoordinatesWithDifferentEasting)
43 {
44     KKJ kkj1(northing, easting - 1);
45     KKJ kkj2(northing, easting);
46     ASSERT_FALSE(kkj1 == kkj2);
47 }
48
49 TEST_F(KKJTest, AssignmentOperator)
50 {
51     const KKJ kkj1(northing, easting);
52     KKJ kkj2(0, 0);
53     kkj2 = kkj1;
54     ASSERT_EQ(northing, kkj2.northing());
55     ASSERT_EQ(easting, kkj2.easting());
56 }
57
58 int main(int argc, char *argv[])
59 {
60     ::testing::InitGoogleMock(&argc, argv);
61     return RUN_ALL_TESTS();
62 }