File: test_datapoint.cpp

package info (click to toggle)
libpappsomspp 0.11.4-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 18,032 kB
  • sloc: cpp: 78,332; xml: 44,164; python: 668; sql: 186; sh: 33; makefile: 31
file content (97 lines) | stat: -rw-r--r-- 2,260 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97

#include <catch2/catch_test_macros.hpp>
// #include <catch2/catch_approx.hpp>


#include <QDebug>

#include <pappsomspp/core/trace/datapoint.h>

using namespace pappso;

TEST_CASE("Construct a non-initialized DataPoint.", "[DataPoint]")
{

  DataPoint invalid_data_point;
  REQUIRE(invalid_data_point.isValid() == false);
}


TEST_CASE("Construct DataPoint_s initialized in various ways.",
          "[DataPoint][constructors]")
{

  DataPoint datapoint1(12345.123456789, 987.987654321);

  REQUIRE(datapoint1.x == 12345.123456789);
  REQUIRE(datapoint1.y == 987.987654321);

  REQUIRE(datapoint1.isValid() == true);

  DataPoint datapoint2(datapoint1);

  REQUIRE(datapoint2.x == 12345.123456789);
  REQUIRE(datapoint2.y == 987.987654321);

  std::pair<double, double> xy_pair(12345.123456789, 987.987654321);

  DataPoint datapoint3(xy_pair);

  REQUIRE(datapoint3.x == 12345.123456789);
  REQUIRE(datapoint3.y == 987.987654321);

  datapoint3.initialize(456.6, 987.54);

  REQUIRE(datapoint3.x == 456.6);
  REQUIRE(datapoint3.y == 987.54);

  datapoint3.initialize(datapoint1);

  REQUIRE(datapoint3.x == 12345.123456789);
  REQUIRE(datapoint3.y == 987.987654321);

  // comma-separated values
  QString text1("1234.456789, 9876.54321");
  DataPoint datapoint4;

  datapoint4.initialize(text1);

  REQUIRE(datapoint4.x == 1234.456789);
  REQUIRE(datapoint4.y == 9876.54321);

  // space-separated values
  QString text2("1234.45 987.54");

  datapoint4.initialize(text2);

  REQUIRE(datapoint4.x == 1234.45);
  REQUIRE(datapoint4.y == 987.54);

  DataPoint datapoint_copy = datapoint4;
  REQUIRE(datapoint_copy.x == 1234.45);
  REQUIRE(datapoint_copy.y == 987.54);

  datapoint4.incrementX(5.123466);
  REQUIRE(datapoint4.x == (1234.45 + 5.123466));

  datapoint4.incrementY(8.123466);
  REQUIRE(datapoint4.y == (987.54 + 8.123466));
}

TEST_CASE("Basic functionality of DataPoint", "[DataPoint]")
{
  // Construct a DataPoint
  DataPoint datapoint1(12345.123456789, 987.987654321);

  SECTION("Reset a DataPoint", "[DataPoint]")
  {
    datapoint1.reset();
    REQUIRE(datapoint1.isValid() == false);
  }

  SECTION("Test identity of two DataPoint_s.", "[DataPoint]")
  {
    DataPoint datapoint2(datapoint1);
    REQUIRE(datapoint2 == datapoint1);
  }
}