TEST(Transformable_objects, can_be_moved) { Transformable t; EXPECT_EQ(vec3(0,0,0), t.position()); t.moveTo(1,1,1); EXPECT_EQ(vec3(1,1,1), t.position()); t.moveTo(vec3(5,5,5)); EXPECT_EQ(vec3(5,5,5), t.position()); t.move(vec3(-1,-1,-1), 3); EXPECT_EQ(vec3(2,2,2), t.position()); }
TEST(Transformable_objects, have_a_position_rotation_and_scaling) { Transformable t; EXPECT_EQ(vec3(0,0,0), t.position()); EXPECT_EQ(vec3(1,1,1), t.scaling()); EXPECT_EQ(quat(0,0,0,1), t.rotation()); }
TEST(Transformable_objects, can_be_aligned_with_direction_using_alignWith) { Transformable t; t.moveTo(5,5,5); vec3 direction(1,0,-1); t.alignWith(direction); EXPECT_EQ(normalize(direction), t.forward()); EXPECT_EQ(vec3(5,5,5), t.position()); }