1 #define BOOST_TEST_DYN_LINK
2 #define BOOST_TEST_MODULE test_annotation_color
3 #include <boost/test/unit_test.hpp>
5 #include "alg/annotation_colors.hpp"
6 #include "alg/color.hpp"
8 BOOST_AUTO_TEST_CASE( simple_annot_colors )
10 Color black(0.0, 0.0, 0.0);
11 Color white(1.0, 1.0, 1.0);
12 Color red(1.0, 0.0, 0.0);
17 BOOST_CHECK_EQUAL( ac.color(), white);
19 ac.appendTypeColor("bleem", black);
20 BOOST_CHECK_EQUAL( ac.typeColor("bleem"), black );
21 // FIXME: it'd be nice if something like this worked?
22 //BOOST_CHECK_RAISES( ac.typeColor("not found"), not_found );
23 ac.appendInstanceColor("bleem", "a", red);
24 BOOST_CHECK_EQUAL( ac.instanceColor("bleem", "a"), red);
26 BOOST_CHECK_EQUAL( ac.lookup("bleem", "a"), red );
27 BOOST_CHECK_EQUAL( ac.lookup("bleem", "foo"), black );
28 BOOST_CHECK_EQUAL( ac.lookup("venchent", "a"), white );
31 // Removed as we're phasing out the annot and annotation colors classes
38 BOOST_CHECK_EQUAL( ac.lookup(a), red );
40 BOOST_CHECK_EQUAL( ac.lookup(a), black );
42 BOOST_CHECK_EQUAL( ac.lookup(a), white );
46 BOOST_CHECK_EQUAL( ac.lookup("bleem", "a"), black);
49 // can we assign a color?
50 BOOST_AUTO_TEST_CASE( annotation_color_assignment )
52 Color black(0.0, 0.0, 0.0);
53 Color white(1.0, 1.0, 1.0);
54 Color red(1.0, 0.0, 0.0);
58 ac1.appendTypeColor("bleem", black);
59 ac1.appendInstanceColor("bleem", "a", red);
62 BOOST_CHECK_EQUAL( ac2.color(), black );
64 BOOST_CHECK_EQUAL( ac2.color(), white );
65 BOOST_CHECK_EQUAL( ac2.typeColor("bleem"), ac1.typeColor("bleem") );
66 BOOST_CHECK_EQUAL( ac2.lookup("bleem","a"), ac1.lookup("bleem","a") );