chromium/tools/json_schema_compiler/test/idl_schemas_unittest.cc

// Copyright 2012 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include <memory>
#include <utility>
#include <vector>

#include "base/strings/utf_string_conversions.h"
#include "base/test/values_test_util.h"
#include "base/values.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "tools/json_schema_compiler/test/idl_basics.h"
#include "tools/json_schema_compiler/test/idl_object_types.h"
#include "tools/json_schema_compiler/test/idl_properties.h"
#include "tools/json_schema_compiler/test/test_util.h"

using test::api::idl_basics::MyType1;
using test::api::idl_object_types::BarType;
using test::api::idl_object_types::FooType;

namespace Function2 = test::api::idl_basics::Function2;
namespace Function3 = test::api::idl_basics::Function3;
namespace Function4 = test::api::idl_basics::Function4;
namespace Function5 = test::api::idl_basics::Function5;
namespace Function6 = test::api::idl_basics::Function6;
namespace Function7 = test::api::idl_basics::Function7;
namespace Function8 = test::api::idl_basics::Function8;
namespace Function9 = test::api::idl_basics::Function9;
namespace Function10 = test::api::idl_basics::Function10;
namespace Function11 = test::api::idl_basics::Function11;
namespace ObjectFunction1 = test::api::idl_object_types::ObjectFunction1;

namespace {

// Parses `idl_basics::ManifestKeys` from the provided `key_values`, using
// stub values for any omitted top-level keys.
bool ParseManifestKeys(const std::string& key_values,
                       test::api::idl_basics::ManifestKeys& manifest_keys,
                       std::u16string& error) {}

// Parses `idl_basics::ManifestKeys` from the provided `key_values`, expecting
// success and returning the parsed value.
test::api::idl_basics::ManifestKeys ParseManifestKeysAndReturnValue(
    const std::string& key_values) {}

// Attempts to parse `idl_basics::ManifestKeys` from the provided `key_values`,
// expecting failure and returning the encountered parse error.
std::string ParseManifestKeysAndReturnError(const std::string& key_values) {}

}  // namespace

TEST(IdlCompiler, Basics) {}

TEST(IdlCompiler, OptionalArguments) {}

TEST(IdlCompiler, ArrayTypes) {}

TEST(IdlCompiler, ObjectTypes) {}

// Tests using IDL "choices" in manifest key-specified types.
TEST(IdlCompiler, ManifestKeys_Choices) {}

TEST(IdlCompiler, PropertyValues) {}