def test01(self):
        """Checking move_node (over Groups with children)"""

        if common.verbose:
            print('\n', '-=' * 30)
            print("Running %s.test01..." % self.__class__.__name__)

        # open the do/undo
        self.h5file.enable_undo()

        # Create a new array
        self.h5file.move_node('/agroup', '/agroup2', 'agroup3')

        # Now undo the past operation
        self.h5file.undo()

        # Check that it does not exist in the object tree
        self.assertTrue("/agroup" in self.h5file)
        self.assertTrue("/agroup2/agroup3" not in self.h5file)

        # Check that children are reachable
        self.assertTrue("/agroup/anarray1" in self.h5file)
        self.assertTrue("/agroup/anarray2" in self.h5file)
        self.assertTrue("/agroup/agroup3" in self.h5file)
        self.assertEqual(self.h5file.root.agroup._v_title, "Group title")

        # Redo the operation
        self.h5file.redo()

        # Check that otherarray has come back to life in a sane state
        self.assertTrue("/agroup" not in self.h5file)
        self.assertTrue("/agroup2/agroup3" in self.h5file)
        self.assertEqual(self.h5file.root.agroup2.agroup3._v_title,
                         "Group title")

        # Check that children are reachable
        self.assertTrue("/agroup2/agroup3/anarray1" in self.h5file)
        self.assertTrue(self.h5file in "/agroup2/agroup3/anarray2")
        self.assertTrue("/agroup2/agroup3/agroup3" in self.h5file)
dataset/ETHPy150Open PyTables/PyTables/tables/tests/test_do_undo.py/MoveNodeTestCase.test01/swapped operands of `in`