diff tests/libclient/js-image/main.cpp @ 36:9af360f34c7d

Misc: use raw duktape API
author David Demelier <markand@malikania.fr>
date Wed, 10 Aug 2016 14:30:51 +0200
parents d4f5f7231b84
children a47a4477f347
line wrap: on
line diff
--- a/tests/libclient/js-image/main.cpp	Fri Jul 01 13:32:08 2016 +0200
+++ b/tests/libclient/js-image/main.cpp	Wed Aug 10 14:30:51 2016 +0200
@@ -21,7 +21,7 @@
 
 #include <gtest/gtest.h>
 
-#include <malikania/client-resources-loader.hpp>
+#include <malikania/js-client-resources-loader.hpp>
 #include <malikania/js-image.hpp>
 #include <malikania/js-window.hpp>
 #include <malikania/resources-locator.hpp>
@@ -34,39 +34,39 @@
 protected:
     ResourcesLocatorDirectory m_locator;
     ClientResourcesLoader m_loader;
-
-    duk::Context m_ctx;
+    UniqueContext m_ctx;
 
 public:
     TestImage()
         : m_locator(SOURCE_DIRECTORY "/resources")
         , m_loader(m_locator)
     {
-        duk::putGlobal(m_ctx, "Malikania", duk::Object());
-
-        loadMalikaniaImage(m_ctx);
-        loadMalikaniaWindow(m_ctx);
-
-        /* Store the loader */
-        duk::putGlobal(m_ctx, "\xff""\xff""loader", &m_loader);
+        duk_push_object(m_ctx);
+        duk_put_global_string(m_ctx, "Malikania");
+        dukx_load_image(m_ctx);
+        dukx_load_window(m_ctx);
+        dukx_put_client_loader(m_ctx, &m_loader);
     }
 };
 
 TEST_F(TestImage, size)
 {
     try {
-        auto ret = duk::pevalString(m_ctx,
+        auto ret = duk_peval_string(m_ctx,
             "i = new Malikania.Image('images/smiley.png');"
             "w = i.size.width;"
             "h = i.size.height;"
         );
 
-        if (ret != 0) {
-            throw duk::exception(m_ctx, -1);
-        }
+        if (ret != 0)
+            throw dukx_exception(m_ctx, -1);
 
-        ASSERT_EQ(32, duk::getGlobal<int>(m_ctx, "w"));
-        ASSERT_EQ(32, duk::getGlobal<int>(m_ctx, "h"));
+        duk_get_global_string(m_ctx, "w");
+        ASSERT_EQ(32U, duk_to_uint(m_ctx, -1));
+        duk_pop(m_ctx);
+        duk_get_global_string(m_ctx, "h");
+        ASSERT_EQ(32U, duk_to_uint(m_ctx, -1));
+        duk_pop(m_ctx);
     } catch (const std::exception &ex) {
         FAIL() << ex.what();
     }
@@ -75,7 +75,7 @@
 TEST_F(TestImage, basic)
 {
     try {
-        auto ret = duk::pevalString(m_ctx,
+        auto ret = duk_peval_string(m_ctx,
             "w = new Malikania.Window();"
             "i = new Malikania.Image('images/smiley.png');"
             "w.setDrawingColor('lightskyblue');"
@@ -84,9 +84,8 @@
             "w.present();"
         );
 
-        if (ret != 0) {
-            throw duk::exception(m_ctx, -1);
-        }
+        if (ret != 0)
+            throw dukx_exception(m_ctx, -1);
 
         std::this_thread::sleep_for(3s);
     } catch (const std::exception &ex) {
@@ -97,7 +96,7 @@
 TEST_F(TestImage, stretch)
 {
     try {
-        auto ret = duk::pevalString(m_ctx,
+        auto ret = duk_peval_string(m_ctx,
             "w = new Malikania.Window();"
             "i = new Malikania.Image('images/smiley.png');"
             "w.setDrawingColor('lightskyblue');"
@@ -106,9 +105,8 @@
             "w.present();"
         );
 
-        if (ret != 0) {
-            throw duk::exception(m_ctx, -1);
-        }
+        if (ret != 0)
+            throw dukx_exception(m_ctx, -1);
 
         std::this_thread::sleep_for(3s);
     } catch (const std::exception &ex) {