@Test
 public void testThatGetMetadataValuesReturnsEmptySetIfNoMetadataValuesAreLinked() {
   inTransaction(
       () -> {
         TestResultNode testResult = testResultFactory.createInGraph();
         assertThat(testResult.getMetadataValues()).isEmpty();
       });
 }
  @Test
  public void testThatGetMetadataValuesReturnsAllLinkedMetadataValues() {
    inTransaction(
        () -> {
          MetadataValueNode metadataValue1 =
              metadataValueFactory.getOrCreateFromGraph(new MetadataPath("os", "windows"));
          MetadataValueNode metadataValue2 =
              metadataValueFactory.getOrCreateFromGraph(new MetadataPath("os", "linux"));
          MetadataValueNode metadataValue3 =
              metadataValueFactory.getOrCreateFromGraph(new MetadataPath("os", "mac os"));

          TestResultNode testResult = testResultFactory.createInGraph();
          testResult.linkToMetadataValues(metadataValue1, metadataValue2);

          assertThat(testResult.getMetadataValues())
              .containsOnly(metadataValue1, metadataValue2)
              .doesNotContain(metadataValue3);
        });
  }