@Test
 public void testThatGettingNonExistingTestReturnsNull() {
   inTransaction(
       () -> {
         TestResultNode testResult = testResultFactory.createInGraph();
         assertThat(testResult.getTest()).isNull();
       });
 }
  @Test
  public void testThatGettingExistingTestReturnsIt() {
    inTransaction(
        () -> {
          TestNode test = testFactory.getOrCreateFromGraph("test");

          TestResultNode testResult = testResultFactory.createInGraph();
          testResult.setTest(test);

          assertThat(testResult.getTest()).isEqualTo(test);
          assertThat(test.getTestResults()).contains(testResult);
        });
  }
  @Test
  public void testThatChaningTheTestRemovesExistingRelationship() {
    inTransaction(
        () -> {
          TestNode test1 = testFactory.getOrCreateFromGraph("test1");
          TestNode test2 = testFactory.getOrCreateFromGraph("test2");

          TestResultNode testResult = testResultFactory.createInGraph();
          testResult.setTest(test1);
          testResult.setTest(test2);

          assertThat(testResult.getTest()).isEqualTo(test2);
          assertThat(test2.getTestResults()).contains(testResult);

          assertThat(test1.getTestResults()).doesNotContain(testResult);
        });
  }