Skip to content

Commit fe8c896

Browse files
committed
Added more vec4 tests.
1 parent 7f09657 commit fe8c896

3 files changed

Lines changed: 41 additions & 10 deletions

File tree

src/vec4.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,11 +22,11 @@ ucm::vec4::vec4(){
2222
this->w = 0.0f;
2323
}
2424

25-
ucm::vec4::vec4(float x, float y, float z, float t){
25+
ucm::vec4::vec4(float x, float y, float z, float w){
2626
this->x = x;
2727
this->y = y;
2828
this->z = z;
29-
this->w = t;
29+
this->w = w;
3030
}
3131

3232
bool ucm::vec4::operator==(vec4 rhs) {
@@ -191,7 +191,7 @@ string ucm::vec4::toString(void) {
191191
sprintf(float_buffer, "%f", this->z);
192192
strcat(c_string, float_buffer);
193193

194-
strcat(c_string,", t: ");
194+
strcat(c_string,", w: ");
195195
sprintf(float_buffer, "%f", this->w);
196196
strcat(c_string, float_buffer);
197197

tests/vec3.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ BOOST_AUTO_TEST_CASE(test_array_access) {
7676
BOOST_CHECK(v[0] == v.x);
7777
BOOST_CHECK(v[1] == v.y);
7878
BOOST_CHECK(v[2] == v.z);
79-
BOOST_CHECK(v[3] != v[3]);
79+
BOOST_CHECK(v[3] != v[3]); //Checking for NAN
8080
}
8181

8282
/* Scalar Arithmetic */

tests/vec4.cpp

Lines changed: 37 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,23 @@ static vec4 unit_w(0.0f, 0.0f, 0.0f, 1.0f);
2626
static vec4 ones(1.0f, 1.0f, 1.0f, 1.0f);
2727
static vec4 zeros(0.0f, 0.0f, 0.0f, 0.0f);
2828

29+
/* Constructors */
30+
BOOST_AUTO_TEST_CASE(test_empty_constructor) {
31+
vec4 v;
32+
BOOST_CHECK(v.x == 0.0f);
33+
BOOST_CHECK(v.y == 0.0f);
34+
BOOST_CHECK(v.z == 0.0f);
35+
BOOST_CHECK(v.w == 0.0f);
36+
}
37+
38+
BOOST_AUTO_TEST_CASE(test_populated_constructor) {
39+
vec4 v(62.92f,38.82f,52.70f,82.72f);
40+
BOOST_CHECK(v.x == 62.92f);
41+
BOOST_CHECK(v.y == 38.82f);
42+
BOOST_CHECK(v.z == 52.70f);
43+
BOOST_CHECK(v.w == 82.72f);
44+
}
45+
2946
/* Accessing fields */
3047
BOOST_AUTO_TEST_CASE(test_x) {
3148
vec4 v(62.92f,38.82f,52.70f,37.97f);
@@ -47,6 +64,15 @@ BOOST_AUTO_TEST_CASE(test_w) {
4764
BOOST_CHECK(v.w == 37.97f);
4865
}
4966

67+
BOOST_AUTO_TEST_CASE(test_array_access) {
68+
vec4 v = vec4(1.0f, 2.0f, 3.0f, 4.0f);
69+
BOOST_CHECK(v[0] == v.x);
70+
BOOST_CHECK(v[1] == v.y);
71+
BOOST_CHECK(v[2] == v.z);
72+
BOOST_CHECK(v[3] == v.w);
73+
BOOST_CHECK(v[4] != v[4]);
74+
}
75+
5076
/* Scalar Arithmetic */
5177
BOOST_AUTO_TEST_CASE(test_scalar_add) {
5278
BOOST_CHECK(zeros + 1.0f == ones);
@@ -122,12 +148,17 @@ BOOST_AUTO_TEST_CASE(test_shorthand_vector_subtract) {
122148
}
123149

124150
/* Miscellaneous */
125-
BOOST_AUTO_TEST_CASE(test_array_access) {
126-
vec4 v = vec4(1.0f, 2.0f, 3.0f, 4.0f);
127-
BOOST_CHECK(v[0] == v.x);
128-
BOOST_CHECK(v[1] == v.y);
129-
BOOST_CHECK(v[2] == v.z);
130-
BOOST_CHECK(v[3] == v.w);
151+
BOOST_AUTO_TEST_CASE(test_length) {
152+
vec4 v = vec4(6.0f, 6.0f, 7.0f, 0.0f);
153+
BOOST_CHECK(v.length() == 11.0f);
154+
}
155+
156+
BOOST_AUTO_TEST_CASE(test_tostring) {
157+
vec4 v = vec4(6.0f, 6.0f, 7.0f, 8.0f);
158+
BOOST_CHECK(
159+
v.toString() ==
160+
"(x: 6.000000, y: 6.000000, z: 7.000000, w: 8.000000)"
161+
);
131162
}
132163

133164
BOOST_AUTO_TEST_SUITE_END()

0 commit comments

Comments
 (0)