support multiply and test it

This commit is contained in:
Hans Dembinski
2017-11-05 22:18:58 +01:00
parent b7d5350a64
commit 371cbc9385
5 changed files with 53 additions and 15 deletions

View File

@@ -47,6 +47,27 @@ int main() {
BOOST_TEST(!(a == d));
}
// multiply
{
array_storage<unsigned> a(2);
a.increase(0);
a *= 3;
BOOST_TEST_EQ(a.value(0), 3.0);
BOOST_TEST_EQ(a.variance(0), 3.0);
BOOST_TEST_EQ(a.value(1), 0.0);
BOOST_TEST_EQ(a.variance(1), 0.0);
a.add(1, 2.0, 5.0); // 5.0 is intentionally ignored
BOOST_TEST_EQ(a.value(0), 3.0);
BOOST_TEST_EQ(a.variance(0), 3.0);
BOOST_TEST_EQ(a.value(1), 2.0);
BOOST_TEST_EQ(a.variance(1), 2.0);
a *= 3;
BOOST_TEST_EQ(a.value(0), 9.0);
BOOST_TEST_EQ(a.variance(0), 9.0);
BOOST_TEST_EQ(a.value(1), 6.0);
BOOST_TEST_EQ(a.variance(1), 6.0);
}
// copy
{
array_storage<unsigned> a(1);