PoTransaction { public final void prepareReadCounterFile(byte sfi, int countersNumber) { prepareReadRecordFile(sfi, 1, 1, countersNumber * 3); } PoTransaction(SeResource<CalypsoPo> poResource, PoSecuritySettings poSecuritySettings);  PoTransaction(SeResource<CalypsoPo> poResource); final void processOpening(PoTransaction.SessionSetting.AccessLevel accessLevel); final void processPoCommands(); final void processClosing(); final void processCancel(); final void processVerifyPin(byte[] pin); final void processVerifyPin(String pin); final void prepareReleasePoChannel(); final void prepareSelectFile(byte[] lid); final void prepareSelectFile(SelectFileControl control); final void prepareReadRecordFile(byte sfi, int recordNumber); final void prepareReadRecordFile(
      byte sfi, int firstRecordNumber, int numberOfRecords, int recordSize); final void prepareReadCounterFile(byte sfi, int countersNumber); final void prepareAppendRecord(byte sfi, byte[] recordData); final void prepareUpdateRecord(byte sfi, int recordNumber, byte[] recordData); final void prepareWriteRecord(byte sfi, int recordNumber, byte[] recordData); final void prepareIncreaseCounter(byte sfi, int counterNumber, int incValue); final void prepareDecreaseCounter(byte sfi, int counterNumber, int decValue); final void prepareCheckPinStatus(); final void prepareSvGet(SvSettings.Operation svOperation, SvSettings.Action svAction); final void prepareSvReload(int amount, byte[] date, byte[] time, byte[] free); final void prepareSvReload(int amount); final void prepareSvDebit(int amount, byte[] date, byte[] time); final void prepareSvDebit(int amount); final void prepareSvReadAllLogs(); final void prepareInvalidate(); final void prepareRehabilitate();  }
@Test public void testPrepareReadCounterFile() { CalypsoPo calypsoPoRev31 = createCalypsoPo(FCI_REV31); poTransaction = new PoTransaction(new SeResource<CalypsoPo>(poReader, calypsoPoRev31)); poCommandsTestSet.put( PO_READ_REC_SFI7_REC1_6B_COUNTER_CMD, PO_READ_REC_SFI7_REC1_6B_COUNTER_RSP); poTransaction.prepareReadCounterFile(FILE7, 2); poTransaction.processPoCommands(); assertThat(calypsoPoRev31.getFileBySfi(FILE7).getData().getContentAsCounterValue(1)) .isEqualTo(ByteArrayUtil.threeBytesToInt(ByteArrayUtil.fromHex(FILE7_REC1_COUNTER1), 0)); assertThat(calypsoPoRev31.getFileBySfi(FILE7).getData().getContentAsCounterValue(2)) .isEqualTo(ByteArrayUtil.threeBytesToInt(ByteArrayUtil.fromHex(FILE7_REC1_COUNTER2), 0)); }