# Copyright 2017 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("//testing/libfuzzer/fuzzer_test.gni")

# root BUILD depends on this target. Needed for package discovery
group("fuzzers") {
}

fuzzer_test("zlib_uncompress_fuzzer") {
  sources = [
    "uncompress_fuzzer.cc",
  ]
  deps = [
    "../../../:zlib",
  ]
}

fuzzer_test("zlib_inflate_fuzzer") {
  sources = [
    "inflate_fuzzer.cc",
  ]
  deps = [
    "../../../:zlib",
  ]
}

fuzzer_test("zlib_deflate_set_dictionary_fuzzer") {
  sources = [
    "deflate_set_dictionary_fuzzer.cc",
  ]
  deps = [
    "../../../:zlib",
  ]
}

fuzzer_test("zlib_deflate_fuzzer") {
  sources = [
    "deflate_fuzzer.cc",
  ]
  deps = [
    "../../../:zlib",
  ]
}
