]> git.sesse.net Git - casparcg/commitdiff
2.0.0.2:
authorronag <ronag@362d55ac-95cf-4e76-9f9a-cbaa9c17b72d>
Tue, 2 Nov 2010 15:26:03 +0000 (15:26 +0000)
committerronag <ronag@362d55ac-95cf-4e76-9f9a-cbaa9c17b72d>
Tue, 2 Nov 2010 15:26:03 +0000 (15:26 +0000)
- Updated layer_test.

git-svn-id: https://casparcg.svn.sourceforge.net/svnroot/casparcg/server/branches/2.0.0.2@211 362d55ac-95cf-4e76-9f9a-cbaa9c17b72d

test/core/renderer/display_device.cpp [deleted file]
test/core/renderer/layer_test.cpp
test/core/renderer/render_device.cpp [deleted file]

diff --git a/test/core/renderer/display_device.cpp b/test/core/renderer/display_device.cpp
deleted file mode 100644 (file)
index ae98487..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-#include <gtest/gtest.h>\r
-\r
-#include <core/frame/gpu_frame.h>\r
-#include <core/renderer/layer.h>\r
-#include <core/producer/frame_producer.h>\r
-#include <common/exception/exceptions.h>\r
-\r
-using namespace caspar;\r
-using namespace caspar::core;
\ No newline at end of file
index e57d6ec90bd0dd63a5feb4358a333ea24b7750e7..fd1b34df8ade14956982504a0e1df12fe44b63e6 100644 (file)
@@ -1,5 +1,7 @@
 #include <gtest/gtest.h>\r
 \r
+#include "../mock/mock_frame_producer.h"\r
+\r
 #include <core/frame/gpu_frame.h>\r
 #include <core/renderer/layer.h>\r
 #include <core/producer/frame_producer.h>\r
@@ -8,20 +10,6 @@
 using namespace caspar;\r
 using namespace caspar::core;\r
 \r
-struct mock_frame_producer : public frame_producer\r
-{\r
-       gpu_frame_ptr get_frame()\r
-       { return std::make_shared<gpu_frame>(0, 0); }\r
-       std::shared_ptr<frame_producer> get_following_producer() const \r
-       { return nullptr; }\r
-       void set_leading_producer(const std::shared_ptr<frame_producer>&) \r
-       {}\r
-       const frame_format_desc& get_frame_format_desc() const\r
-       {return frame_format_desc();}\r
-       void initialize(const frame_factory_ptr& factory)\r
-       {}\r
-};\r
-\r
 TEST(layer_test, load_nullptr) \r
 {\r
        core::renderer::layer layer;\r
@@ -35,12 +23,10 @@ TEST(layer_test, load)
        auto background = std::make_shared<mock_frame_producer>();\r
 \r
        layer.load(background);\r
-\r
-       auto frame = layer.get_frame();\r
-\r
+       \r
+       ASSERT_TRUE(layer.get_frame() == nullptr);\r
        ASSERT_TRUE(layer.active() == nullptr);\r
        ASSERT_TRUE(layer.background() == background);\r
-       ASSERT_TRUE(frame == nullptr);\r
 }\r
 \r
 TEST(layer_test, load_auto_play)\r
@@ -49,12 +35,10 @@ TEST(layer_test, load_auto_play)
        auto active = std::make_shared<mock_frame_producer>();\r
 \r
        layer.load(active, renderer::load_option::auto_play);\r
-       \r
-       auto frame = layer.get_frame();\r
-\r
+               \r
+       ASSERT_TRUE(layer.get_frame() != nullptr);\r
        ASSERT_TRUE(layer.active() == active);\r
        ASSERT_TRUE(layer.background() == nullptr);\r
-       ASSERT_TRUE(frame != nullptr);\r
 }\r
 \r
 TEST(layer_test, load_active)\r
@@ -66,11 +50,9 @@ TEST(layer_test, load_active)
        layer.load(active, renderer::load_option::auto_play);\r
        layer.load(background);\r
        \r
-       auto frame = layer.get_frame();\r
-\r
+       ASSERT_TRUE(layer.get_frame() != nullptr);\r
        ASSERT_TRUE(layer.active() == active);\r
        ASSERT_TRUE(layer.background() == background);\r
-       ASSERT_TRUE(frame != nullptr);\r
 }\r
 \r
 TEST(layer_test, load_preview)\r
@@ -81,10 +63,11 @@ TEST(layer_test, load_preview)
        layer.load(background, renderer::load_option::preview);\r
 \r
        auto frame = layer.get_frame();\r
-\r
+       \r
+       ASSERT_TRUE(frame != nullptr);\r
+       ASSERT_TRUE(layer.get_frame() == frame);\r
        ASSERT_TRUE(layer.active() == nullptr);\r
        ASSERT_TRUE(layer.background() == background);\r
-       ASSERT_TRUE(frame != nullptr);\r
        ASSERT_TRUE(frame->audio_data().empty());\r
 }\r
 \r
@@ -96,12 +79,13 @@ TEST(layer_test, load_preview_active)
 \r
        layer.load(active, renderer::load_option::auto_play);\r
        layer.load(background, renderer::load_option::preview);\r
-       \r
+               \r
        auto frame = layer.get_frame();\r
 \r
