From da09715d9ec955b4b139b45a1b2c5270ca0ebf2d Mon Sep 17 00:00:00 2001 From: J08nY Date: Sun, 3 Dec 2017 20:59:41 +0100 Subject: Introduce BaseTestable and Testable Metadata. --- .../crcs/ectester/reader/test/CommandTestable.java | 47 ++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 src/cz/crcs/ectester/reader/test/CommandTestable.java (limited to 'src/cz/crcs/ectester/reader/test/CommandTestable.java') diff --git a/src/cz/crcs/ectester/reader/test/CommandTestable.java b/src/cz/crcs/ectester/reader/test/CommandTestable.java new file mode 100644 index 0000000..f09a736 --- /dev/null +++ b/src/cz/crcs/ectester/reader/test/CommandTestable.java @@ -0,0 +1,47 @@ +package cz.crcs.ectester.reader.test; + +import cz.crcs.ectester.common.test.BaseTestable; +import cz.crcs.ectester.common.test.TestException; +import cz.crcs.ectester.reader.command.Command; +import cz.crcs.ectester.reader.response.Response; + +import javax.smartcardio.CardException; + +/** + * @author Jan Jancar johny@neuromancer.sk + */ +public class CommandTestable extends BaseTestable { + private Command command; + private Response response; + + public CommandTestable(Command command) { + this.command = command; + } + + public Command getCommand() { + return command; + } + + public Response getResponse() { + return response; + } + + @Override + public void run() throws TestException { + try { + response = command.send(); + } catch (CardException e) { + throw new TestException(e); + } + + hasRun = true; + if (response.error()) { + error = true; + } else if (response.successful()) { + ok = true; + } + meta.clear(); + meta.put("Natural SW", response.getNaturalSW()); + meta.put("SWs", response.getSWs()); + } +} -- cgit v1.2.3-70-g09d2