diff --git a/test/test_nr1.cc b/test/test_nr1.cc index 0385391..301d63c 100644 --- a/test/test_nr1.cc +++ b/test/test_nr1.cc @@ -86,6 +86,8 @@ namespace pEp { // set() can only be called once, will throw otherwise. class String { public: + // Usually you _have_ to use this ctor, because its impossible to create a static + // object if you have to know the address of a dynamically created one. String() = default; // Best to use this constructor, as the object is in a valid state when the wrapped @@ -112,9 +114,7 @@ namespace pEp { // init _c_str_pp = c_str_pp; - // _c_str_p.reset(*_c_str_pp, [&](char* ptr) { this->_free(ptr); }); _c_str_p = *_c_str_pp; - _is_initialized = true; pEpLogClass(to_string() + " - taking ownership"); } @@ -129,31 +129,14 @@ namespace pEp { // DEALLOCATION _free(); - // // if we point to an initialized string - // if (*_c_str_pp != nullptr) { - // // if the string there is not the one we created - //// if (*_c_str_pp != _c_str_p.get()) { - // if (*_c_str_pp != _c_str_p) { - // // we need to free it before we lose the pointer to it - // pEpLog("freeing foreign allocated string"); - // pEp::free(*_c_str_pp); - // // } // else it will be free automatically upon .reset() - // } - // //and we need to anyways free the strings we create ourselfes - // if - // pEp::free(_c_str_p;) - // } - // ALLOCATION if (str.empty()) { // if the new value is empty str, lets point to nothing *_c_str_pp = nullptr; - // _c_str_p.reset(*_c_str_pp); _c_str_p = *_c_str_pp; } else { *_c_str_pp = pEp::alloc(str); - // _c_str_p.reset(*_c_str_pp, [&](char* ptr) { this->_free(ptr); }); _c_str_p = *_c_str_pp; } pEpLogClass("After: " + to_string()); @@ -198,7 +181,6 @@ namespace pEp { static bool log_enabled; - private: void _free() { @@ -219,7 +201,6 @@ namespace pEp { bool _is_initialized{ false }; char** _c_str_pp{ nullptr }; - // std::shared_ptr _c_str_p{}; char* _c_str_p{ nullptr }; Adapter::pEpLog::pEpLogger logger{ "pEp::String", log_enabled }; @@ -324,7 +305,7 @@ void test_getters(char const* const* const c_str_p, pEp::String& pstr) } else { std::string tmp{ pstr }; pEpLog("operator std::string(): " + tmp); - assert(tmp == ""); + assert(tmp.empty()); } }