"git@code.ornl.gov:mantidproject/mantid.git" did not exist on "384c6687963f5b9ce9e8f8237e4ab4cafa8469c9"
Newer
Older
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
#ifndef MANTID_KERNEL_HISTOGRAM_HISTOGRAMDATATEST_H_
#define MANTID_KERNEL_HISTOGRAM_HISTOGRAMDATATEST_H_
#include <cxxtest/TestSuite.h>
#include "MantidKernel/Histogram/HistogramData.h"
#include "MantidKernel/make_cow.h"
using Mantid::Kernel::HistogramData;
using Mantid::Kernel::make_cow;
struct HistogramDataTester : public HistogramData<HistogramDataTester> {
using HistogramData<HistogramDataTester>::HistogramData;
};
class HistogramHistogramDataTest : public CxxTest::TestSuite {
public:
// This pair of boilerplate methods prevent the suite being created statically
// This means the constructor isn't called when running other tests
static HistogramHistogramDataTest *createSuite() {
return new HistogramHistogramDataTest();
}
static void destroySuite(HistogramHistogramDataTest *suite) { delete suite; }
void test_constructor() {
TS_ASSERT_THROWS_NOTHING(
HistogramDataTester data(make_cow<std::vector<double>>(0)));
}
void test_constructor_fail() {
TS_ASSERT_THROWS(HistogramDataTester data(nullptr), std::logic_error);
}
void test_operator_bool() {
HistogramDataTester data(make_cow<std::vector<double>>(0));
TS_ASSERT(data);
}
void test_size() {
HistogramDataTester data0(make_cow<std::vector<double>>(0));
TS_ASSERT_EQUALS(data0.size(), 0);
HistogramDataTester data1(make_cow<std::vector<double>>(1));
TS_ASSERT_EQUALS(data1.size(), 1);
}
void test_const_index_operator() {
const HistogramDataTester data(
make_cow<std::vector<double>>(std::vector<double>{0.1, 0.2}));
const auto copy(data);
TS_ASSERT_EQUALS(&data[0], ©[0]);
TS_ASSERT_EQUALS(data[0], 0.1);
TS_ASSERT_EQUALS(data[1], 0.2);
}
void test_index_operator() {
HistogramDataTester data(
make_cow<std::vector<double>>(std::vector<double>{0.1, 0.2}));
const auto copy(data);
TS_ASSERT_DIFFERS(&data[0], ©[0]);
TS_ASSERT_EQUALS(data[0], 0.1);
TS_ASSERT_EQUALS(data[1], 0.2);
}
};
#endif /* MANTID_KERNEL_HISTOGRAM_HISTOGRAMDATATEST_H_ */