Fix test cases

This commit is contained in:
Sebastian Messmer 2015-02-16 21:36:00 +01:00
parent a01a6f64d1
commit 687a7c9500
3 changed files with 16 additions and 22 deletions

View File

@ -5,11 +5,7 @@
messmer/cmake: 0 messmer/cmake: 0
[parent] [parent]
# The parent version of this block. Must match folder name. E.g. messmer/cpp-utils: 0
# user/block # No version number means not published yet
# You can change it to publish to a different track, and change version, e.g.
# user/block(track): 7
[paths] [paths]
# Local directories to look for headers (within block) # Local directories to look for headers (within block)
# / # /

View File

@ -1,14 +1,12 @@
#include "google/gtest/gtest.h" #include "google/gtest/gtest.h"
#include "../OptionalOwnershipPointer.h" #include "../optional_ownership_ptr.h"
#include "../macros.h"
using namespace fspp;
using std::unique_ptr; using std::unique_ptr;
using std::function; using std::function;
using ::testing::Test; using ::testing::Test;
using fspp::ptr::optional_ownership_ptr;
#define UNUSED(x) ((void)x) using namespace cpputils;
class TestObject { class TestObject {
public: public:
@ -58,7 +56,7 @@ TEST_F(OptionalOwnershipPointerTest, TestIsInitializedCorrectly) {
TEST_F(OptionalOwnershipPointerTest, DestructsWhenItHasOwnership) { TEST_F(OptionalOwnershipPointerTest, DestructsWhenItHasOwnership) {
{ {
optional_ownership_ptr<TestObject> ptr = fspp::ptr::WithOwnership(unique_ptr<TestObject>(obj.get())); optional_ownership_ptr<TestObject> ptr = WithOwnership(unique_ptr<TestObject>(obj.get()));
UNUSED(ptr); UNUSED(ptr);
} }
EXPECT_TRUE(obj.isDestructed()); EXPECT_TRUE(obj.isDestructed());
@ -66,8 +64,8 @@ TEST_F(OptionalOwnershipPointerTest, DestructsWhenItHasOwnership) {
TEST_F(OptionalOwnershipPointerTest, DestructsWhenItHasOwnershipAfterAssignment) { TEST_F(OptionalOwnershipPointerTest, DestructsWhenItHasOwnershipAfterAssignment) {
{ {
optional_ownership_ptr<TestObject> ptr = fspp::ptr::WithoutOwnership(obj.get()); optional_ownership_ptr<TestObject> ptr = WithoutOwnership(obj.get());
ptr = fspp::ptr::WithOwnership(unique_ptr<TestObject>(obj2.get())); ptr = WithOwnership(unique_ptr<TestObject>(obj2.get()));
} }
EXPECT_FALSE(obj.isDestructed()); EXPECT_FALSE(obj.isDestructed());
EXPECT_TRUE(obj2.isDestructed()); EXPECT_TRUE(obj2.isDestructed());
@ -75,7 +73,7 @@ TEST_F(OptionalOwnershipPointerTest, DestructsWhenItHasOwnershipAfterAssignment)
TEST_F(OptionalOwnershipPointerTest, DoesntDestructWhenItDoesntHaveOwnership) { TEST_F(OptionalOwnershipPointerTest, DoesntDestructWhenItDoesntHaveOwnership) {
{ {
optional_ownership_ptr<TestObject> ptr = fspp::ptr::WithoutOwnership(obj.get()); optional_ownership_ptr<TestObject> ptr = WithoutOwnership(obj.get());
UNUSED(ptr); UNUSED(ptr);
} }
EXPECT_FALSE(obj.isDestructed()); EXPECT_FALSE(obj.isDestructed());
@ -83,30 +81,30 @@ TEST_F(OptionalOwnershipPointerTest, DoesntDestructWhenItDoesntHaveOwnership) {
TEST_F(OptionalOwnershipPointerTest, DoesntDestructWhenItDoesntHaveOwnershipAfterAssignment) { TEST_F(OptionalOwnershipPointerTest, DoesntDestructWhenItDoesntHaveOwnershipAfterAssignment) {
{ {
optional_ownership_ptr<TestObject> ptr = fspp::ptr::WithOwnership(unique_ptr<TestObject>(obj.get())); optional_ownership_ptr<TestObject> ptr = WithOwnership(unique_ptr<TestObject>(obj.get()));
ptr = fspp::ptr::WithoutOwnership(obj2.get()); ptr = WithoutOwnership(obj2.get());
EXPECT_TRUE(obj.isDestructed()); EXPECT_TRUE(obj.isDestructed());
} }
EXPECT_FALSE(obj2.isDestructed()); EXPECT_FALSE(obj2.isDestructed());
} }
TEST_F(OptionalOwnershipPointerTest, DestructsOnReassignmentWithNull) { TEST_F(OptionalOwnershipPointerTest, DestructsOnReassignmentWithNull) {
optional_ownership_ptr<TestObject> ptr = fspp::ptr::WithOwnership(unique_ptr<TestObject>(obj.get())); optional_ownership_ptr<TestObject> ptr = WithOwnership(unique_ptr<TestObject>(obj.get()));
ptr = fspp::ptr::null<TestObject>(); ptr = null<TestObject>();
EXPECT_TRUE(obj.isDestructed()); EXPECT_TRUE(obj.isDestructed());
} }
TEST_F(OptionalOwnershipPointerTest, DoesntCrashWhenDestructingNullptr1) { TEST_F(OptionalOwnershipPointerTest, DoesntCrashWhenDestructingNullptr1) {
optional_ownership_ptr<TestObject> ptr = fspp::ptr::null<TestObject>(); optional_ownership_ptr<TestObject> ptr = null<TestObject>();
UNUSED(ptr); UNUSED(ptr);
} }
TEST_F(OptionalOwnershipPointerTest, DoesntCrashWhenDestructingNullptrWithoutOwnership) { TEST_F(OptionalOwnershipPointerTest, DoesntCrashWhenDestructingNullptrWithoutOwnership) {
optional_ownership_ptr<TestObject> ptr = fspp::ptr::WithoutOwnership((TestObject*)nullptr); optional_ownership_ptr<TestObject> ptr = WithoutOwnership((TestObject*)nullptr);
UNUSED(ptr); UNUSED(ptr);
} }
TEST_F(OptionalOwnershipPointerTest, DoesntCrashWhenDestructingNullptrWithOwnership) { TEST_F(OptionalOwnershipPointerTest, DoesntCrashWhenDestructingNullptrWithOwnership) {
optional_ownership_ptr<TestObject> ptr = fspp::ptr::WithOwnership(unique_ptr<TestObject>(nullptr)); optional_ownership_ptr<TestObject> ptr = WithOwnership(unique_ptr<TestObject>(nullptr));
UNUSED(ptr); UNUSED(ptr);
} }

View File

@ -1,7 +1,7 @@
#include "google/gtest/gtest.h" #include "google/gtest/gtest.h"
#include "../pointer.h" #include "../pointer.h"
using namespace fspp; using namespace cpputils;
using std::unique_ptr; using std::unique_ptr;
using std::make_unique; using std::make_unique;