@Test
  @DirtiesContext
  public void testChangeParent_moveToDifferentBranch() {
    // 41 -> 22

    replayAll();
    messages = testable.checkChangeParentStory(story_41, story_22);
    verifyAll();

    assertNumberOfMessages(messages, 1);
    assertMessagesContain(
        messages,
        StoryHierarchyIntegrityViolationType.TARGET_PARENT_IN_WRONG_BRANCH,
        story_41,
        story_22);
  }
  @Test
  @DirtiesContext
  public void testChangeParent_moveUnderIterationStory() {
    // 32 -> 41

    replayAll();
    messages = testable.checkChangeParentStory(story_32, story_41);
    verifyAll();

    assertNumberOfMessages(messages, 1);
    assertMessagesContain(
        messages,
        StoryHierarchyIntegrityViolationType.TARGET_PARENT_IN_ITERATION,
        story_32,
        story_41);
  }
  @Test
  @DirtiesContext
  public void testChangeParent_moveProductStoryUnderProjectStory() {
    // 23 -> 22
    // 34 vaihtaa branchia

    replayAll();
    messages = testable.checkChangeParentStory(story_23, story_22);
    verifyAll();

    assertNumberOfMessages(messages, 1);
    assertMessagesContain(
        messages,
        StoryHierarchyIntegrityViolationType.TARGET_PARENT_DEEPER_IN_HIERARCHY,
        story_23,
        story_22);
  }
  @Test
  @DirtiesContext
  public void testChangeParent_moveBranchUnderAnother() {
    // 22 -> 31
    // 2 virhettä, 22->31, 33 -> 31

    replayAll();
    messages = testable.checkChangeParentStory(story_22, story_31);
    verifyAll();

    assertNumberOfMessages(messages, 2);
    assertMessagesContain(
        messages,
        StoryHierarchyIntegrityViolationType.TARGET_PARENT_IN_WRONG_BRANCH,
        story_22,
        story_31);
    assertMessagesContain(
        messages,
        StoryHierarchyIntegrityViolationType.TARGET_PARENT_IN_WRONG_BRANCH,
        story_22,
        story_33);
  }