@Test
public void replace() {

	final Random random = new Random(124);
	final TreeNode<Integer> tree = newTree(5, random);
	final TreeNode<Integer> tree1 = newTree(2, random);
	final TreeNode<Integer> child = tree.childAtPath(0 , 1)
		.orElseThrow(AssertionError::new);
	Assert.assertNotEquals(child, tree1);
	child.replace(0, tree1);
	Assert.assertEquals(child.childAt(0), tree1);
}