Layers: move LayerCollection

This is to be used from the Outliner, when dragging and dropping
collections from the Active Render Layer

It also includes a cleanup on the outliner so it calls the new
functions. Note: the outliner still needs fix to allow all the
functionality here exposed.

But this will be tackled by Julian Eisel later.
This commit is contained in:
Dalai Felinto
2017-03-08 17:21:43 +01:00
parent 3a1748146b
commit d9f42e5fab
25 changed files with 1626 additions and 70 deletions

View File

@@ -114,6 +114,26 @@ RENDER_LAYER_TEST(move_into_scene_collection_sync_i)
RENDER_LAYER_TEST(move_into_scene_collection_sync_j)
RENDER_LAYER_TEST(move_into_scene_collection_sync_k)
RENDER_LAYER_TEST(move_into_scene_collection_sync_l)
RENDER_LAYER_TEST(move_above_below_layer_collection_a)
RENDER_LAYER_TEST(move_above_below_layer_collection_b)
RENDER_LAYER_TEST(move_above_below_layer_collection_c)
RENDER_LAYER_TEST(move_above_below_layer_collection_d)
RENDER_LAYER_TEST(move_above_below_layer_collection_e)
RENDER_LAYER_TEST(move_above_below_layer_collection_f)
RENDER_LAYER_TEST(move_above_below_layer_collection_g)
RENDER_LAYER_TEST(move_above_below_layer_collection_h)
RENDER_LAYER_TEST(move_above_below_layer_collection_i)
RENDER_LAYER_TEST(move_above_below_layer_collection_j)
RENDER_LAYER_TEST(move_above_below_layer_collection_k)
RENDER_LAYER_TEST(move_into_layer_collection_a)
RENDER_LAYER_TEST(move_into_layer_collection_b)
RENDER_LAYER_TEST(move_into_layer_collection_c)
RENDER_LAYER_TEST(move_into_layer_collection_d)
RENDER_LAYER_TEST(move_into_layer_collection_e)
RENDER_LAYER_TEST(move_into_layer_collection_f)
RENDER_LAYER_TEST(move_into_layer_collection_g)
RENDER_LAYER_TEST(move_into_layer_collection_h)
RENDER_LAYER_TEST(move_into_layer_collection_i)
RENDER_LAYER_TEST(layer_linking)
RENDER_LAYER_TEST(layer_syncinc)
RENDER_LAYER_TEST(scene_copy)

View File

@@ -467,6 +467,12 @@ class MoveSceneCollectionSyncTesting(MoveSceneCollectionTesting):
]
return layers_map
def get_reference_layers_tree_map(self):
"""
For those classes we don't expect any changes in the layer tree
"""
return self.get_initial_layers_tree_map()
def setup_tree(self):
tree = super(MoveSceneCollectionSyncTesting, self).setup_tree()
@@ -493,7 +499,7 @@ class MoveSceneCollectionSyncTesting(MoveSceneCollectionTesting):
import bpy
scene = bpy.context.scene
layers_map = self.get_initial_layers_tree_map()
layers_map = self.get_reference_layers_tree_map()
for layer_name, collections_names in layers_map:
layer = scene.render_layers.get(layer_name)
@@ -515,3 +521,41 @@ class MoveSceneCollectionSyncTesting(MoveSceneCollectionTesting):
self.assertEqual(nested_collection.collection.name, scene_collection.collections[i].name)
self.assertEqual(nested_collection.collection, scene_collection.collections[i])
self.verify_collection_tree(nested_collection)
class MoveLayerCollectionTesting(MoveSceneCollectionSyncTesting):
"""
To be used by tests of render_layer_move_into_layer_collection
"""
def parse_move(self, path, sep='.'):
"""
convert 'Layer 1.C.2' into:
bpy.context.scene.render_layers['Layer 1'].collections['C'].collections['2']
"""
import bpy
paths = path.split(sep)
layer = bpy.context.scene.render_layers[paths[0]]
collections = layer.collections
for subpath in paths[1:]:
collection = collections[subpath]
collections = collection.collections
return collection
def move_into(self, src, dst):
layer_collection_src = self.parse_move(src)
layer_collection_dst = self.parse_move(dst)
return layer_collection_src.move_into(layer_collection_dst)
def move_above(self, src, dst):
layer_collection_src = self.parse_move(src)
layer_collection_dst = self.parse_move(dst)
return layer_collection_src.move_above(layer_collection_dst)
def move_below(self, src, dst):
layer_collection_src = self.parse_move(src)
layer_collection_dst = self.parse_move(dst)
return layer_collection_src.move_below(layer_collection_dst)

View File

