# Copyright 2016 The Chromium Authors. All rights reserved. # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. import("//services/service_manager/public/cpp/service.gni") import("//services/service_manager/public/service_manifest.gni") import("//testing/libfuzzer/fuzzer_test.gni") source_set("lib") { sources = [ "data_decoder_service.cc", "data_decoder_service.h", "image_decoder_impl.cc", "image_decoder_impl.h", "json_parser_impl.cc", "json_parser_impl.h", "xml_parser.cc", "xml_parser.h", ] deps = [ "//base", "//mojo/public/cpp/bindings", "//skia", "//third_party/blink/public:blink", "//third_party/libxml", "//ui/gfx", "//ui/gfx/geometry", ] public_deps = [ "//services/data_decoder/public/mojom", "//services/service_manager/public/cpp", ] } source_set("tests") { testonly = true sources = [ "image_decoder_impl_unittest.cc", "public/cpp/json_sanitizer_unittest.cc", "public/cpp/safe_xml_parser_unittest.cc", "public/cpp/testing_json_parser_unittest.cc", "xml_parser_unittest.cc", ] deps = [ ":lib", "//base", "//base/test:test_support", "//gin", "//gin:gin_test", "//services/data_decoder/public/cpp", "//services/data_decoder/public/cpp:test_support", "//skia", "//testing/gtest", "//third_party/blink/public:blink", "//ui/gfx", ] data_deps = [ "//tools/v8_context_snapshot", ] configs += [ "//tools/v8_context_snapshot:use_v8_context_snapshot", "//v8:external_startup_data", ] } service_manifest("manifest") { name = "data_decoder" source = "manifest.json" } fuzzer_test("xml_parser_fuzzer") { sources = [ "xml_parser_fuzzer.cc", ] deps = [ ":lib", "//base", "//third_party/libxml:libxml", ] dict = "//testing/libfuzzer/fuzzers/dicts/xml.dict" seed_corpus = "xml_parser_fuzzer_corpus" }