local positionedClass = lib "class" ("TestPosition") positionedClass:include(mixin "Position") TestPosition = {} function TestPosition:setUp() self.instance = positionedClass:new() end function TestPosition:testGetXFailsIfNoValue() assertError(function() self.instance:getX() end) end function TestPosition:testGetPositionFailsIfOneCoordinateMissing() self.instance:setX(0) self.instance:setY(0) self.instance:setPosition(0, 0, nil) assertError(function() self.instance:getPosition() end) end function TestPosition:testGetX() local x = 2.0 self.instance:setX(x) assertEquals(self.instance:getX(), x) local y = 4.0 self.instance:setPosition(x, y, 0) assertEquals(self.instance:getY(), 4.0) end