@@ -0,0 +1,56 @@
# ./blender.bin --background -noaudio --python tests/python/render_layer/test_link.py -- --testdir="/data/lib/tests/"
# ############################################################
# Importing - Same For All Render Layer Tests
# ############################################################
import unittest
import os, sys
sys.path.append(os.path.dirname(__file__))
from render_layer_common import *
# ############################################################
# Testing
# ############################################################
class UnitTesting(MoveLayerCollectionTesting):
def get_reference_scene_tree_map(self):
# original tree, no changes
return self.get_initial_scene_tree_map()
def get_reference_layers_tree_map(self):
# original tree, no changes
return self.get_initial_layers_tree_map()
def test_layer_collection_move_a(self):
"""
Test outliner operations
"""
self.setup_tree()
self.assertFalse(self.move_below('Layer 1.3', 'Layer 1.C'))
self.compare_tree_maps()
def test_layer_collection_move_b(self):
"""
Test outliner operations
"""
self.setup_tree()
self.assertFalse(self.move_above('Layer 1.C', 'Layer 1.3'))
self.compare_tree_maps()
# ############################################################
# Main - Same For All Render Layer Tests
# ############################################################
if __name__ == '__main__':
import sys
extra_arguments = sys.argv[sys.argv.index("--") + 1:] if "--" in sys.argv else []
sys.argv = [__file__] + (sys.argv[sys.argv.index("--") + 2:] if "--" in sys.argv else [])
UnitTesting._extra_arguments = extra_arguments
unittest.main()

View File

@@ -0,0 +1,56 @@
# ./blender.bin --background -noaudio --python tests/python/render_layer/test_link.py -- --testdir="/data/lib/tests/"
# ############################################################
# Importing - Same For All Render Layer Tests
# ############################################################
import unittest
import os, sys
sys.path.append(os.path.dirname(__file__))
from render_layer_common import *
# ############################################################
# Testing
# ############################################################
class UnitTesting(MoveLayerCollectionTesting):
def get_reference_scene_tree_map(self):
# original tree, no changes
return self.get_initial_scene_tree_map()
def get_reference_layers_tree_map(self):
# original tree, no changes
return self.get_initial_layers_tree_map()
def test_layer_collection_move_a(self):
"""
Test outliner operations
"""
self.setup_tree()
self.assertFalse(self.move_below('Layer 1.3.cat', 'Layer 1.3.dog'))
self.compare_tree_maps()
def test_layer_collection_move_b(self):
"""
Test outliner operations
"""
self.setup_tree()
self.assertFalse(self.move_above('Layer 1.3.dog', 'Layer 1.3.cat'))
self.compare_tree_maps()
# ############################################################
# Main - Same For All Render Layer Tests
# ############################################################
if __name__ == '__main__':
import sys
extra_arguments = sys.argv[sys.argv.index("--") + 1:] if "--" in sys.argv else []
sys.argv = [__file__] + (sys.argv[sys.argv.index("--") + 2:] if "--" in sys.argv else [])
UnitTesting._extra_arguments = extra_arguments
unittest.main()

View File

@@ -0,0 +1,56 @@
# ./blender.bin --background -noaudio --python tests/python/render_layer/test_link.py -- --testdir="/data/lib/tests/"
# ############################################################
# Importing - Same For All Render Layer Tests
# ############################################################
import unittest
import os, sys
sys.path.append(os.path.dirname(__file__))
from render_layer_common import *
# ############################################################
# Testing
# ############################################################
class UnitTesting(MoveLayerCollectionTesting):
def get_reference_scene_tree_map(self):
# original tree, no changes
return self.get_initial_scene_tree_map()
def get_reference_layers_tree_map(self):
# original tree, no changes
return self.get_initial_layers_tree_map()
def test_layer_collection_move_a(self):
"""
Test outliner operations
"""
self.setup_tree()
self.assertFalse(self.move_below('Layer 1.3.cat', 'Layer 1.3.dog'))
self.compare_tree_maps()
def test_layer_collection_move_b(self):
"""
Test outliner operations
"""
self.setup_tree()
self.assertFalse(self.move_above('Layer 1.3.dog', 'Layer 1.3.cat'))
self.compare_tree_maps()
# ############################################################
# Main - Same For All Render Layer Tests
# ############################################################
if __name__ == '__main__':
import sys
extra_arguments = sys.argv[sys.argv.index("--") + 1:] if "--" in sys.argv else []
sys.argv = [__file__] + (sys.argv[sys.argv.index("--") + 2:] if "--" in sys.argv else [])
UnitTesting._extra_arguments = extra_arguments
unittest.main()

View File

