Ignore:
Timestamp:
Sep 7, 2011, 7:17:07 PM (9 years ago)
Author:
sam
Message:

test: replace CppUnit with our LolUnit test suite.

CppUnit is really too large for our needs, would require to be precompiled
for many platforms, in all combinations of debug and release modes, with
additional variants for libstdc++ versions. We replace it with our own
lightweight implementation, LolUnit. Good riddance.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/test/matrix.cpp

    r907 r912  
    1313#endif
    1414
    15 #include <cppunit/extensions/HelperMacros.h>
    16 #include <cppunit/TestCaller.h>
    17 #include <cppunit/TestCase.h>
    18 #include <cppunit/TestSuite.h>
    19 
    2015#include "core.h"
     16#include "lol/unit.h"
    2117
    2218namespace lol
    2319{
    2420
    25 class MatrixTest : public CppUnit::TestCase
     21LOLUNIT_FIXTURE(MatrixTest)
    2622{
    27     CPPUNIT_TEST_SUITE(MatrixTest);
    28     CPPUNIT_TEST(test_vec_eq);
    29     CPPUNIT_TEST(test_vec_lt);
    30     CPPUNIT_TEST(test_vec_unary);
    31     CPPUNIT_TEST(test_vec_cast);
    32     CPPUNIT_TEST(test_mat_det);
    33     CPPUNIT_TEST(test_mat_mul);
    34     CPPUNIT_TEST(test_mat_inv);
    35     CPPUNIT_TEST_SUITE_END();
    36 
    3723public:
    38     MatrixTest() : CppUnit::TestCase("Matrix Test") {}
    39 
    4024    void setUp()
    4125    {
     
    5337    void tearDown() {}
    5438
    55     void test_vec_eq()
     39    LOLUNIT_TEST(test_vec_eq)
    5640    {
    5741        vec2 a2(1.0f, 2.0f);
     
    5943        vec2 c2(1.0f, 0.0f);
    6044
    61         CPPUNIT_ASSERT(a2 == a2);
    62         CPPUNIT_ASSERT(!(a2 != a2));
    63 
    64         CPPUNIT_ASSERT(a2 != b2);
    65         CPPUNIT_ASSERT(!(a2 == b2));
    66         CPPUNIT_ASSERT(a2 != c2);
    67         CPPUNIT_ASSERT(!(a2 == c2));
     45        LOLUNIT_ASSERT(a2 == a2);
     46        LOLUNIT_ASSERT(!(a2 != a2));
     47
     48        LOLUNIT_ASSERT(a2 != b2);
     49        LOLUNIT_ASSERT(!(a2 == b2));
     50        LOLUNIT_ASSERT(a2 != c2);
     51        LOLUNIT_ASSERT(!(a2 == c2));
    6852
    6953        vec3 a3(1.0f, 2.0f, 3.0f);
     
    7256        vec3 d3(1.0f, 2.0f, 0.0f);
    7357
    74         CPPUNIT_ASSERT(a3 == a3);
    75         CPPUNIT_ASSERT(!(a3 != a3));
    76 
    77         CPPUNIT_ASSERT(a3 != b3);
    78         CPPUNIT_ASSERT(!(a3 == b3));
    79         CPPUNIT_ASSERT(a3 != c3);
    80         CPPUNIT_ASSERT(!(a3 == c3));
    81         CPPUNIT_ASSERT(a3 != d3);
    82         CPPUNIT_ASSERT(!(a3 == d3));
     58        LOLUNIT_ASSERT(a3 == a3);
     59        LOLUNIT_ASSERT(!(a3 != a3));
     60
     61        LOLUNIT_ASSERT(a3 != b3);
     62        LOLUNIT_ASSERT(!(a3 == b3));
     63        LOLUNIT_ASSERT(a3 != c3);
     64        LOLUNIT_ASSERT(!(a3 == c3));
     65        LOLUNIT_ASSERT(a3 != d3);
     66        LOLUNIT_ASSERT(!(a3 == d3));
    8367
    8468        vec4 a4(1.0f, 2.0f, 3.0f, 4.0f);
     
    8872        vec4 e4(1.0f, 2.0f, 3.0f, 0.0f);
    8973
    90         CPPUNIT_ASSERT(a4 == a4);
    91         CPPUNIT_ASSERT(!(a4 != a4));
    92 
    93         CPPUNIT_ASSERT(a4 != b4);
    94         CPPUNIT_ASSERT(!(a4 == b4));
    95         CPPUNIT_ASSERT(a4 != c4);
    96         CPPUNIT_ASSERT(!(a4 == c4));
    97         CPPUNIT_ASSERT(a4 != d4);
    98         CPPUNIT_ASSERT(!(a4 == d4));
    99         CPPUNIT_ASSERT(a4 != e4);
    100         CPPUNIT_ASSERT(!(a4 == e4));
    101     }
    102 
    103     void test_vec_lt()
     74        LOLUNIT_ASSERT(a4 == a4);
     75        LOLUNIT_ASSERT(!(a4 != a4));
     76
     77        LOLUNIT_ASSERT(a4 != b4);
     78        LOLUNIT_ASSERT(!(a4 == b4));
     79        LOLUNIT_ASSERT(a4 != c4);
     80        LOLUNIT_ASSERT(!(a4 == c4));
     81        LOLUNIT_ASSERT(a4 != d4);
     82        LOLUNIT_ASSERT(!(a4 == d4));
     83        LOLUNIT_ASSERT(a4 != e4);
     84        LOLUNIT_ASSERT(!(a4 == e4));
     85    }
     86
     87    LOLUNIT_TEST(test_vec_lt)
    10488    {
    10589        vec2 a2(1.0f, 3.0f);
     
    11094        vec2 f2(4.0f, 4.0f);
    11195
    112         CPPUNIT_ASSERT(a2 <= a2);
    113         CPPUNIT_ASSERT(!(a2 < a2));
    114 
    115         CPPUNIT_ASSERT(!(a2 <= b2));
    116         CPPUNIT_ASSERT(!(a2 < b2));
    117         CPPUNIT_ASSERT(!(a2 <= c2));
    118         CPPUNIT_ASSERT(!(a2 < c2));
    119         CPPUNIT_ASSERT(!(a2 <= d2));
    120         CPPUNIT_ASSERT(!(a2 < d2));
    121         CPPUNIT_ASSERT(a2 <= e2);
    122         CPPUNIT_ASSERT(!(a2 < e2));
    123         CPPUNIT_ASSERT(a2 <= f2);
    124         CPPUNIT_ASSERT(a2 < f2);
    125     }
    126 
    127     void test_vec_unary()
     96        LOLUNIT_ASSERT(a2 <= a2);
     97        LOLUNIT_ASSERT(!(a2 < a2));
     98
     99        LOLUNIT_ASSERT(!(a2 <= b2));
     100        LOLUNIT_ASSERT(!(a2 < b2));
     101        LOLUNIT_ASSERT(!(a2 <= c2));
     102        LOLUNIT_ASSERT(!(a2 < c2));
     103        LOLUNIT_ASSERT(!(a2 <= d2));
     104        LOLUNIT_ASSERT(!(a2 < d2));
     105        LOLUNIT_ASSERT(a2 <= e2);
     106        LOLUNIT_ASSERT(!(a2 < e2));
     107        LOLUNIT_ASSERT(a2 <= f2);
     108        LOLUNIT_ASSERT(a2 < f2);
     109    }
     110
     111    LOLUNIT_TEST(test_vec_unary)
    128112    {
    129113        vec2 a(1.0f, 3.0f);
    130114        vec2 b(-1.0f, -3.0f);
    131115
    132         CPPUNIT_ASSERT(a == -b);
    133         CPPUNIT_ASSERT(-a == b);
    134     }
    135 
    136     void test_vec_cast()
     116        LOLUNIT_ASSERT(a == -b);
     117        LOLUNIT_ASSERT(-a == b);
     118    }
     119
     120    LOLUNIT_TEST(test_vec_cast)
    137121    {
    138122        vec2 a1(1.0f, 3.0f);
     
    140124        vec3 b(a1);
    141125        vec2 a2(b);
    142         CPPUNIT_ASSERT_EQUAL(b.x, a1.x);
    143         CPPUNIT_ASSERT_EQUAL(b.y, a1.y);
    144         CPPUNIT_ASSERT_EQUAL(b.z, 0.0f);
    145         CPPUNIT_ASSERT(a2 == a1);
     126        LOLUNIT_ASSERT_EQUAL(b.x, a1.x);
     127        LOLUNIT_ASSERT_EQUAL(b.y, a1.y);
     128        LOLUNIT_ASSERT_EQUAL(b.z, 0.0f);
     129        LOLUNIT_ASSERT(a2 == a1);
    146130
    147131        vec4 c(a1);
    148132        vec2 a3(c);
    149         CPPUNIT_ASSERT_EQUAL(c.x, a1.x);
    150         CPPUNIT_ASSERT_EQUAL(c.y, a1.y);
    151         CPPUNIT_ASSERT_EQUAL(c.z, 0.0f);
    152         CPPUNIT_ASSERT_EQUAL(c.w, 0.0f);
    153         CPPUNIT_ASSERT(a3 == a1);
    154     }
    155 
    156     void test_mat_det()
     133        LOLUNIT_ASSERT_EQUAL(c.x, a1.x);
     134        LOLUNIT_ASSERT_EQUAL(c.y, a1.y);
     135        LOLUNIT_ASSERT_EQUAL(c.z, 0.0f);
     136        LOLUNIT_ASSERT_EQUAL(c.w, 0.0f);
     137        LOLUNIT_ASSERT(a3 == a1);
     138    }
     139
     140    LOLUNIT_TEST(test_mat_det)
    157141    {
    158142        float d1 = triangular.det();
    159         CPPUNIT_ASSERT_EQUAL(d1, 24.0f);
     143        LOLUNIT_ASSERT_EQUAL(d1, 24.0f);
    160144        float d2 = invertible.det();
    161         CPPUNIT_ASSERT_EQUAL(d2, -1.0f);
    162     }
    163 
    164     void test_mat_mul()
     145        LOLUNIT_ASSERT_EQUAL(d2, -1.0f);
     146    }
     147
     148    LOLUNIT_TEST(test_mat_mul)
    165149    {
    166150        mat4 m0 = identity;
     
    168152        mat4 m2 = m0 * m1;
    169153
    170         CPPUNIT_ASSERT_EQUAL(m2[0][0], 1.0f);
    171         CPPUNIT_ASSERT_EQUAL(m2[1][0], 0.0f);
    172         CPPUNIT_ASSERT_EQUAL(m2[2][0], 0.0f);
    173         CPPUNIT_ASSERT_EQUAL(m2[3][0], 0.0f);
    174 
    175         CPPUNIT_ASSERT_EQUAL(m2[0][1], 0.0f);
    176         CPPUNIT_ASSERT_EQUAL(m2[1][1], 1.0f);
    177         CPPUNIT_ASSERT_EQUAL(m2[2][1], 0.0f);
    178         CPPUNIT_ASSERT_EQUAL(m2[3][1], 0.0f);
    179 
    180         CPPUNIT_ASSERT_EQUAL(m2[0][2], 0.0f);
    181         CPPUNIT_ASSERT_EQUAL(m2[1][2], 0.0f);
    182         CPPUNIT_ASSERT_EQUAL(m2[2][2], 1.0f);
    183         CPPUNIT_ASSERT_EQUAL(m2[3][2], 0.0f);
    184 
    185         CPPUNIT_ASSERT_EQUAL(m2[0][3], 0.0f);
    186         CPPUNIT_ASSERT_EQUAL(m2[1][3], 0.0f);
    187         CPPUNIT_ASSERT_EQUAL(m2[2][3], 0.0f);
    188         CPPUNIT_ASSERT_EQUAL(m2[3][3], 1.0f);
    189     }
    190 
    191     void test_mat_inv()
     154        LOLUNIT_ASSERT_EQUAL(m2[0][0], 1.0f);
     155        LOLUNIT_ASSERT_EQUAL(m2[1][0], 0.0f);
     156        LOLUNIT_ASSERT_EQUAL(m2[2][0], 0.0f);
     157        LOLUNIT_ASSERT_EQUAL(m2[3][0], 0.0f);
     158
     159        LOLUNIT_ASSERT_EQUAL(m2[0][1], 0.0f);
     160        LOLUNIT_ASSERT_EQUAL(m2[1][1], 1.0f);
     161        LOLUNIT_ASSERT_EQUAL(m2[2][1], 0.0f);
     162        LOLUNIT_ASSERT_EQUAL(m2[3][1], 0.0f);
     163
     164        LOLUNIT_ASSERT_EQUAL(m2[0][2], 0.0f);
     165        LOLUNIT_ASSERT_EQUAL(m2[1][2], 0.0f);
     166        LOLUNIT_ASSERT_EQUAL(m2[2][2], 1.0f);
     167        LOLUNIT_ASSERT_EQUAL(m2[3][2], 0.0f);
     168
     169        LOLUNIT_ASSERT_EQUAL(m2[0][3], 0.0f);
     170        LOLUNIT_ASSERT_EQUAL(m2[1][3], 0.0f);
     171        LOLUNIT_ASSERT_EQUAL(m2[2][3], 0.0f);
     172        LOLUNIT_ASSERT_EQUAL(m2[3][3], 1.0f);
     173    }
     174
     175    LOLUNIT_TEST(test_mat_inv)
    192176    {
    193177        mat4 m0 = invertible;
     
    196180        mat4 m2 = m0 * m1;
    197181
    198         CPPUNIT_ASSERT_EQUAL(m2[0][0], 1.0f);
    199         CPPUNIT_ASSERT_EQUAL(m2[1][0], 0.0f);
    200         CPPUNIT_ASSERT_EQUAL(m2[2][0], 0.0f);
    201         CPPUNIT_ASSERT_EQUAL(m2[3][0], 0.0f);
    202 
    203         CPPUNIT_ASSERT_EQUAL(m2[0][1], 0.0f);
    204         CPPUNIT_ASSERT_EQUAL(m2[1][1], 1.0f);
    205         CPPUNIT_ASSERT_EQUAL(m2[2][1], 0.0f);
    206         CPPUNIT_ASSERT_EQUAL(m2[3][1], 0.0f);
    207 
    208         CPPUNIT_ASSERT_EQUAL(m2[0][2], 0.0f);
    209         CPPUNIT_ASSERT_EQUAL(m2[1][2], 0.0f);
    210         CPPUNIT_ASSERT_EQUAL(m2[2][2], 1.0f);
    211         CPPUNIT_ASSERT_EQUAL(m2[3][2], 0.0f);
    212 
    213         CPPUNIT_ASSERT_EQUAL(m2[0][3], 0.0f);
    214         CPPUNIT_ASSERT_EQUAL(m2[1][3], 0.0f);
    215         CPPUNIT_ASSERT_EQUAL(m2[2][3], 0.0f);
    216         CPPUNIT_ASSERT_EQUAL(m2[3][3], 1.0f);
     182        LOLUNIT_ASSERT_EQUAL(m2[0][0], 1.0f);
     183        LOLUNIT_ASSERT_EQUAL(m2[1][0], 0.0f);
     184        LOLUNIT_ASSERT_EQUAL(m2[2][0], 0.0f);
     185        LOLUNIT_ASSERT_EQUAL(m2[3][0], 0.0f);
     186
     187        LOLUNIT_ASSERT_EQUAL(m2[0][1], 0.0f);
     188        LOLUNIT_ASSERT_EQUAL(m2[1][1], 1.0f);
     189        LOLUNIT_ASSERT_EQUAL(m2[2][1], 0.0f);
     190        LOLUNIT_ASSERT_EQUAL(m2[3][1], 0.0f);
     191
     192        LOLUNIT_ASSERT_EQUAL(m2[0][2], 0.0f);
     193        LOLUNIT_ASSERT_EQUAL(m2[1][2], 0.0f);
     194        LOLUNIT_ASSERT_EQUAL(m2[2][2], 1.0f);
     195        LOLUNIT_ASSERT_EQUAL(m2[3][2], 0.0f);
     196
     197        LOLUNIT_ASSERT_EQUAL(m2[0][3], 0.0f);
     198        LOLUNIT_ASSERT_EQUAL(m2[1][3], 0.0f);
     199        LOLUNIT_ASSERT_EQUAL(m2[2][3], 0.0f);
     200        LOLUNIT_ASSERT_EQUAL(m2[3][3], 1.0f);
    217201    }
    218202
     
    221205};
    222206
    223 CPPUNIT_TEST_SUITE_REGISTRATION(MatrixTest);
     207LOLUNIT_SETUP_FIXTURE(MatrixTest);
    224208
    225209} /* namespace lol */
Note: See TracChangeset for help on using the changeset viewer.