PopupCreator { ExpressionFormLine makeExpressionFormLine(final String factType) { final ExpressionUnboundFact part = new ExpressionUnboundFact(factType); return new ExpressionFormLine(part); }  FactPattern getPattern(); void setPattern(FactPattern pattern); AsyncPackageDataModelOracle getDataModelOracle(); void setDataModelOracle(AsyncPackageDataModelOracle oracle); RuleModeller getModeller(); void setModeller(RuleModeller modeller); boolean isBindable(); void setBindable(boolean bindable); void showBindFieldPopup(final FactPattern fp,
                                   final SingleFieldConstraint con,
                                   final ModelField[] fields,
                                   final PopupCreator popupCreator); void showPatternPopupForComposite(final HasConstraints hasConstraints); void showPatternPopup(final FactPattern fp,
                                 final SingleFieldConstraint con,
                                 final boolean isNested);  }
@Test public void testMakeExpressionFormLine() { final String expectedFactType = "factType"; final ExpressionFormLine expressionFormLine = popupCreator.makeExpressionFormLine(expectedFactType); assertEquals(1, size(expressionFormLine)); assertEquals(expectedFactType, first(expressionFormLine).getFactType()); }