diff options
author | Sybren A. Stüvel <sybren@stuvel.eu> | 2017-04-25 19:03:54 +0300 |
---|---|---|
committer | Sybren A. Stüvel <sybren@stuvel.eu> | 2017-04-26 11:42:20 +0300 |
commit | dba6e170c4c0b156d367595a11860a38a2fd2f83 (patch) | |
tree | 5de9a8d13b2ffd4f3421b15253be42855f70acb0 /tests/python | |
parent | 9623d93f14155cc4a1188385bb60845c5ac9d50a (diff) |
Alembic import: added unit test for mesh deformation.
Diffstat (limited to 'tests/python')
-rw-r--r-- | tests/python/bl_alembic_import_test.py | 28 |
1 files changed, 27 insertions, 1 deletions
diff --git a/tests/python/bl_alembic_import_test.py b/tests/python/bl_alembic_import_test.py index 3e12cc0a844..ef5ae372333 100644 --- a/tests/python/bl_alembic_import_test.py +++ b/tests/python/bl_alembic_import_test.py @@ -85,7 +85,7 @@ class SimpleImportTest(unittest.TestCase): for ob in bpy.data.objects: self.assertEqual('Cube' in ob.name, ob.select) - def test_change_path(self): + def test_change_path_constraint(self): import math fname = 'cube-rotating1.abc' @@ -122,6 +122,32 @@ class SimpleImportTest(unittest.TestCase): self.assertAlmostEqual(y, 0) self.assertAlmostEqual(z, 0) + def test_change_path_modifier(self): + import math + + fname = 'animated-mesh.abc' + abc = self.testdir / fname + relpath = bpy.path.relpath(str(abc)) + + res = bpy.ops.wm.alembic_import(filepath=str(abc), as_background_job=False) + self.assertEqual({'FINISHED'}, res) + cube = bpy.context.active_object + + # Check that the file loaded ok. + bpy.context.scene.frame_set(6) + self.assertAlmostEqual(-1, cube.data.vertices[0].co.x) + self.assertAlmostEqual(-1, cube.data.vertices[0].co.y) + self.assertAlmostEqual(0.5905638933181763, cube.data.vertices[0].co.z) + + # Change path from absolute to relative. This should not break the animation. + bpy.context.scene.frame_set(1) + bpy.data.cache_files[fname].filepath = relpath + bpy.context.scene.frame_set(6) + + self.assertAlmostEqual(1, cube.data.vertices[3].co.x) + self.assertAlmostEqual(1, cube.data.vertices[3].co.y) + self.assertAlmostEqual(0.5905638933181763, cube.data.vertices[3].co.z) + def test_import_long_names(self): # This file contains very long names. The longest name is 4047 chars. bpy.ops.wm.alembic_import( |