@@ -0,0 +1,56 @@
# ./blender.bin --background -noaudio --python tests/python/render_layer/test_link.py -- --testdir="/data/lib/tests/"
# ############################################################
# Importing - Same For All Render Layer Tests
# ############################################################
import unittest
import os, sys
sys.path.append(os.path.dirname(__file__))
from render_layer_common import *
# ############################################################
# Testing
# ############################################################
class UnitTesting(MoveLayerCollectionTesting):
def get_reference_scene_tree_map(self):
# original tree, no changes
return self.get_initial_scene_tree_map()
def get_reference_layers_tree_map(self):
# original tree, no changes
return self.get_initial_layers_tree_map()
def test_layer_collection_move_a(self):
"""
Test outliner operations
"""
self.setup_tree()
self.assertFalse(self.move_above('Layer 2.3.dog', 'Layer 1.C.2'))
self.compare_tree_maps()
def test_layer_collection_move_b(self):
"""
Test outliner operations
"""
self.setup_tree()
self.assertFalse(self.move_below('Layer 1.C.2', 'Layer 2.3.dog'))
self.compare_tree_maps()
# ############################################################
# Main - Same For All Render Layer Tests
# ############################################################
if __name__ == '__main__':
import sys
extra_arguments = sys.argv[sys.argv.index("--") + 1:] if "--" in sys.argv else []
sys.argv = [__file__] + (sys.argv[sys.argv.index("--") + 2:] if "--" in sys.argv else [])
UnitTesting._extra_arguments = extra_arguments
unittest.main()

View File

@@ -0,0 +1,48 @@
# ./blender.bin --background -noaudio --python tests/python/render_layer/test_link.py -- --testdir="/data/lib/tests/"
# ############################################################
# Importing - Same For All Render Layer Tests
# ############################################################
import unittest
import os, sys
sys.path.append(os.path.dirname(__file__))
from render_layer_common import *
# ############################################################
# Testing
# ############################################################
class UnitTesting(MoveLayerCollectionTesting):
def get_reference_scene_tree_map(self):
# original tree, no changes
return self.get_initial_scene_tree_map()
def get_reference_layers_tree_map(self):
# original tree, no changes
return self.get_initial_layers_tree_map()
def test_layer_collection_move(self):
"""
Test outliner operations
"""
self.setup_tree()
self.assertFalse(self.move_below('Layer 1.Master Collection', 'Layer 1.C.1'))
self.compare_tree_maps()
# ############################################################
# Main - Same For All Render Layer Tests
# ############################################################
if __name__ == '__main__':
import sys
extra_arguments = sys.argv[sys.argv.index("--") + 1:] if "--" in sys.argv else []
sys.argv = [__file__] + (sys.argv[sys.argv.index("--") + 2:] if "--" in sys.argv else [])
UnitTesting._extra_arguments = extra_arguments
unittest.main()

View File

@@ -0,0 +1,108 @@
# ./blender.bin --background -noaudio --python tests/python/render_layer/test_link.py -- --testdir="/data/lib/tests/"
# ############################################################
# Importing - Same For All Render Layer Tests
# ############################################################
import unittest
import os, sys
sys.path.append(os.path.dirname(__file__))
from render_layer_common import *
# ############################################################
# Testing
# ############################################################
class UnitTesting(MoveLayerCollectionTesting):
def get_reference_scene_tree_map(self):
reference_tree_map = [
['A', [
['i', None],
['ii', None],
['iii', None],
]],
['B', None],
['C', [
['1', None],
['3', [
['dog', None],
['cat', None],
]],
['2', None],
]],
]
return reference_tree_map
def get_reference_layers_tree_map(self):
reference_layers_map = [
['Layer 1', [
'Master Collection',
'C',
'3',
]],
['Layer 2', [
'C',
'dog',
'cat',
]],
]
return reference_layers_map
def test_layer_collection_move_a(self):
"""
Test outliner operations
"""
self.setup_tree()
self.assertTrue(self.move_below('Layer 2.3', 'Layer 2.C.1'))
self.compare_tree_maps()
def test_layer_collection_move_b(self):
"""
Test outliner operations
"""
self.setup_tree()
self.assertTrue(self.move_above('Layer 2.3', 'Layer 2.C.2'))
self.compare_tree_maps()
def test_layer_collection_move_c(self):
"""
Test outliner operations
"""
self.setup_tree()
# collection that will be moved
collection_original = self.parse_move('Layer 2.3')
collection_original.hide = False
collection_original.hide_select = True
# collection that will disappear
collection_old = self.parse_move('Layer 2.C.3')
collection_old.hide = True
collection_old.hide_select = False
# move
self.assertTrue(self.move_below('Layer 2.3', 'Layer 2.C.1'))
self.compare_tree_maps()
# we expect the settings to be carried along from the
# original layer collection
collection_new = self.parse_move('Layer 2.C.3')
self.assertEqual(collection_new.hide, False)
self.assertEqual(collection_new.hide_select, True)
# ############################################################
# Main - Same For All Render Layer Tests
# ############################################################
if __name__ == '__main__':
import sys
extra_arguments = sys.argv[sys.argv.index("--") + 1:] if "--" in sys.argv else []
sys.argv = [__file__] + (sys.argv[sys.argv.index("--") + 2:] if "--" in sys.argv else [])
UnitTesting._extra_arguments = extra_arguments
unittest.main()

