SummarizeReceiptFlowPart extends FlowDescription { public SummarizeReceiptFlowPart(In<AllValues> allValues, Out<ItemSummary> itemSummary, Out<CategorySummary> categorySummary, Out<ShopSummary> shopSummary) { this.allValues = allValues; this.itemSummary = itemSummary; this.categorySummary = categorySummary; this.shopSummary = shopSummary; } SummarizeReceiptFlowPart(In<AllValues> allValues,
			Out<ItemSummary> itemSummary, Out<CategorySummary> categorySummary,
			Out<ShopSummary> shopSummary);   }
@Test public void testSummarizeReceiptFlowPart() { In<AllValues> allValues = tester.input("allvalues", AllValues.class) .prepare(INPUT_PATH + "/all_values.xls#input"); Out<ItemSummary> item = tester.output("item", ItemSummary.class) .verify(OUTPUT_PATH + "/expected_item_summary.xls#output", OUTPUT_PATH + "/expected_item_summary.xls#rule"); Out<CategorySummary> category = tester.output("category", CategorySummary.class) .verify(OUTPUT_PATH + "/expected_category_summary.xls#output", OUTPUT_PATH + "/expected_category_summary.xls#rule"); Out<ShopSummary> shop = tester.output("shop", ShopSummary.class) .verify(OUTPUT_PATH + "/expected_shop_summary.xls#output", OUTPUT_PATH + "/expected_shop_summary.xls#rule"); tester.runTest(new SummarizeReceiptFlowPart(allValues, item, category, shop)); }