diff --git a/test/tools/schema_validator/BUILD b/test/tools/schema_validator/BUILD index 5d67c3230eb5..a49574b7e24b 100644 --- a/test/tools/schema_validator/BUILD +++ b/test/tools/schema_validator/BUILD @@ -23,13 +23,10 @@ envoy_cc_test_library( ], external_deps = ["tclap"], deps = [ - "//include/envoy/common:base_includes", - "//source/common/config:rds_json_lib", - "//source/common/json:json_loader_lib", - "//source/common/router:config_lib", - "//source/common/stats:stats_lib", - "//test/mocks/runtime:runtime_mocks", - "//test/mocks/upstream:upstream_mocks", - "//test/test_common:printers_lib", + "//include/envoy/api:api_interface", + "//source/common/protobuf:utility_lib", + "//source/common/stats:isolated_store_lib", + "//test/test_common:utility_lib", + "@envoy_api//envoy/api/v2:rds_cc", ], ) diff --git a/test/tools/schema_validator/validator.cc b/test/tools/schema_validator/validator.cc index 35be4b896b04..b1cb75c20708 100644 --- a/test/tools/schema_validator/validator.cc +++ b/test/tools/schema_validator/validator.cc @@ -1,8 +1,9 @@ #include "test/tools/schema_validator/validator.h" -#include "common/router/config_impl.h" +#include "envoy/api/v2/rds.pb.h" +#include "envoy/api/v2/rds.pb.validate.h" -#include "test/test_common/printers.h" +#include "common/protobuf/utility.h" #include "tclap/CmdLine.h" @@ -46,16 +47,14 @@ Options::Options(int argc, char** argv) { } void Validator::validate(const std::string& json_path, Schema::Type schema_type) { - Json::ObjectSharedPtr loader = Json::Factory::loadFromFile(json_path, *api_); switch (schema_type) { case Schema::Type::Route: { - Runtime::MockLoader runtime; - Upstream::MockClusterManager cm; // Construct a envoy::api::v2::RouteConfiguration to validate the Route configuration and // ignore the output since nothing will consume it. envoy::api::v2::RouteConfiguration route_config; - Config::RdsJson::translateRouteConfiguration(*loader, route_config); + MessageUtil::loadFromFile(json_path, route_config, *api_); + MessageUtil::validate(route_config); break; } default: diff --git a/test/tools/schema_validator/validator.h b/test/tools/schema_validator/validator.h index abcee1069940..14393f4e3777 100644 --- a/test/tools/schema_validator/validator.h +++ b/test/tools/schema_validator/validator.h @@ -2,10 +2,10 @@ #include -#include "common/json/json_loader.h" +#include "envoy/api/api.h" + +#include "common/stats/isolated_store_impl.h" -#include "test/mocks/runtime/mocks.h" -#include "test/mocks/upstream/mocks.h" #include "test/test_common/utility.h" namespace Envoy {