View File

@@ -0,0 +1,89 @@
# ./blender.bin --background -noaudio --python tests/python/render_layer/test_link.py -- --testdir="/data/lib/tests/"
# ############################################################
# Importing - Same For All Render Layer Tests
# ############################################################
import unittest
import os, sys
sys.path.append(os.path.dirname(__file__))
from render_layer_common import *
# ############################################################
# Testing
# ############################################################
class UnitTesting(MoveLayerCollectionTesting):
def get_reference_scene_tree_map(self):
reference_tree_map = [
['A', [
['i', None],
['ii', None],
['iii', None],
]],
['B', None],
['C', [
['1', None],
['2', None],
['3', [
['cat', None],
['dog', None],
]],
]],
]
return reference_tree_map
def get_reference_layers_tree_map(self):
# original tree, no changes
return self.get_initial_layers_tree_map()
def test_layer_collection_move_a(self):
"""
Test outliner operations
"""
self.setup_tree()
self.assertTrue(self.move_above('Layer 2.C.3.cat', 'Layer 2.3.dog'))
self.compare_tree_maps()
def test_layer_collection_move_b(self):
"""
Test outliner operations
"""
self.setup_tree()
# collection that will be moved
collection_original = self.parse_move('Layer 2.C.3.cat')
collection_original.hide = False
collection_original.hide_select = True
# collection that will disappear
collection_old = self.parse_move('Layer 2.3.cat')
collection_old.hide = True
collection_old.hide_select = False
# move
self.assertTrue(self.move_above('Layer 2.C.3.cat', 'Layer 2.3.dog'))
self.compare_tree_maps()
# we expect the settings to be carried along from the
# original layer collection
collection_new = self.parse_move('Layer 2.3.cat')
self.assertEqual(collection_new.hide, False)
self.assertEqual(collection_new.hide_select, True)
# ############################################################
# Main - Same For All Render Layer Tests
# ############################################################
if __name__ == '__main__':
import sys
extra_arguments = sys.argv[sys.argv.index("--") + 1:] if "--" in sys.argv else []
sys.argv = [__file__] + (sys.argv[sys.argv.index("--") + 2:] if "--" in sys.argv else [])
UnitTesting._extra_arguments = extra_arguments
unittest.main()

View File

@@ -0,0 +1,74 @@
# ./blender.bin --background -noaudio --python tests/python/render_layer/test_link.py -- --testdir="/data/lib/tests/"
# ############################################################
# Importing - Same For All Render Layer Tests
# ############################################################
import unittest
import os, sys
sys.path.append(os.path.dirname(__file__))
from render_layer_common import *
# ############################################################
# Testing
# ############################################################
class UnitTesting(MoveLayerCollectionTesting):
def get_reference_scene_tree_map(self):
# original tree, no changes
return self.get_initial_scene_tree_map()
def get_reference_layers_tree_map(self):
# original tree, no changes
return self.get_initial_layers_tree_map()
def test_layer_collection_move_a(self):
"""
Test outliner operations
"""
self.setup_tree()
self.assertTrue(self.move_below('Layer 2.C.3.cat', 'Layer 2.3.dog'))
self.compare_tree_maps()
def test_layer_collection_move_b(self):
"""
Test outliner operations
"""
self.setup_tree()
# collection that will be moved
collection_original = self.parse_move('Layer 2.C.3.cat')
collection_original.hide = False
collection_original.hide_select = True
# collection that will disappear
collection_old = self.parse_move('Layer 2.3.cat')
collection_old.hide = True
collection_old.hide_select = False
# move
self.assertTrue(self.move_below('Layer 2.C.3.cat', 'Layer 2.3.dog'))
self.compare_tree_maps()
# we expect the settings to be carried along from the
# original layer collection
collection_new = self.parse_move('Layer 2.3.cat')
self.assertEqual(collection_new.hide, False)
self.assertEqual(collection_new.hide_select, True)
# ############################################################
# Main - Same For All Render Layer Tests
# ############################################################
if __name__ == '__main__':
import sys
extra_arguments = sys.argv[sys.argv.index("--") + 1:] if "--" in sys.argv else []
sys.argv = [__file__] + (sys.argv[sys.argv.index("--") + 2:] if "--" in sys.argv else [])
UnitTesting._extra_arguments = extra_arguments
unittest.main()

View File

