1*58b9f456SAndroid Build Coastguard Worker // -*- C++ -*- 2*58b9f456SAndroid Build Coastguard Worker //===------------------------ regex_egrep.cpp -----------------------------===// 3*58b9f456SAndroid Build Coastguard Worker // 4*58b9f456SAndroid Build Coastguard Worker // The LLVM Compiler Infrastructure 5*58b9f456SAndroid Build Coastguard Worker // 6*58b9f456SAndroid Build Coastguard Worker // This file is dual licensed under the MIT and the University of Illinois Open 7*58b9f456SAndroid Build Coastguard Worker // Source Licenses. See LICENSE.TXT for details. 8*58b9f456SAndroid Build Coastguard Worker // 9*58b9f456SAndroid Build Coastguard Worker //===----------------------------------------------------------------------===// 10*58b9f456SAndroid Build Coastguard Worker 11*58b9f456SAndroid Build Coastguard Worker // XFAIL 12*58b9f456SAndroid Build Coastguard Worker 13*58b9f456SAndroid Build Coastguard Worker #include "fuzzing.h" 14*58b9f456SAndroid Build Coastguard Worker #include <cassert> 15*58b9f456SAndroid Build Coastguard Worker #include <cstring> // for strlen 16*58b9f456SAndroid Build Coastguard Worker 17*58b9f456SAndroid Build Coastguard Worker const char * test_cases[] = { 18*58b9f456SAndroid Build Coastguard Worker "", 19*58b9f456SAndroid Build Coastguard Worker "s", 20*58b9f456SAndroid Build Coastguard Worker "b*c", 21*58b9f456SAndroid Build Coastguard Worker "ba?sf" 22*58b9f456SAndroid Build Coastguard Worker "lka*ea", 23*58b9f456SAndroid Build Coastguard Worker "adsf*kas;lnc441[0-9]1r34525234" 24*58b9f456SAndroid Build Coastguard Worker }; 25*58b9f456SAndroid Build Coastguard Worker 26*58b9f456SAndroid Build Coastguard Worker const size_t k_num_tests = sizeof(test_cases)/sizeof(test_cases[0]); 27*58b9f456SAndroid Build Coastguard Worker main()28*58b9f456SAndroid Build Coastguard Workerint main () 29*58b9f456SAndroid Build Coastguard Worker { 30*58b9f456SAndroid Build Coastguard Worker for (size_t i = 0; i < k_num_tests; ++i) 31*58b9f456SAndroid Build Coastguard Worker { 32*58b9f456SAndroid Build Coastguard Worker const size_t size = std::strlen(test_cases[i]); 33*58b9f456SAndroid Build Coastguard Worker const uint8_t *data = (const uint8_t *) test_cases[i]; 34*58b9f456SAndroid Build Coastguard Worker assert(0 == fuzzing::regex_egrep(data, size)); 35*58b9f456SAndroid Build Coastguard Worker } 36*58b9f456SAndroid Build Coastguard Worker return 0; 37*58b9f456SAndroid Build Coastguard Worker } 38