diff options
author | Dalai Felinto <dfelinto@gmail.com> | 2017-03-13 19:35:58 +0300 |
---|---|---|
committer | Dalai Felinto <dfelinto@gmail.com> | 2017-03-13 19:38:37 +0300 |
commit | ddedcf7ada1bec8a4e2f1c89984ded312a12cc46 (patch) | |
tree | 7e649196b4f91a1d1aaa58858e68e661a724da6b /tests | |
parent | ecce1fabca7fbc7551d6b706663f44662719ec1f (diff) |
Outliner/layer: fix users trying to drop a collection into itself (recursion hell)
Diffstat (limited to 'tests')
-rw-r--r-- | tests/python/render_layer/CMakeLists.txt | 1 | ||||
-rw-r--r-- | tests/python/render_layer/test_move_into_layer_collection_j.py | 49 |
2 files changed, 50 insertions, 0 deletions
diff --git a/tests/python/render_layer/CMakeLists.txt b/tests/python/render_layer/CMakeLists.txt index 3781ce02ec0..f03a04a7029 100644 --- a/tests/python/render_layer/CMakeLists.txt +++ b/tests/python/render_layer/CMakeLists.txt @@ -135,6 +135,7 @@ 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(move_into_layer_collection_j) RENDER_LAYER_TEST(layer_linking) RENDER_LAYER_TEST(layer_syncinc) RENDER_LAYER_TEST(scene_copy) diff --git a/tests/python/render_layer/test_move_into_layer_collection_j.py b/tests/python/render_layer/test_move_into_layer_collection_j.py new file mode 100644 index 00000000000..32cd3732544 --- /dev/null +++ b/tests/python/render_layer/test_move_into_layer_collection_j.py @@ -0,0 +1,49 @@ +# ./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 + Prevent collection from being dragged into itself + """ + self.setup_tree() + self.assertFalse(self.move_into("Layer 2.dog", "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() |