test_class.file: mubench/src/test/java/de/tu_darmstadt/stg/mudetect/MissingAssignmentNoViolationPredicateTest.java
test_class.identifier: MissingAssignmentNoViolationPredicateTest
test_case.body: @Test
      public void considersMissingAssignmentWithParameterNoViolation() {
          TestAUGBuilder pattern = buildAUG().withActionNodes("C.m()", "=").withDataNode("D")
                  .withEdge("C.m()", SELECTION, "=").withEdge("D", PARAMETER, "=");
          TestAUGBuilder target = buildAUG().withActionNode("C.m()");
          TestOverlapBuilder violation = buildOverlap(pattern, target).withNode("C.m()");
  
          Optional<Boolean> decision = new MissingAssignmentNoViolationPredicate().apply(violation.build());
  
          assertThat(decision, is(Optional.of(false)));
      }
test_case.class_method_signature: MissingAssignmentNoViolationPredicateTest.considersMissingAssignmentWithParameterNoViolation()
test_case.full_signature: @Test public void considersMissingAssignmentWithParameterNoViolation()
test_case.identifier: considersMissingAssignmentWithParameterNoViolation
test_case.invocations: withEdge withEdge withDataNode withActionNodes buildAUG withActionNode buildAUG withNode buildOverlap apply build assertThat is of
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void considersMissingAssignmentWithParameterNoViolation()
focal_class.file: mubench/src/main/java/de/tu_darmstadt/stg/mudetect/MissingAssignmentNoViolationPredicate.java
focal_class.identifier: MissingAssignmentNoViolationPredicate
focal_class.interfaces: implements ViolationPredicate
focal_class.class_method_signature: MissingAssignmentNoViolationPredicate.apply(Overlap overlap)
focal_class.full_signature: @Override public Optional<Boolean> apply(Overlap overlap)
focal_class.identifier: apply
focal_class.modifiers: @Override public
focal_class.parameters: (Overlap overlap)
focal_class.return: Optional<Boolean>
focal_class.signature: Optional<Boolean> apply(Overlap overlap)
focal_class.class_method_signature: MissingAssignmentNoViolationPredicate.missesOnlyAssignmentsAndExclusiveAssignmentParameters(Overlap overlap)
focal_class.full_signature: private boolean missesOnlyAssignmentsAndExclusiveAssignmentParameters(Overlap overlap)
focal_class.identifier: missesOnlyAssignmentsAndExclusiveAssignmentParameters
focal_class.modifiers: private
focal_class.parameters: (Overlap overlap)
focal_class.return: boolean
focal_class.signature: boolean missesOnlyAssignmentsAndExclusiveAssignmentParameters(Overlap overlap)
focal_class.class_method_signature: MissingAssignmentNoViolationPredicate.isExclusiveParameterOf(Node node, Set<Node> missingNodes, APIUsageGraph graph)
focal_class.full_signature: private boolean isExclusiveParameterOf(Node node, Set<Node> missingNodes, APIUsageGraph graph)
focal_class.identifier: isExclusiveParameterOf
focal_class.modifiers: private
focal_class.parameters: (Node node, Set<Node> missingNodes, APIUsageGraph graph)
focal_class.return: boolean
focal_class.signature: boolean isExclusiveParameterOf(Node node, Set<Node> missingNodes, APIUsageGraph graph)
focal_class.class_method_signature: MissingAssignmentNoViolationPredicate.isParameterEdgeToOneOf(Edge edge, Node node, Set<Node> missingNodes, APIUsageGraph graph)
focal_class.full_signature: private boolean isParameterEdgeToOneOf(Edge edge, Node node, Set<Node> missingNodes, APIUsageGraph graph)
focal_class.identifier: isParameterEdgeToOneOf
focal_class.modifiers: private
focal_class.parameters: (Edge edge, Node node, Set<Node> missingNodes, APIUsageGraph graph)
focal_class.return: boolean
focal_class.signature: boolean isParameterEdgeToOneOf(Edge edge, Node node, Set<Node> missingNodes, APIUsageGraph graph)
focal_class.class_method_signature: MissingAssignmentNoViolationPredicate.allConnectToOneOf(Set<Edge> missingEdges, Set<Node> missingNodes)
focal_class.full_signature: private boolean allConnectToOneOf(Set<Edge> missingEdges, Set<Node> missingNodes)
focal_class.identifier: allConnectToOneOf
focal_class.modifiers: private
focal_class.parameters: (Set<Edge> missingEdges, Set<Node> missingNodes)
focal_class.return: boolean
focal_class.signature: boolean allConnectToOneOf(Set<Edge> missingEdges, Set<Node> missingNodes)
focal_method.body: @Override
      public Optional<Boolean> apply(Overlap overlap) {
          if (missesOnlyAssignmentsAndExclusiveAssignmentParameters(overlap))
              return Optional.of(false);
          else
              return Optional.empty();
      }
focal_method.class_method_signature: MissingAssignmentNoViolationPredicate.apply(Overlap overlap)
focal_method.full_signature: @Override public Optional<Boolean> apply(Overlap overlap)
focal_method.identifier: apply
focal_method.invocations: missesOnlyAssignmentsAndExclusiveAssignmentParameters of empty
focal_method.modifiers: @Override public
focal_method.parameters: (Overlap overlap)
focal_method.return: Optional<Boolean>
focal_method.signature: Optional<Boolean> apply(Overlap overlap)