+       ASSERT_TRUE(frame != nullptr);\r
+       ASSERT_TRUE(layer.get_frame() == frame);\r
        ASSERT_TRUE(layer.active() == nullptr);\r
        ASSERT_TRUE(layer.background() == background);\r
-       ASSERT_TRUE(frame != nullptr);\r
 }\r
 \r
 TEST(layer_test, load_play)\r
@@ -111,10 +95,114 @@ TEST(layer_test, load_play)
 \r
        layer.load(active);\r
        layer.play();\r
+       \r
+       ASSERT_TRUE(layer.get_frame() != nullptr);\r
+       ASSERT_TRUE(layer.active() == active);\r
+       ASSERT_TRUE(layer.background() == nullptr);\r
+}\r
+\r
+\r
+TEST(layer_test, load_play2)\r
+{      \r
+       core::renderer::layer layer;\r
+       layer.play();\r
+\r
+       auto frame = layer.get_frame();\r
+\r
+       ASSERT_TRUE(frame == nullptr);\r
+}\r
+\r
+TEST(layer_test, pause)\r
+{\r
+       core::renderer::layer layer;\r
+       auto active = std::make_shared<mock_frame_producer>();\r
 \r
+       layer.load(active, renderer::load_option::auto_play);\r
+       \r
        auto frame = layer.get_frame();\r
 \r
+       layer.pause();\r
+       \r
+       ASSERT_TRUE(layer.active() == active);\r
+       ASSERT_TRUE(layer.get_frame() == frame);\r
+\r
+       layer.play();\r
+       \r
        ASSERT_TRUE(layer.active() == active);\r
+       ASSERT_TRUE(layer.get_frame() != frame);\r
+}\r
+\r
+TEST(layer_test, stop)\r
+{\r
+       core::renderer::layer layer;\r
+       auto active = std::make_shared<mock_frame_producer>();\r
+       auto background = std::make_shared<mock_frame_producer>();\r
+\r
+       layer.load(active, renderer::load_option::auto_play);\r
+       layer.load(background, renderer::load_option::preview);\r
+       layer.get_frame();\r
+\r
+       layer.stop();\r
+               \r
+       ASSERT_TRUE(layer.get_frame() == nullptr);\r
+       ASSERT_TRUE(layer.active() == nullptr);\r
+       ASSERT_TRUE(layer.background() == background);;\r
+}\r
+\r
+TEST(layer_test, clear)\r
+{\r
+       core::renderer::layer layer;\r
+       auto active = std::make_shared<mock_frame_producer>();\r
+       auto background = std::make_shared<mock_frame_producer>();\r
+\r
+       layer.load(active, renderer::load_option::auto_play);\r
+       layer.load(background, renderer::load_option::preview);\r
+       layer.clear();\r
+               \r
+       ASSERT_TRUE(layer.get_frame() == nullptr);\r
+       ASSERT_TRUE(layer.active() == nullptr);\r
        ASSERT_TRUE(layer.background() == nullptr);\r
-       ASSERT_TRUE(frame != nullptr);\r
 }\r
+\r
+TEST(layer_test, following_producer)\r
+{\r
+       core::renderer::layer layer;\r
+       auto active = std::make_shared<mock_frame_producer>(true);\r
+       auto following = std::make_shared<mock_frame_producer>();\r
+       layer.load(active, renderer::load_option::auto_play);\r
+               \r
+       ASSERT_TRUE(layer.get_frame() == nullptr);\r
+       ASSERT_TRUE(layer.active() == nullptr);\r
+               \r
+       layer.load(active, renderer::load_option::auto_play);\r
+       active->set_following_producer(following);\r
+       \r
+       ASSERT_TRUE(layer.get_frame() != nullptr);\r
+       ASSERT_TRUE(layer.active() == following);\r
+}\r
+\r
+TEST(layer_test, leading_producer)\r
+{\r
+       core::renderer::layer layer;\r
+       auto active = std::make_shared<mock_frame_producer>();\r
+       auto active2 = std::make_shared<mock_frame_producer>();\r
+       layer.load(active, renderer::load_option::auto_play);\r
+               \r
+       ASSERT_TRUE(layer.get_frame() != nullptr);\r
+       ASSERT_TRUE(layer.active() == active);\r
+               \r
+       layer.load(active2, renderer::load_option::auto_play);\r
+       \r
+       ASSERT_TRUE(layer.get_frame() != nullptr);\r
+       ASSERT_TRUE(layer.active() == active2);\r
+}\r
+\r
+TEST(layer_test, get_frame_exception)\r
+{\r
+       core::renderer::layer layer;\r
+       auto active = std::make_shared<mock_frame_producer>(false, true);\r
+       layer.load(active, renderer::load_option::auto_play);\r
+                       \r
+       ASSERT_TRUE(layer.get_frame() == nullptr);\r
+       ASSERT_TRUE(layer.active() == nullptr);\r
+}
\ No newline at end of file
diff --git a/test/core/renderer/render_device.cpp b/test/core/renderer/render_device.cpp
deleted file mode 100644 (file)
index ae98487..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-#include <gtest/gtest.h>\r
-\r
-#include <core/frame/gpu_frame.h>\r
-#include <core/renderer/layer.h>\r
-#include <core/producer/frame_producer.h>\r
-#include <common/exception/exceptions.h>\r
-\r
-using namespace caspar;\r
-using namespace caspar::core;
\ No newline at end of file