Fixed Alembic unit test

Commit b6d7cdd3ce changed how the mesh data
is deformed, which wasn't taken into account yet in this unit test.

Instead of directly reading the mesh vertices (which aren't animated any
more), we convert the modified mesh to a new one, and inspect those
vertices instead.
This commit is contained in:
Sybren A. Stüvel 2017-08-09 13:59:27 +02:00 committed by Sergey Sharybin
parent f21020f45f
commit e6830167e2
1 changed files with 9 additions and 7 deletions

View File

@ -179,22 +179,24 @@ class SimpleImportTest(AbstractAlembicTest):
res = bpy.ops.wm.alembic_import(filepath=str(abc), as_background_job=False)
self.assertEqual({'FINISHED'}, res)
cube = bpy.context.active_object
plane = 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)
mesh = plane.to_mesh(bpy.context.scene, True, 'RENDER')
self.assertAlmostEqual(-1, mesh.vertices[0].co.x)
self.assertAlmostEqual(-1, mesh.vertices[0].co.y)
self.assertAlmostEqual(0.5905638933181763, mesh.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)
mesh = plane.to_mesh(bpy.context.scene, True, 'RENDER')
self.assertAlmostEqual(1, mesh.vertices[3].co.x)
self.assertAlmostEqual(1, mesh.vertices[3].co.y)
self.assertAlmostEqual(0.5905638933181763, mesh.vertices[3].co.z)
def test_import_long_names(self):
# This file contains very long names. The longest name is 4047 chars.