MCPcopy Create free account
hub / github.com/boostorg/histogram / main

Function main

test/array_storage_test.cpp:15–131  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

13#include <limits>
14
15int main() {
16 using namespace boost::histogram;
17
18 // ctor and reset
19 {
20 array_storage<unsigned> a;
21 BOOST_TEST_EQ(a.size(), 0);
22 a.reset(1);
23 BOOST_TEST_EQ(a.size(), 1);
24 a.increase(0);
25 BOOST_TEST_EQ(a[0], 1);
26 a.reset(1);
27 BOOST_TEST_EQ(a[0], 0);
28 }
29
30 // increase
31 {
32 array_storage<unsigned> a, b;
33 a.reset(1);
34 b.reset(1);
35 array_storage<unsigned char> c, d;
36 c.reset(1);
37 d.reset(2);
38 a.increase(0);
39 b.increase(0);
40 c.increase(0);
41 c.increase(0);
42 d.increase(0);
43 d.add(1, 5);
44 d.add(0, 2);
45 BOOST_TEST_EQ(a[0], 1);
46 BOOST_TEST_EQ(b[0], 1);
47 BOOST_TEST_EQ(c[0], 2);
48 BOOST_TEST_EQ(d[0], 3);
49 BOOST_TEST_EQ(d[1], 5);
50 BOOST_TEST(a == a);
51 BOOST_TEST(a == b);
52 BOOST_TEST(!(a == c));
53 BOOST_TEST(!(a == d));
54 }
55
56 // multiply
57 {
58 array_storage<double> a;
59 a.reset(2);
60 a.increase(0);
61 a *= 3;
62 BOOST_TEST_EQ(a[0], 3);
63 BOOST_TEST_EQ(a[1], 0);
64 a.add(1, 2);
65 BOOST_TEST_EQ(a[0], 3);
66 BOOST_TEST_EQ(a[1], 2);
67 a *= 3;
68 BOOST_TEST_EQ(a[0], 9);
69 BOOST_TEST_EQ(a[1], 6);
70 }
71
72 // copy

Callers

nothing calls this directly

Calls 7

weightFunction · 0.85
sizeMethod · 0.45
resetMethod · 0.45
increaseMethod · 0.45
addMethod · 0.45
valueMethod · 0.45
varianceMethod · 0.45

Tested by

no test coverage detected