diff --git a/test/TestSequence.cpp b/test/TestSequence.cpp index c66dcf43a..882729dcf 100644 --- a/test/TestSequence.cpp +++ b/test/TestSequence.cpp @@ -7,10 +7,10 @@ TEST(TestSequence, CmdBufSequenceBeginEnd) { kp::Manager mgr; - std::weak_ptr sqWeakPtr = - mgr.getOrCreateManagedSequence("newSequence"); + { + std::shared_ptr sq = + mgr.getOrCreateManagedSequence("newSequence"); - if (std::shared_ptr sq = sqWeakPtr.lock()) { EXPECT_TRUE(sq->eval()); EXPECT_TRUE(!sq->isRecording()); EXPECT_TRUE(sq->begin()); @@ -24,3 +24,18 @@ TEST(TestSequence, CmdBufSequenceBeginEnd) EXPECT_TRUE(sq->eval()); } } + +TEST(TestSequence, SequenceDestructorViaManager) +{ + std::shared_ptr sq = nullptr; + + { + kp::Manager mgr; + + sq = mgr.getOrCreateManagedSequence("newSequence"); + + EXPECT_TRUE(sq->isInit()); + } + + EXPECT_FALSE(sq->isInit()); +}