diff options
| -rw-r--r-- | unittest/test.cc | 9 | ||||
| -rw-r--r-- | unittest/test2.cc | 27 | ||||
| -rw-r--r-- | unittest/test3.cc | 21 | ||||
| -rw-r--r-- | unittest/test_HOTP.cc | 6 | 
4 files changed, 34 insertions, 29 deletions
| diff --git a/unittest/test.cc b/unittest/test.cc index 6744b45..99f96ac 100644 --- a/unittest/test.cc +++ b/unittest/test.cc @@ -13,8 +13,9 @@ using namespace nitrokey::proto::stick10;  using namespace nitrokey::log;  using namespace nitrokey::misc; +using Dev10 = std::shared_ptr<Stick10>; -std::string getSlotName(Stick10 &stick, int slotNo) { +std::string getSlotName(Dev10 stick, int slotNo) {    auto slot_req = get_payload<ReadSlot>();    slot_req.slot_number = slotNo;    auto slot = ReadSlot::CommandTransaction::run(stick, slot_req); @@ -23,8 +24,8 @@ std::string getSlotName(Stick10 &stick, int slotNo) {  }  TEST_CASE("Slot names are correct", "[slotNames]") { -  Stick10 stick; -  bool connected = stick.connect(); +  auto stick = make_shared<Stick10>(); +  bool connected = stick->connect();    REQUIRE(connected == true);    Log::instance().set_loglevel(Loglevel::DEBUG); @@ -79,5 +80,5 @@ TEST_CASE("Slot names are correct", "[slotNames]") {      REQUIRE(sName == std::string("login1"));    } -  stick.disconnect(); +  stick->disconnect();  } diff --git a/unittest/test2.cc b/unittest/test2.cc index 00e70e3..4b61a3c 100644 --- a/unittest/test2.cc +++ b/unittest/test2.cc @@ -20,9 +20,10 @@ using namespace nitrokey::proto::stick20;  using namespace nitrokey::log;  using namespace nitrokey::misc; +#include <memory>  template<typename CMDTYPE> -void execute_password_command(Device &stick, const char *password, const char kind = 'P') { +void execute_password_command(std::shared_ptr<Device> stick, const char *password, const char kind = 'P') {    auto p = get_payload<CMDTYPE>();    if (kind == 'P'){      p.set_kind_user(); @@ -47,8 +48,8 @@ void SKIP_TEST() {  TEST_CASE("long operation test", "[test_long]") {    SKIP_TEST(); -  Stick20 stick; -  bool connected = stick.connect(); +  auto stick = make_shared<Stick20>(); +  bool connected = stick->connect();    REQUIRE(connected == true);    Log::instance().set_loglevel(Loglevel::DEBUG);    try{ @@ -123,8 +124,8 @@ TEST_CASE("test device commands ids", "[fast]") {  }  TEST_CASE("test device internal status with various commands", "[fast]") { -  Stick20 stick; -  bool connected = stick.connect(); +  auto stick = make_shared<Stick20>(); +  bool connected = stick->connect();    REQUIRE(connected == true);    Log::instance().set_loglevel(Loglevel::DEBUG); @@ -147,8 +148,8 @@ TEST_CASE("test device internal status with various commands", "[fast]") {  }  TEST_CASE("setup hidden volume test", "[hidden]") { -  Stick20 stick; -  bool connected = stick.connect(); +  auto stick = make_shared<Stick20>(); +  bool connected = stick->connect();    REQUIRE(connected == true);    Log::instance().set_loglevel(Loglevel::DEBUG);    stick10::LockDevice::CommandTransaction::run(stick); @@ -170,8 +171,8 @@ TEST_CASE("setup hidden volume test", "[hidden]") {  }  TEST_CASE("setup multiple hidden volumes", "[hidden]") { -  Stick20 stick; -  bool connected = stick.connect(); +  auto stick = make_shared<Stick20>(); +  bool connected = stick->connect();    REQUIRE(connected == true);    Log::instance().set_loglevel(Loglevel::DEBUG); @@ -207,8 +208,8 @@ TEST_CASE("setup multiple hidden volumes", "[hidden]") {  TEST_CASE("update password change", "[dangerous]") {    SKIP_TEST(); -  Stick20 stick; -  bool connected = stick.connect(); +  auto stick = make_shared<Stick20>(); +  bool connected = stick->connect();    REQUIRE(connected == true);    Log::instance().set_loglevel(Loglevel::DEBUG); @@ -228,8 +229,8 @@ TEST_CASE("update password change", "[dangerous]") {  }  TEST_CASE("general test", "[test]") { -  Stick20 stick; -  bool connected = stick.connect(); +  auto stick = make_shared<Stick20>(); +  bool connected = stick->connect();    REQUIRE(connected == true);    Log::instance().set_loglevel(Loglevel::DEBUG); diff --git a/unittest/test3.cc b/unittest/test3.cc index 9049365..215df78 100644 --- a/unittest/test3.cc +++ b/unittest/test3.cc @@ -26,13 +26,15 @@ using namespace nitrokey::proto::stick10_08;  using namespace nitrokey::log;  using namespace nitrokey::misc; -void connect_and_setup(Stick10 &stick) { -  bool connected = stick.connect(); +using Dev10 = std::shared_ptr<Stick10>; + +void connect_and_setup(Dev10 stick) { +  bool connected = stick->connect();    REQUIRE(connected == true);    Log::instance().set_loglevel(Loglevel::DEBUG);  } -void authorize(Stick10 &stick) { +void authorize(Dev10 stick) {    auto authreq = get_payload<FirstAuthenticate>();    strcpy((char *) (authreq.card_password), default_admin_pin);    strcpy((char *) (authreq.temporary_password), temporary_password); @@ -45,7 +47,8 @@ void authorize(Stick10 &stick) {  }  TEST_CASE("write slot", "[pronew]"){ -  Stick10 stick; +  auto stick = make_shared<Stick10>(); +    connect_and_setup(stick);    authorize(stick); @@ -81,7 +84,7 @@ TEST_CASE("write slot", "[pronew]"){  TEST_CASE("erase slot", "[pronew]"){ -  Stick10 stick; +  auto stick = make_shared<Stick10>();    connect_and_setup(stick);    authorize(stick); @@ -107,7 +110,7 @@ TEST_CASE("erase slot", "[pronew]"){  }  TEST_CASE("write general config", "[pronew]") { -  Stick10 stick; +  auto stick = make_shared<Stick10>();    connect_and_setup(stick);    authorize(stick); @@ -121,7 +124,7 @@ TEST_CASE("write general config", "[pronew]") {  }  TEST_CASE("authorize user HOTP", "[pronew]") { -  Stick10 stick; +  auto stick = make_shared<Stick10>();    connect_and_setup(stick);    authorize(stick); @@ -164,7 +167,7 @@ TEST_CASE("authorize user HOTP", "[pronew]") {  }  TEST_CASE("check firmware version", "[pronew]") { -  Stick10 stick; +  auto stick = make_shared<Stick10>();    connect_and_setup(stick);    auto p = GetStatus::CommandTransaction::run(stick); @@ -172,7 +175,7 @@ TEST_CASE("check firmware version", "[pronew]") {  }  TEST_CASE("authorize user TOTP", "[pronew]") { -  Stick10 stick; +  auto stick = make_shared<Stick10>();    connect_and_setup(stick);    authorize(stick); diff --git a/unittest/test_HOTP.cc b/unittest/test_HOTP.cc index d31df55..c6b62a3 100644 --- a/unittest/test_HOTP.cc +++ b/unittest/test_HOTP.cc @@ -34,8 +34,8 @@ TEST_CASE("test secret", "[functions]") {  }  TEST_CASE("Test HOTP codes according to RFC", "[HOTP]") { -    Stick10 stick; -    bool connected = stick.connect(); +    std::shared_ptr<Stick10> stick = make_shared<Stick10>(); +    bool connected = stick->connect();    REQUIRE(connected == true); @@ -98,5 +98,5 @@ TEST_CASE("Test HOTP codes according to RFC", "[HOTP]") {    } -  stick.disconnect(); +  stick->disconnect();  } | 
