// Copyright 2023 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #include "third_party/fuzztest/src/fuzztest/domain.h" #include "third_party/fuzztest/src/fuzztest/fuzztest.h" #include "third_party/libyuv/include/libyuv.h" #include "testing/libfuzzer/fuzzers/libyuv_scale_fuzzer.h" // FuzzTest norms are to name the function according to the invariant // we're trying to test static void ScaleDoesNotCrash(bool is420, int src_width, int src_height, int dst_width, int dst_height, int filter_num, std::string seed_str) { … } // This happens to be the first FuzzTest fuzzer we've tried to use in Chrome. // In an ideal world, we can skip the whole WithDomains stuff, and simply // declare FUZZ_TEST(ScaleFuzz, ScaleDoesNotCrash). // That will work for some functions which can accept truly arbitrary input. // Domains are necessary in this case because only certain ranges of input // are acceptable to the function. FUZZ_TEST(…);