add variant test

This commit is contained in:
Konstantin Käfer
2014-05-02 13:41:45 +02:00
parent 7010954229
commit 93e0c49faa
4 changed files with 45 additions and 4 deletions

View File

@@ -18,14 +18,18 @@ build/test/Makefile: src common config.gypi test/test.gyp
deps/run_gyp test/test.gyp --depth=. -Goutput_dir=.. --generator-output=./build/test -f make
test: build/test/Makefile
make -C build/test V=$(V) test
make -C build/test BUILDTYPE=$(BUILDTYPE) V=$(V) test
# Runs all test cases
run-tests: test
@for FILE in build/Release/test_*; do \
@for FILE in build/$(BUILDTYPE)/test_*; do \
$${FILE}; \
done
test/%:
make -C build/test BUILDTYPE=$(BUILDTYPE) V=$(V) $*
build/$(BUILDTYPE)/test_$*
# Only runs headless test case
run-headless-test: build/test/Makefile
make -C build/test BUILDTYPE=Debug V=$(V) headless

View File

@@ -1,5 +1,7 @@
#include <llmr/style/value.hpp>
#include <boost/lexical_cast.hpp>
llmr::Value llmr::parseValue(pbf data) {
while (data.next())
{
@@ -32,6 +34,6 @@ std::string llmr::toString(const llmr::Value& value) {
else if (value.is<bool>()) return value.get<bool>() ? "true" : "false";
else if (value.is<int64_t>()) return std::to_string(value.get<int64_t>());
else if (value.is<uint64_t>()) return std::to_string(value.get<uint64_t>());
else if (value.is<double>()) return std::to_string(value.get<double>());
else if (value.is<double>()) return boost::lexical_cast<std::string>(value.get<double>());
else return "null";
}

View File

@@ -64,6 +64,22 @@
"../llmr.gyp:llmr-x86"
]
},
{
"target_name": "variant",
"product_name": "test_variant",
"type": "executable",
"libraries": [
"-lpthread",
],
"sources": [
"./main.cpp",
"./variant.cpp",
],
"dependencies": [
"../deps/gtest/gtest.gyp:gtest",
"../llmr.gyp:llmr-x86"
]
},
{
"target_name": "headless",
"product_name": "test_headless",
@@ -88,7 +104,8 @@
"target_name": "test",
"type": "none",
"dependencies": [
"rotation_range"
"rotation_range",
"variant",
],
}
]

18
test/variant.cpp Normal file
View File

@@ -0,0 +1,18 @@
#include <iostream>
#include "gtest/gtest.h"
#include <llmr/style/value.hpp>
#include <boost/lexical_cast.hpp>
using namespace llmr;
TEST(Variant, toString) {
EXPECT_EQ("lord", llmr::toString( (std::string)"lord" ));
EXPECT_EQ("36", llmr::toString( (uint64_t)36 ));
EXPECT_EQ("-239", llmr::toString( (int64_t)-239 ));
EXPECT_EQ("0", llmr::toString( (int64_t)0 ));
EXPECT_EQ("3.14159268", llmr::toString( (double)3.14159268 ));
EXPECT_EQ("3.1415926535897931", llmr::toString( (double)3.1415926535897931 ));
EXPECT_EQ("true", llmr::toString( true ));
EXPECT_EQ("false", llmr::toString( false ));
}