test_class.file: flink-optimizer/src/test/java/org/apache/flink/optimizer/dag/MapPartitionNodeTest.java
test_class.identifier: MapPartitionNodeTest
test_case.body: @Test
  	public void testGetSemanticProperties() {
  
  		SingleInputSemanticProperties origProps = new SingleInputSemanticProperties();
  		origProps.addForwardedField(0, 1);
  		origProps.addForwardedField(2, 2);
  		origProps.addReadFields(new FieldSet(0, 2, 4, 7));
  
  		MapPartitionOperatorBase<?,?,?> op = mock(MapPartitionOperatorBase.class);
  		when(op.getSemanticProperties()).thenReturn(origProps);
  		when(op.getKeyColumns(0)).thenReturn(new int[]{});
  
  		MapPartitionNode node = new MapPartitionNode(op);
  
  		SemanticProperties filteredProps = node.getSemanticPropertiesForLocalPropertyFiltering();
  
  		assertTrue(filteredProps.getForwardingTargetFields(0, 0).size() == 0);
  		assertTrue(filteredProps.getForwardingTargetFields(0, 2).size() == 0);
  		assertTrue(filteredProps.getForwardingSourceField(0, 1) < 0);
  		assertTrue(filteredProps.getForwardingSourceField(0, 2) < 0);
  		assertTrue(filteredProps.getReadFields(0).size() == 4);
  		assertTrue(filteredProps.getReadFields(0).contains(0));
  		assertTrue(filteredProps.getReadFields(0).contains(2));
  		assertTrue(filteredProps.getReadFields(0).contains(4));
  		assertTrue(filteredProps.getReadFields(0).contains(7));
  
  	}
test_case.class_method_signature: MapPartitionNodeTest.testGetSemanticProperties()
test_case.full_signature: @Test public void testGetSemanticProperties()
test_case.identifier: testGetSemanticProperties
test_case.invocations: addForwardedField addForwardedField addReadFields mock thenReturn when getSemanticProperties thenReturn when getKeyColumns getSemanticPropertiesForLocalPropertyFiltering assertTrue size getForwardingTargetFields assertTrue size getForwardingTargetFields assertTrue getForwardingSourceField assertTrue getForwardingSourceField assertTrue size getReadFields assertTrue contains getReadFields assertTrue contains getReadFields assertTrue contains getReadFields assertTrue contains getReadFields
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testGetSemanticProperties()
focal_class.declarator: possibleProperties
focal_class.modifier: private final
focal_class.original_string: private final List<OperatorDescriptorSingle> possibleProperties;
focal_class.type: List<OperatorDescriptorSingle>
focal_class.var_name: possibleProperties
focal_class.file: flink-optimizer/src/main/java/org/apache/flink/optimizer/dag/MapPartitionNode.java
focal_class.identifier: MapPartitionNode
focal_class.class_method_signature: MapPartitionNode.MapPartitionNode(SingleInputOperator<?, ?, ?> operator)
focal_class.full_signature: public  MapPartitionNode(SingleInputOperator<?, ?, ?> operator)
focal_class.identifier: MapPartitionNode
focal_class.modifiers: public
focal_class.parameters: (SingleInputOperator<?, ?, ?> operator)
focal_class.signature:  MapPartitionNode(SingleInputOperator<?, ?, ?> operator)
focal_class.class_method_signature: MapPartitionNode.getOperatorName()
focal_class.full_signature: @Override public String getOperatorName()
focal_class.identifier: getOperatorName
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getOperatorName()
focal_class.class_method_signature: MapPartitionNode.getPossibleProperties()
focal_class.full_signature: @Override protected List<OperatorDescriptorSingle> getPossibleProperties()
focal_class.identifier: getPossibleProperties
focal_class.modifiers: @Override protected
focal_class.parameters: ()
focal_class.return: List<OperatorDescriptorSingle>
focal_class.signature: List<OperatorDescriptorSingle> getPossibleProperties()
focal_class.class_method_signature: MapPartitionNode.getSemanticPropertiesForLocalPropertyFiltering()
focal_class.full_signature: @Override protected SemanticProperties getSemanticPropertiesForLocalPropertyFiltering()
focal_class.identifier: getSemanticPropertiesForLocalPropertyFiltering
focal_class.modifiers: @Override protected
focal_class.parameters: ()
focal_class.return: SemanticProperties
focal_class.signature: SemanticProperties getSemanticPropertiesForLocalPropertyFiltering()
focal_class.class_method_signature: MapPartitionNode.computeOperatorSpecificDefaultEstimates(DataStatistics statistics)
focal_class.full_signature: @Override protected void computeOperatorSpecificDefaultEstimates(DataStatistics statistics)
focal_class.identifier: computeOperatorSpecificDefaultEstimates
focal_class.modifiers: @Override protected
focal_class.parameters: (DataStatistics statistics)
focal_class.return: void
focal_class.signature: void computeOperatorSpecificDefaultEstimates(DataStatistics statistics)
focal_class.superclass: extends SingleInputNode
focal_method.body: @Override
  	protected SemanticProperties getSemanticPropertiesForLocalPropertyFiltering() {
  
  		// Local properties for MapPartition may not be preserved.
  		SingleInputSemanticProperties origProps =
  				((SingleInputOperator<?,?,?>) getOperator()).getSemanticProperties();
  		SingleInputSemanticProperties filteredProps = new SingleInputSemanticProperties();
  		FieldSet readSet = origProps.getReadFields(0);
  		if(readSet != null) {
  			filteredProps.addReadFields(readSet);
  		}
  
  		return filteredProps;
  	}
focal_method.class_method_signature: MapPartitionNode.getSemanticPropertiesForLocalPropertyFiltering()
focal_method.full_signature: @Override protected SemanticProperties getSemanticPropertiesForLocalPropertyFiltering()
focal_method.identifier: getSemanticPropertiesForLocalPropertyFiltering
focal_method.invocations: getSemanticProperties getOperator getReadFields addReadFields
focal_method.modifiers: @Override protected
focal_method.parameters: ()
focal_method.return: SemanticProperties
focal_method.signature: SemanticProperties getSemanticPropertiesForLocalPropertyFiltering()