@@ -0,0 +1,81 @@
# ./blender.bin --background -noaudio --python tests/python/render_layer/test_link.py -- --testdir="/data/lib/tests/"
# ############################################################
# Importing - Same For All Render Layer Tests
# ############################################################
import unittest
import os, sys
sys.path.append(os.path.dirname(__file__))
from render_layer_common import *
# ############################################################
# Testing
# ############################################################
class UnitTesting(MoveLayerCollectionTesting):
def get_reference_scene_tree_map(self):
# original tree, no changes
return self.get_initial_scene_tree_map()
def get_reference_layers_tree_map(self):
reference_layers_map = [
['Layer 1', [
'Master Collection',
'C',
'3',
]],
['Layer 2', [
'3',
'C',
'dog',
'cat',
]],
]
return reference_layers_map
def test_layer_collection_move_a(self):
"""
Test outliner operations
"""
self.setup_tree()
self.assertTrue(self.move_below('Layer 2.C', 'Layer 2.3'))
self.compare_tree_maps()
def test_layer_collection_move_b(self):
"""
Test outliner operations
"""
self.setup_tree()
# collection that will be moved
collection_original = self.parse_move('Layer 2.C')
collection_original.hide = False
collection_original.hide_select = True
# move
self.assertTrue(self.move_below('Layer 2.C', 'Layer 2.3'))
self.compare_tree_maps()
# we expect the settings to be carried along from the
# original layer collection
collection_new = self.parse_move('Layer 2.C')
self.assertEqual(collection_new.hide, False)
self.assertEqual(collection_new.hide_select, True)
# ############################################################
# Main - Same For All Render Layer Tests
# ############################################################
if __name__ == '__main__':
import sys
extra_arguments = sys.argv[sys.argv.index("--") + 1:] if "--" in sys.argv else []
sys.argv = [__file__] + (sys.argv[sys.argv.index("--") + 2:] if "--" in sys.argv else [])
UnitTesting._extra_arguments = extra_arguments
unittest.main()

View File

@@ -0,0 +1,71 @@
# ./blender.bin --background -noaudio --python tests/python/render_layer/test_link.py -- --testdir="/data/lib/tests/"
# ############################################################
# Importing - Same For All Render Layer Tests
# ############################################################
import unittest
import os, sys
sys.path.append(os.path.dirname(__file__))
from render_layer_common import *
# ############################################################
# Testing
# ############################################################
class UnitTesting(MoveLayerCollectionTesting):
def get_reference_scene_tree_map(self):
# original tree, no changes
return self.get_initial_scene_tree_map()
def get_reference_layers_tree_map(self):
# original tree, no changes
return self.get_initial_layers_tree_map()
def test_layer_collection_move_a(self):
"""
Test outliner operations
"""
self.setup_tree()
self.assertTrue(self.move_below('Layer 1.3.dog', 'Layer 1.3.cat'))
self.assertTrue(self.move_above('Layer 1.3.dog', 'Layer 1.3.cat'))
self.compare_tree_maps()
def test_layer_collection_move_b(self):
"""
Test outliner operations
"""
self.setup_tree()
# collection that will be moved
collection_original = self.parse_move('Layer 1.3.dog')
collection_original.hide = False
collection_original.hide_select = True
# move
self.assertTrue(self.move_below('Layer 1.3.dog', 'Layer 1.3.cat'))
self.assertTrue(self.move_above('Layer 1.3.dog', 'Layer 1.3.cat'))
self.compare_tree_maps()
# we expect the settings to be carried along from the
# original layer collection
collection_new = self.parse_move('Layer 1.3.dog')
self.assertEqual(collection_new.hide, False)
self.assertEqual(collection_new.hide_select, True)
# ############################################################
# Main - Same For All Render Layer Tests
# ############################################################
if __name__ == '__main__':
import sys
extra_arguments = sys.argv[sys.argv.index("--") + 1:] if "--" in sys.argv else []
sys.argv = [__file__] + (sys.argv[sys.argv.index("--") + 2:] if "--" in sys.argv else [])
UnitTesting._extra_arguments = extra_arguments
unittest.main()

View File

@@ -0,0 +1,48 @@
# ./blender.bin --background -noaudio --python tests/python/render_layer/test_link.py -- --testdir="/data/lib/tests/"
# ############################################################
# Importing - Same For All Render Layer Tests
# ############################################################
import unittest
import os, sys
sys.path.append(os.path.dirname(__file__))
from render_layer_common import *
# ############################################################
# Testing
# ############################################################
class UnitTesting(MoveLayerCollectionTesting):
def get_reference_scene_tree_map(self):
# original tree, no changes
return self.get_initial_scene_tree_map()
def get_reference_layers_tree_map(self):
# original tree, no changes
return self.get_initial_layers_tree_map()
def test_layer_collection_move(self):
"""
Test outliner operations
"""
self.setup_tree()
self.assertFalse(self.move_below('Layer 2.C.2', 'Layer 2.3'))
self.compare_tree_maps()
# ############################################################
# Main - Same For All Render Layer Tests
# ############################################################
if __name__ == '__main__':
import sys
extra_arguments = sys.argv[sys.argv.index("--") + 1:] if "--" in sys.argv else []
sys.argv = [__file__] + (sys.argv[sys.argv.index("--") + 2:] if "--" in sys.argv else [])
UnitTesting._extra_arguments = extra_arguments
unittest.main()

