aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSzczepan Zalega <szczepan.zalega@gmail.com>2016-03-05 14:13:04 +0100
committerSzczepan Zalega <szczepan.zalega@gmail.com>2016-03-05 14:55:50 +0100
commit7eb19add920b2e4d2bd9818cdfa3336ffc55e129 (patch)
tree89e937322bf3e90c74c7da2107275eadb18132c8
parent1a0d7e7d1a382d6e5797f588457b6cb0934e9219 (diff)
downloadlibnitrokey-7eb19add920b2e4d2bd9818cdfa3336ffc55e129.tar.gz
libnitrokey-7eb19add920b2e4d2bd9818cdfa3336ffc55e129.tar.bz2
adding first unit tests
-rw-r--r--unittest/Makefile2
-rw-r--r--unittest/test.cc30
2 files changed, 23 insertions, 9 deletions
diff --git a/unittest/Makefile b/unittest/Makefile
index 145c738..7606c65 100644
--- a/unittest/Makefile
+++ b/unittest/Makefile
@@ -2,7 +2,7 @@ CC = $(PREFIX)-gcc
CXX = $(PREFIX)-g++
LD = $(CXX)
-INCLUDE = -I../include
+INCLUDE = -I../include -ICatch/single_include/
LIB = -L../build
LDLIBS = -lnitrokey
BUILD = build
diff --git a/unittest/test.cc b/unittest/test.cc
index 7081144..2dfd325 100644
--- a/unittest/test.cc
+++ b/unittest/test.cc
@@ -1,3 +1,6 @@
+#define CATCH_CONFIG_MAIN // This tells Catch to provide a main()
+#include "catch.hpp"
+
#include <iostream>
#include <string.h>
#include "device_proto.h"
@@ -9,9 +12,18 @@ using namespace nitrokey::device;
using namespace nitrokey::proto::stick10;
using namespace nitrokey::log;
-int main() {
+//int main() {
+
+std::string getSlotName(Stick10& stick, int slotNo){
+ ReadSlot::CommandTransaction::CommandPayload slot_req;
+ slot_req.slot_number = slotNo;
+ auto slot = ReadSlot::CommandTransaction::run(stick, slot_req);
+ std::string sName(reinterpret_cast<char*>(slot.slot_name));
+ return sName;
+}
+
+TEST_CASE( "Slot names are correct", "[slotNames]" ) {
Stick10 stick;
- cout << stick.connect() << endl;
Log::instance().set_loglevel(Loglevel::DEBUG_L2);
@@ -26,12 +38,14 @@ int main() {
}
{
- for (int i=0x20; i<0x25; i++) {
- ReadSlot::CommandTransaction::CommandPayload slot_req;
- slot_req.slot_number = i;
- auto slot = ReadSlot::CommandTransaction::run(stick, slot_req);
- auto resp = GetStatus::CommandTransaction::run(stick);
- }
+ //for (int i=0x20; i<0x23; i++) {
+ // ReadSlot::CommandTransaction::CommandPayload slot_req;
+ // slot_req.slot_number = i;
+ // auto slot = ReadSlot::CommandTransaction::run(stick, slot_req);
+ //}
+ REQUIRE( getSlotName(stick, 0x20) == std::string("slot1") );
+ REQUIRE( getSlotName(stick, 0x21) == std::string("slot2") );
+ REQUIRE( getSlotName(stick, 0x22) == std::string("slot3") );
}
stick.disconnect();
}