brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.0 KiB · 5d0efd8 Raw
36 lines · cpp
1//===-- ConversionTests.cpp  --------------------------*- C++ -*-----------===//2//3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.4// See https://llvm.org/LICENSE.txt for license information.5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception6//7//===----------------------------------------------------------------------===//8 9#include "xpc/Conversion.h"10#include "gtest/gtest.h"11 12#include <limits>13 14namespace clang {15namespace clangd {16namespace {17 18using namespace llvm;19 20TEST(JsonXpcConversionTest, JsonToXpcToJson) {21 22  for (auto &testcase :23       {json::Value(false), json::Value(3.14), json::Value(42),24        json::Value(-100), json::Value("foo"), json::Value(""),25        json::Value("123"), json::Value(" "),26        json::Value{true, "foo", nullptr, 42},27        json::Value(json::Object{28            {"a", true}, {"b", "foo"}, {"c", nullptr}, {"d", 42}})}) {29    EXPECT_TRUE(testcase == xpcToJson(jsonToXpc(testcase))) << testcase;30  }31}32 33} // namespace34} // namespace clangd35} // namespace clang36