diff options
Diffstat (limited to 'ext/librethinkdbxx/test/test.cc')
-rw-r--r-- | ext/librethinkdbxx/test/test.cc | 114 |
1 files changed, 0 insertions, 114 deletions
diff --git a/ext/librethinkdbxx/test/test.cc b/ext/librethinkdbxx/test/test.cc deleted file mode 100644 index fb5ca2fc..00000000 --- a/ext/librethinkdbxx/test/test.cc +++ /dev/null @@ -1,114 +0,0 @@ -#include <signal.h> - -#include <ctime> - -#include "testlib.h" - -extern void run_upstream_tests(); - -void test_json(const char* string, const char* ret = "") { - TEST_EQ(R::Datum::from_json(string).as_json().c_str(), ret[0] ? ret : string); -} - -void test_json_parse_print() { - enter_section("json"); - test_json("-0.0", "-0.0"); - test_json("null"); - test_json("1.2"); - test_json("1.2e20", "1.2e+20"); - test_json("true"); - test_json("false"); - test_json("\"\""); - test_json("\"\\u1234\"", "\"\u1234\""); - test_json("\"\\\"\""); - test_json("\"foobar\""); - test_json("[]"); - test_json("[1]"); - test_json("[1,2,3,4]"); - test_json("{}"); - test_json("{\"a\":1}"); - test_json("{\"a\":1,\"b\":2,\"c\":3}"); - exit_section(); -} - -void test_reql() { - enter_section("reql"); - TEST_EQ((R::expr(1) + 2).run(*conn), R::Datum(3)); - TEST_EQ(R::range(4).count().run(*conn), R::Datum(4)); - TEST_EQ(R::js("Math.abs")(-1).run(*conn), 1); - exit_section(); -} - -void test_cursor() { - enter_section("cursor"); - R::Cursor cursor = R::range(10000).run(*conn); - TEST_EQ(cursor.next(), 0); - R::Array array = cursor.to_array(); - TEST_EQ(array.size(), 9999); - TEST_EQ(*array.begin(), 1); - TEST_EQ(*array.rbegin(), 9999); - int i = 0; - R::range(3).run(*conn).each([&i](R::Datum&& datum){ - TEST_EQ(datum, i++); }); - exit_section(); -} - -void test_encode(const char* str, const char* b) { - TEST_EQ(R::base64_encode(str), b); -} - -void test_decode(const char* b, const char* str) { - std::string out; - TEST_EQ(R::base64_decode(b, out), true); - TEST_EQ(out, str); -} - -#define TEST_B64(a, b) test_encode(a, b); test_decode(b, a) - -void test_binary() { - enter_section("base64"); - TEST_B64("", ""); - TEST_B64("foo", "Zm9v"); - exit_section(); -} - -void test_issue28() { - enter_section("issue #28"); - std::vector<std::string> expected{ "rethinkdb", "test" }; - std::vector<std::string> dbs; - R::Cursor databases = R::db_list().run(*conn); - for (R::Datum const& db : databases) { - dbs.push_back(*db.get_string()); - } - - TEST_EQ(dbs, expected); - exit_section(); -} - -int main() { - signal(SIGPIPE, SIG_IGN); - srand(time(NULL)); - try { - conn = R::connect(); - } catch(const R::Error& error) { - printf("FAILURE: could not connect to localhost:28015: %s\n", error.message.c_str()); - return 1; - } - try { - //test_binary(); - //test_json_parse_print(); - //test_reql(); - //test_cursor(); - test_issue28(); - run_upstream_tests(); - } catch (const R::Error& error) { - printf("FAILURE: uncaught expception: %s\n", error.message.c_str()); - return 1; - } - if (!failed) { - printf("SUCCESS: %d tests passed\n", count); - } else { - printf("DONE: %d of %d tests failed\n", failed, count); - return 1; - } -} |