View File

@@ -0,0 +1,77 @@
# ./blender.bin --background -noaudio --python tests/python/render_layer/test_link.py -- --testdir="/data/lib/tests/"
# ############################################################
# Importing - Same For All Render Layer Tests
# ############################################################
import unittest
import os, sys
sys.path.append(os.path.dirname(__file__))
from render_layer_common import *
# ############################################################
# Testing
# ############################################################
class UnitTesting(MoveLayerCollectionTesting):
def get_reference_scene_tree_map(self):
# original tree, no changes
reference_tree_map = [
['A', [
['i', None],
['ii', None],
['iii', None],
]],
['B', None],
['C', [
['1', None],
['2', None],
['3', [
['dog', None],
['cat', None],
]],
]],
]
return reference_tree_map
def get_reference_layers_tree_map(self):
# original tree, no changes
reference_layers_map = [
['Layer 1', [
'Master Collection',
'C',
'3',
]],
['Layer 2', [
'C',
'3',
'dog',
'cat',
]],
]
return reference_layers_map
def test_layer_collection_into(self):
"""
Test outliner operations
"""
self.setup_tree()
self.assertFalse(self.move_into("Layer 1.C.2", "Layer 2.3"))
self.compare_tree_maps()
# ############################################################
# Main - Same For All Render Layer Tests
# ############################################################
if __name__ == '__main__':
import sys
extra_arguments = sys.argv[sys.argv.index("--") + 1:] if "--" in sys.argv else []
sys.argv = [__file__] + (sys.argv[sys.argv.index("--") + 2:] if "--" in sys.argv else [])
UnitTesting._extra_arguments = extra_arguments
unittest.main()

View File

@@ -0,0 +1,48 @@
# ./blender.bin --background -noaudio --python tests/python/render_layer/test_link.py -- --testdir="/data/lib/tests/"
# ############################################################
# Importing - Same For All Render Layer Tests
# ############################################################
import unittest
import os, sys
sys.path.append(os.path.dirname(__file__))
from render_layer_common import *
# ############################################################
# Testing
# ############################################################
class UnitTesting(MoveLayerCollectionTesting):
def get_reference_scene_tree_map(self):
# original tree, no changes
return self.get_initial_scene_tree_map()
def get_reference_layers_tree_map(self):
# original tree, no changes
return self.get_initial_layers_tree_map()
def test_layer_collection_into(self):
"""
Test outliner operations
"""
self.setup_tree()
self.assertFalse(self.move_into('Layer 1.3', 'Layer 1.3.cat'))
self.compare_tree_maps()
# ############################################################
# Main - Same For All Render Layer Tests
# ############################################################
if __name__ == '__main__':
import sys
extra_arguments = sys.argv[sys.argv.index("--") + 1:] if "--" in sys.argv else []
sys.argv = [__file__] + (sys.argv[sys.argv.index("--") + 2:] if "--" in sys.argv else [])
UnitTesting._extra_arguments = extra_arguments
unittest.main()

View File

@@ -0,0 +1,48 @@
# ./blender.bin --background -noaudio --python tests/python/render_layer/test_link.py -- --testdir="/data/lib/tests/"
# ############################################################
# Importing - Same For All Render Layer Tests
# ############################################################
import unittest
import os, sys
sys.path.append(os.path.dirname(__file__))
from render_layer_common import *
# ############################################################
# Testing
# ############################################################
class UnitTesting(MoveLayerCollectionTesting):
def get_reference_scene_tree_map(self):
# original tree, no changes
return self.get_initial_scene_tree_map()
def get_reference_layers_tree_map(self):
# original tree, no changes
return self.get_initial_layers_tree_map()
def test_layer_collection_into(self):
"""
Test outliner operations
"""
self.setup_tree()
self.assertFalse(self.move_into("Layer 2.C", "Layer 2.3"))
self.compare_tree_maps()
# ############################################################
# Main - Same For All Render Layer Tests
# ############################################################
if __name__ == '__main__':
import sys
extra_arguments = sys.argv[sys.argv.index("--") + 1:] if "--" in sys.argv else []
sys.argv = [__file__] + (sys.argv[sys.argv.index("--") + 2:] if "--" in sys.argv else [])
UnitTesting._extra_arguments = extra_arguments
unittest.main()

View File

