aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJ08nY2018-11-11 19:30:53 +0100
committerJ08nY2018-11-11 19:30:53 +0100
commitd381ec1810fa17ed9b9de8257896485b97a34805 (patch)
tree63110cce24098e4f5b8bb9f6334c93a760ecd8b5 /src
parent3a612d60df24694f6dd20f4db87530278a5b54b4 (diff)
downloadECTester-d381ec1810fa17ed9b9de8257896485b97a34805.tar.gz
ECTester-d381ec1810fa17ed9b9de8257896485b97a34805.tar.zst
ECTester-d381ec1810fa17ed9b9de8257896485b97a34805.zip
Diffstat (limited to 'src')
-rw-r--r--src/cz/crcs/ectester/reader/output/TextTestWriter.java9
-rw-r--r--src/cz/crcs/ectester/reader/output/XMLTestWriter.java14
-rw-r--r--src/cz/crcs/ectester/reader/output/YAMLTestWriter.java14
-rw-r--r--src/cz/crcs/ectester/reader/test/CardDefaultSuite.java4
4 files changed, 35 insertions, 6 deletions
diff --git a/src/cz/crcs/ectester/reader/output/TextTestWriter.java b/src/cz/crcs/ectester/reader/output/TextTestWriter.java
index ad35012..a755857 100644
--- a/src/cz/crcs/ectester/reader/output/TextTestWriter.java
+++ b/src/cz/crcs/ectester/reader/output/TextTestWriter.java
@@ -1,5 +1,6 @@
package cz.crcs.ectester.reader.output;
+import cz.crcs.ectester.applet.ECTesterApplet;
import cz.crcs.ectester.common.cli.Colors;
import cz.crcs.ectester.common.output.BaseTextTestWriter;
import cz.crcs.ectester.common.test.TestSuite;
@@ -7,6 +8,7 @@ import cz.crcs.ectester.common.test.Testable;
import cz.crcs.ectester.common.util.ByteUtil;
import cz.crcs.ectester.reader.CardMngr;
import cz.crcs.ectester.reader.ECTesterReader;
+import cz.crcs.ectester.reader.command.Command;
import cz.crcs.ectester.reader.response.Response;
import cz.crcs.ectester.reader.test.CardTestSuite;
import cz.crcs.ectester.reader.test.CommandTestable;
@@ -43,9 +45,12 @@ public class TextTestWriter extends BaseTextTestWriter {
if (suite instanceof CardTestSuite) {
CardTestSuite cardSuite = (CardTestSuite) suite;
StringBuilder sb = new StringBuilder();
- sb.append("═══ ").append(Colors.underline("ECTester version:")).append(" ").append(ECTesterReader.VERSION).append(ECTesterReader.GIT_COMMIT).append(System.lineSeparator());
- sb.append("═══ ").append(Colors.underline("Card ATR:")).append(" ").append(ByteUtil.bytesToHex(cardSuite.getCard().getATR().getBytes(), false)).append(System.lineSeparator());
try {
+ sb.append("═══ ").append(Colors.underline("ECTester version:")).append(" ").append(ECTesterReader.VERSION).append(ECTesterReader.GIT_COMMIT).append(System.lineSeparator());
+ Response.GetInfo info = new Command.GetInfo(cardSuite.getCard()).send();
+ sb.append("═══ ").append(Colors.underline("ECTester applet version:")).append(" ").append(info.getVersion()).append(info.getBase() == ECTesterApplet.BASE_221 ? "" : " (extended length)").append(System.lineSeparator());
+ sb.append("═══ ").append(Colors.underline("Card ATR:")).append(" ").append(ByteUtil.bytesToHex(cardSuite.getCard().getATR().getBytes(), false)).append(System.lineSeparator());
+ sb.append("═══ ").append(Colors.underline("JavaCard version:")).append(" ").append(info.getJavaCardVersion()).append(System.lineSeparator());
CardMngr.CPLC cplc = cardSuite.getCard().getCPLC();
if (!cplc.values().isEmpty()) {
sb.append("═══ ").append(Colors.underline("Card CPLC data:")).append(System.lineSeparator());
diff --git a/src/cz/crcs/ectester/reader/output/XMLTestWriter.java b/src/cz/crcs/ectester/reader/output/XMLTestWriter.java
index 00cc6c6..8abdea5 100644
--- a/src/cz/crcs/ectester/reader/output/XMLTestWriter.java
+++ b/src/cz/crcs/ectester/reader/output/XMLTestWriter.java
@@ -108,6 +108,19 @@ public class XMLTestWriter extends BaseXMLTestWriter {
return result;
}
+ private Element appletElement(CardMngr card) {
+ Element result = doc.createElement("applet");
+ try {
+ Response.GetInfo info = new Command.GetInfo(card).send();
+ result.setAttribute("version", info.getVersion());
+ result.setAttribute("javacard", String.format("%.1f", info.getJavaCardVersion()));
+ result.setAttribute("base", String.format("%#x",info.getBase()));
+ result.setAttribute("cleanup", String.valueOf(info.getCleanupSupport()));
+ } catch (CardException ignored) {
+ }
+ return result;
+ }
+
@Override
protected Element deviceElement(TestSuite suite) {
if (suite instanceof CardTestSuite) {
@@ -116,6 +129,7 @@ public class XMLTestWriter extends BaseXMLTestWriter {
result.setAttribute("type", "card");
result.setAttribute("ectester", ECTesterReader.VERSION + ECTesterReader.GIT_COMMIT);
result.appendChild(cplcElement(cardSuite.getCard()));
+ result.appendChild(appletElement(cardSuite.getCard()));
Element atr = doc.createElement("ATR");
atr.setTextContent(ByteUtil.bytesToHex(cardSuite.getCard().getATR().getBytes(), false));
diff --git a/src/cz/crcs/ectester/reader/output/YAMLTestWriter.java b/src/cz/crcs/ectester/reader/output/YAMLTestWriter.java
index 7c99a4a..92de6c6 100644
--- a/src/cz/crcs/ectester/reader/output/YAMLTestWriter.java
+++ b/src/cz/crcs/ectester/reader/output/YAMLTestWriter.java
@@ -83,6 +83,19 @@ public class YAMLTestWriter extends BaseYAMLTestWriter {
return result;
}
+ private Map<String, Object> appletObject(CardMngr card) {
+ Map<String, Object> result = new LinkedHashMap<>();
+ try {
+ Response.GetInfo info = new Command.GetInfo(card).send();
+ result.put("version", info.getVersion());
+ result.put("javacard", info.getJavaCardVersion());
+ result.put("base", info.getBase());
+ result.put("cleanup", info.getCleanupSupport());
+ } catch (CardException ignored) {
+ }
+ return result;
+ }
+
@Override
protected Map<String, Object> deviceObject(TestSuite suite) {
if (suite instanceof CardTestSuite) {
@@ -91,6 +104,7 @@ public class YAMLTestWriter extends BaseYAMLTestWriter {
result.put("type", "card");
result.put("ectester", ECTesterReader.VERSION + ECTesterReader.GIT_COMMIT);
result.put("cplc", cplcObject(cardSuite.getCard()));
+ result.put("applet", appletObject(cardSuite.getCard()));
result.put("ATR", ByteUtil.bytesToHex(cardSuite.getCard().getATR().getBytes(), false));
return result;
}
diff --git a/src/cz/crcs/ectester/reader/test/CardDefaultSuite.java b/src/cz/crcs/ectester/reader/test/CardDefaultSuite.java
index 60ab08c..91f9ef6 100644
--- a/src/cz/crcs/ectester/reader/test/CardDefaultSuite.java
+++ b/src/cz/crcs/ectester/reader/test/CardDefaultSuite.java
@@ -34,10 +34,6 @@ public class CardDefaultSuite extends CardTestSuite {
@Override
protected void runTests() throws Exception {
- CommandTest getInfo = runTest(CommandTest.expect(new Command.GetInfo(this.card), ExpectedValue.SUCCESS));
- Response.GetInfo info = (Response.GetInfo) getInfo.getResponse();
- doTest(CompoundTest.all(ExpectedValue.SUCCESS, String.format("Get applet info: %s; %.1f; %s", info.getVersion(), info.getJavaCardVersion(), info.getBase() == ECTesterApplet.BASE_221 ? "basic" : "extended"), getInfo));
-
if (cfg.primeField) {
runDefault(KeyPair.ALG_EC_FP);
}