osx const error fix

This commit is contained in:
Daniel Sipka 2015-10-12 10:39:54 +02:00
parent b94f538793
commit 9c6bba3dfd

View file

@ -21,19 +21,21 @@ using namespace mstchtest;
#define SPECS_TEST(x) TEST_CASE("specs_" #x) { \ #define SPECS_TEST(x) TEST_CASE("specs_" #x) { \
using boost::get; \ using boost::get; \
auto data = json::parse<mstch::node,mstch::map,mstch::array>(x ## _json); \ auto data = json::parse<mstch::node,mstch::map,mstch::array>(x ## _json); \
for(auto& test_item: get<mstch::array>(get<mstch::map>(data)["tests"])) {\ for (auto& test_item: get<mstch::array>(get<mstch::map>(data)["tests"])) {\
auto test = get<mstch::map>(test_item); \ auto test = get<mstch::map>(test_item); \
std::map<std::string,std::string> partials; \ std::map<std::string,std::string> partials; \
if(test.count("partials")) \ if (test.count("partials")) \
for(auto& partial_item: get<mstch::map>(test["partials"])) \ for (auto& partial_item: get<mstch::map>(test["partials"])) \
partials.insert(std::make_pair(partial_item.first, get<std::string>(partial_item.second))); \ partials.insert(std::make_pair(partial_item.first, get<std::string>(partial_item.second))); \
for(std::pair<const std::string,mstch::node>& data_item: get<mstch::map>(test["data"])) \ mstch::map data; \
if(data_item.first == "lambda") \ for (auto& data_item: get<mstch::map>(test["data"])) \
data_item.second = specs_lambdas[get<std::string>(test["name"])]; \ if (data_item.first == "lambda") \
data.insert(std::make_pair("lambda", specs_lambdas[get<std::string>(test["name"])])); \
else \
data.insert(data_item); \
SECTION(get<std::string>(test["name"])) \ SECTION(get<std::string>(test["name"])) \
REQUIRE(mstch::render( \ REQUIRE( \
get<std::string>(test["template"]), \ mstch::render(get<std::string>(test["template"]), data, partials) == \
test["data"], partials) == \
get<std::string>(test["expected"])); \ get<std::string>(test["expected"])); \
} \ } \
} }