59a60,61 > import quickfix.field.LastPx; > import quickfix.field.LastQty; 60a63,66 > import quickfix.field.LegPrice; > import quickfix.field.LegQty; > import quickfix.field.LegRefID; > import quickfix.field.LegSymbol; 74a81 > import quickfix.field.PreviouslyReported; 92a100,101 > import quickfix.field.TradeDate; > import quickfix.field.TradeReportID; 101a111 > import quickfix.fix44.TradeCaptureReport; 1290a1301,1345 > @Test > public void testRepeatingGroupCountForCorrectFieldOrder() throws Exception { > testRepeatingGroupCountForFieldOrder(new int[] { 600, 687, 654, 566 }); > } > > @Test > public void testRepeatingGroupCountForIncorrectFieldOrder() throws Exception { > testRepeatingGroupCountForFieldOrder(new int[] { 600, 687, 566, 654 }); > } > > private void testRepeatingGroupCountForFieldOrder(int fieldOrder[]) throws Exception { > /* > * Prepare a vary simple TradeCaptureReport message template with 1 > * repeating group. > */ > Message tcr = new TradeCaptureReport(); > tcr.getHeader().setField(new MsgSeqNum(1)); > tcr.getHeader().setField(new SendingTime(new Date())); > tcr.getHeader().setField(new SenderCompID("SENDER")); > tcr.getHeader().setField(new TargetCompID("TARGET")); > tcr.setField(new TradeReportID("ABC1234")); > tcr.setField(new PreviouslyReported(false)); > tcr.setField(new LastQty(1000)); > tcr.setField(new LastPx(5.6789)); > tcr.setField(new TradeDate("20140101")); > tcr.setField(new TransactTime(new Date())); > Group leg1 = new Group(555, 600, fieldOrder); > leg1.setField(new LegSymbol("L1-XYZ")); > leg1.setField(new LegRefID("ABC1234-L1")); > leg1.setField(new LegQty(333)); > leg1.setField(new LegPrice(1.2345)); > tcr.addGroup(leg1); > /* > * Convert the message to string and parse it. The parsed message should > * contain 1 repeating group. > */ > String s = tcr.toString(); > System.out.println("msg (original): " + s); > > Message parsed = new Message(s, DataDictionaryTest.getDictionary()); > System.out.println("msg (parsed) : " + parsed.toString()); > > assertEquals(1, parsed.getGroupCount(555)); > } >