@@ -0,0 +1,48 @@
# ./blender.bin --background -noaudio --python tests/python/render_layer/test_link.py -- --testdir="/data/lib/tests/"
# ############################################################
# Importing - Same For All Render Layer Tests
# ############################################################
import unittest
import os, sys
sys.path.append(os.path.dirname(__file__))
from render_layer_common import *
# ############################################################
# Testing
# ############################################################
class UnitTesting(MoveLayerCollectionTesting):
def get_reference_scene_tree_map(self):
# original tree, no changes
return self.get_initial_scene_tree_map()
def get_reference_layers_tree_map(self):
# original tree, no changes
return self.get_initial_layers_tree_map()
def test_layer_collection_into(self):
"""
Test outliner operations
"""
self.setup_tree()
self.assertFalse(self.move_into("Layer 2.3.cat", "Layer 2.3"))
self.compare_tree_maps()
# ############################################################
# Main - Same For All Render Layer Tests
# ############################################################
if __name__ == '__main__':
import sys
extra_arguments = sys.argv[sys.argv.index("--") + 1:] if "--" in sys.argv else []
sys.argv = [__file__] + (sys.argv[sys.argv.index("--") + 2:] if "--" in sys.argv else [])
UnitTesting._extra_arguments = extra_arguments
unittest.main()

View File

@@ -0,0 +1,48 @@
# ./blender.bin --background -noaudio --python tests/python/render_layer/test_link.py -- --testdir="/data/lib/tests/"
# ############################################################
# Importing - Same For All Render Layer Tests
# ############################################################
import unittest
import os, sys
sys.path.append(os.path.dirname(__file__))
from render_layer_common import *
# ############################################################
# Testing
# ############################################################
class UnitTesting(MoveLayerCollectionTesting):
def get_reference_scene_tree_map(self):
# original tree, no changes
return self.get_initial_scene_tree_map()
def get_reference_layers_tree_map(self):
# original tree, no changes
return self.get_initial_layers_tree_map()
def test_layer_collection_into(self):
"""
Test outliner operations
"""
self.setup_tree()
self.assertFalse(self.move_into("Layer 1.Master Collection", "Layer 1.C"))
self.compare_tree_maps()
# ############################################################
# Main - Same For All Render Layer Tests
# ############################################################
if __name__ == '__main__':
import sys
extra_arguments = sys.argv[sys.argv.index("--") + 1:] if "--" in sys.argv else []
sys.argv = [__file__] + (sys.argv[sys.argv.index("--") + 2:] if "--" in sys.argv else [])
UnitTesting._extra_arguments = extra_arguments
unittest.main()

View File

@@ -0,0 +1,94 @@
# ./blender.bin --background -noaudio --python tests/python/render_layer/test_link.py -- --testdir="/data/lib/tests/"
# ############################################################
# Importing - Same For All Render Layer Tests
# ############################################################
import unittest
import os, sys
sys.path.append(os.path.dirname(__file__))
from render_layer_common import *
# ############################################################
# Testing
# ############################################################
class UnitTesting(MoveLayerCollectionTesting):
def get_reference_scene_tree_map(self):
reference_tree_map = [
['A', [
['i', None],
['ii', None],
['iii', None],
['3', [
['dog', None],
['cat', None],
]],
]],
['B', None],
['C', [
['1', None],
['2', None],
]],
]
return reference_tree_map
def get_reference_layers_tree_map(self):
reference_layers_map = [
['Layer 1', [
'Master Collection',
'C',
]],
['Layer 2', [
'C',
'3',
'dog',
'cat',
]],
]
return reference_layers_map
def test_layer_collection_into_a(self):
"""
Test outliner operations
"""
self.setup_tree()
self.assertTrue(self.move_into("Layer 1.3", "Layer 1.Master Collection.A"))
self.compare_tree_maps()
def test_layer_collection_into_b(self):
"""
Test outliner operations
"""
self.setup_tree()
# collection that will be moved
collection_original = self.parse_move('Layer 1.3')
collection_original.hide = False
collection_original.hide_select = True
self.assertTrue(self.move_into('Layer 1.3', 'Layer 1.Master Collection.A'))
self.compare_tree_maps()
# we expect the settings to be carried along from the
# original layer collection
collection_new = self.parse_move('Layer 1.Master Collection.A.3')
self.assertEqual(collection_new.hide, False)
self.assertEqual(collection_new.hide_select, True)
# ############################################################
# Main - Same For All Render Layer Tests
# ############################################################
if __name__ == '__main__':
import sys
extra_arguments = sys.argv[sys.argv.index("--") + 1:] if "--" in sys.argv else []
sys.argv = [__file__] + (sys.argv[sys.argv.index("--") + 2:] if "--" in sys.argv else [])
UnitTesting._extra_arguments = extra_arguments
unittest.main()

View File

