|
| 1 | +from demosys.test import DemosysTestCase |
| 2 | +from demosys.effects.registry import effects |
| 3 | +from demosys.effects import Effect |
| 4 | +from demosys.scene import camera |
| 5 | + |
| 6 | + |
| 7 | +class EffectTestCase(DemosysTestCase): |
| 8 | + |
| 9 | + def setUp(self): |
| 10 | + Effect._ctx = self.ctx |
| 11 | + Effect._window_width = self.window.width |
| 12 | + Effect._window_height = self.window.height |
| 13 | + Effect._window_aspect = self.window.width / self.window.height |
| 14 | + Effect._sys_camera = camera.SystemCamera() |
| 15 | + |
| 16 | + effects.polulate(['tests']) |
| 17 | + self.effect = effects.effects.get('tests.effect').cls() |
| 18 | + |
| 19 | + def test_properties(self): |
| 20 | + self.assertEqual(self.effect.name, 'tests') |
| 21 | + self.assertEqual(self.effect.window_width, self.window.width) |
| 22 | + self.assertEqual(self.effect.window_height, self.window.height) |
| 23 | + self.assertEqual(self.effect.window_size, self.window.size) |
| 24 | + self.assertEqual(self.effect.window_aspect, self.window.width / self.window.height) |
| 25 | + self.assertEqual(self.effect.ctx, self.ctx) |
| 26 | + self.assertIsInstance(self.effect.sys_camera, camera.SystemCamera) |
| 27 | + self.assertEqual(self.effect.effect_name, 'tests') |
| 28 | + |
| 29 | + def test_methods(self): |
| 30 | + self.effect.post_load() |
| 31 | + self.effect.draw(0, 0, None) |
| 32 | + |
| 33 | + def test_resources(self): |
| 34 | + self.assertIsNotNone(self.effect.get_shader('vf_pos.glsl')) |
| 35 | + self.assertIsNotNone(self.effect.get_texture('crate.jpg')) |
| 36 | + self.assertIsNotNone(self.effect.get_scene('BoxTextured/glTF/BoxTextured.gltf')) |
| 37 | + self.assertIsNotNone(self.effect.get_data('data.txt', mode="text")) |
| 38 | + |
| 39 | + def test_misc_methods(self): |
| 40 | + self.effect.create_projection() |
| 41 | + self.effect.create_transformation() |
0 commit comments