diff examples/js-window/main.cpp @ 80:a162f380f02e

CMake: create examples, closes #615
author David Demelier <markand@malikania.fr>
date Sun, 22 Jan 2017 09:59:14 +0100
parents 78de82cc6bde
children 119bcc5a727e
line wrap: on
line diff
--- a/examples/js-window/main.cpp	Sat Jan 21 14:13:52 2017 +0100
+++ b/examples/js-window/main.cpp	Sun Jan 22 09:59:14 2017 +0100
@@ -1,7 +1,7 @@
 /*
  * main.cpp -- test Window (JavaScript binding)
  *
- * Copyright (c) 2013-2016 Malikania Authors
+ * Copyright (c) 2013-2017 Malikania Authors
  *
  * Permission to use, copy, modify, and/or distribute this software for any
  * purpose with or without fee is hereby granted, provided that the above
@@ -17,71 +17,60 @@
  */
 
 #include <chrono>
+#include <iostream>
 #include <thread>
 
-#define BOOST_TEST_MODULE "Javascript Window"
-#include <boost/test/unit_test.hpp>
-
 #include <malikania/js_window.hpp>
 
-using namespace mlk;
 using namespace std::chrono_literals;
 
-class test_window {
-protected:
-    dukx_context m_ctx;
+void basic(dukx_context& ctx)
+{
+    auto ret = duk_peval_string(ctx,
+        "w = new Malikania.Window();"
+        "w.setDrawingColor('lightskyblue');"
+        "w.clear();"
+        "w.present();"
+    );
+
+    if (ret != 0) {
+        throw dukx_get_exception(ctx, -1);
+    }
+
+    std::this_thread::sleep_for(3s);
+}
 
-public:
-    test_window()
-    {
-        duk_push_object(m_ctx);
-        duk_put_global_string(m_ctx, "Malikania");
-        mlk::dukx_load_window(m_ctx);
+void rect(dukx_context& ctx)
+{
+    auto ret = duk_peval_string(ctx,
+        "w = new Malikania.Window();"
+        "w.setDrawingColor('lightskyblue');"
+        "w.clear();"
+        "w.setDrawingColor('white');"
+        "w.drawRectangle({ x: 10, y: 10, width: 10, height: 10 });"
+        "w.present();"
+    );
+
+    if (ret != 0) {
+        throw dukx_get_exception(ctx, -1);
     }
-};
 
-BOOST_FIXTURE_TEST_SUITE(test_window_suite, test_window)
+    std::this_thread::sleep_for(3s);
+}
 
-BOOST_AUTO_TEST_CASE(basic)
+int main()
 {
     try {
-        auto ret = duk_peval_string(m_ctx,
-            "w = new Malikania.Window();"
-            "w.setDrawingColor('lightskyblue');"
-            "w.clear();"
-            "w.present();"
-        );
+        dukx_context ctx;
+
+        duk_push_object(ctx);
+        duk_put_global_string(ctx, "Malikania");
+        mlk::dukx_load_window(ctx);
 
-        if (ret != 0) {
-            throw dukx_get_exception(m_ctx, -1);
-        }
-
-        std::this_thread::sleep_for(3s);
-    } catch (const std::exception &ex) {
-        BOOST_FAIL(ex.what());
+        basic(ctx);
+        rect(ctx);
+    } catch (const std::exception& ex) {
+        std::cerr << ex.what() << std::endl;
+        return 1;
     }
 }
-
-BOOST_AUTO_TEST_CASE(rect)
-{
-    try {
-        auto ret = duk_peval_string(m_ctx,
-            "w = new Malikania.Window();"
-            "w.setDrawingColor('lightskyblue');"
-            "w.clear();"
-            "w.setDrawingColor('white');"
-            "w.drawRectangle({ x: 10, y: 10, width: 10, height: 10 });"
-            "w.present();"
-        );
-
-        if (ret != 0) {
-            throw dukx_get_exception(m_ctx, -1);
-        }
-
-        std::this_thread::sleep_for(3s);
-    } catch (const std::exception &ex) {
-        BOOST_FAIL(ex.what());
-    }
-}
-
-BOOST_AUTO_TEST_SUITE_END()