@@ -0,0 +1,85 @@
# ./blender.bin --background -noaudio --python tests/python/render_layer/test_link.py -- --testdir="/data/lib/tests/"
# ############################################################
# Importing - Same For All Render Layer Tests
# ############################################################
import unittest
import os, sys
sys.path.append(os.path.dirname(__file__))
from render_layer_common import *
# ############################################################
# Testing
# ############################################################
class UnitTesting(MoveLayerCollectionTesting):
def get_reference_scene_tree_map(self):
# original tree, no changes
return self.get_initial_scene_tree_map()
def get_reference_layers_tree_map(self):
reference_layers_map = [
['Layer 1', [
'Master Collection',
'C',
'3',
]],
['Layer 2', [
'C',
'dog',
'cat',
]],
]
return reference_layers_map
def test_layer_collection_into_a(self):
"""
Test outliner operations
"""
self.setup_tree()
self.assertTrue(self.move_into('Layer 2.3', 'Layer 2.C'))
self.compare_tree_maps()
def test_layer_collection_into_b(self):
"""
Test outliner operations
"""
self.setup_tree()
# collection that will be moved
collection_original = self.parse_move('Layer 2.3')
collection_original.hide = False
collection_original.hide_select = True
# collection that will disappear
collection_old = self.parse_move('Layer 2.C.3')
collection_old.hide = True
collection_old.hide_select = False
# move collection
self.assertTrue(self.move_into('Layer 2.3', 'Layer 2.C'))
self.compare_tree_maps()
# we expect the settings to be carried along from the
# original layer collection
collection_new = self.parse_move('Layer 2.C.3')
self.assertEqual(collection_new.hide, False)
self.assertEqual(collection_new.hide_select, True)
# ############################################################
# Main - Same For All Render Layer Tests
# ############################################################
if __name__ == '__main__':
import sys
extra_arguments = sys.argv[sys.argv.index("--") + 1:] if "--" in sys.argv else []
sys.argv = [__file__] + (sys.argv[sys.argv.index("--") + 2:] if "--" in sys.argv else [])
UnitTesting._extra_arguments = extra_arguments
unittest.main()

View File

@@ -0,0 +1,84 @@
# ./blender.bin --background -noaudio --python tests/python/render_layer/test_link.py -- --testdir="/data/lib/tests/"
# ############################################################
# Importing - Same For All Render Layer Tests
# ############################################################
import unittest
import os, sys
sys.path.append(os.path.dirname(__file__))
from render_layer_common import *
# ############################################################
# Testing
# ############################################################
class UnitTesting(MoveLayerCollectionTesting):
def get_reference_scene_tree_map(self):
reference_tree_map = [
['A', [
['i', None],
['ii', None],
['iii', None],
]],
['B', None],
['C', [
['1', [
['dog', None],
]],
['2', None],
['3', [
['cat', None],
]],
]],
]
return reference_tree_map
def get_reference_layers_tree_map(self):
# original tree, no changes
return self.get_initial_layers_tree_map()
def test_layer_collection_into_a(self):
"""
Test outliner operations
"""
self.setup_tree()
self.assertTrue(self.move_into('Layer 1.3.dog', 'Layer 1.C.1'))
self.compare_tree_maps()
def test_layer_collection_into_b(self):
"""
Test outliner operations
"""
self.setup_tree()
# collection that will be moved
collection_original = self.parse_move('Layer 1.3.dog')
collection_original.hide = False
collection_original.hide_select = True
self.assertTrue(self.move_into('Layer 1.3.dog', 'Layer 1.C.1'))
self.compare_tree_maps()
# we expect the settings to be carried along from the
# original layer collection
collection_new = self.parse_move('Layer 1.C.1.dog')
self.assertEqual(collection_new.hide, False)
self.assertEqual(collection_new.hide_select, True)
# ############################################################
# Main - Same For All Render Layer Tests
# ############################################################
if __name__ == '__main__':
import sys
extra_arguments = sys.argv[sys.argv.index("--") + 1:] if "--" in sys.argv else []
sys.argv = [__file__] + (sys.argv[sys.argv.index("--") + 2:] if "--" in sys.argv else [])
UnitTesting._extra_arguments = extra_arguments
unittest.main()

View File

@@ -0,0 +1,48 @@
# ./blender.bin --background -noaudio --python tests/python/render_layer/test_link.py -- --testdir="/data/lib/tests/"
# ############################################################
# Importing - Same For All Render Layer Tests
# ############################################################
import unittest
import os, sys
sys.path.append(os.path.dirname(__file__))
from render_layer_common import *
# ############################################################
# Testing
# ############################################################
class UnitTesting(MoveLayerCollectionTesting):
def get_reference_scene_tree_map(self):
# original tree, no changes
return self.get_initial_scene_tree_map()
def get_reference_layers_tree_map(self):
# original tree, no changes
return self.get_initial_layers_tree_map()
def test_layer_collection_into(self):
"""
Test outliner operations
"""
self.setup_tree()
self.assertFalse(self.move_into('Layer 2.C.3', 'Layer 2.dog'))
self.compare_tree_maps()
# ############################################################
# Main - Same For All Render Layer Tests
# ############################################################
if __name__ == '__main__':
import sys
extra_arguments = sys.argv[sys.argv.index("--") + 1:] if "--" in sys.argv else []
sys.argv = [__file__] + (sys.argv[sys.argv.index("--") + 2:] if "--" in sys.argv else [])
UnitTesting._extra_arguments = extra_arguments
unittest.main()