diff options
author | Mina Farid <minafarid@google.com> | 2018-06-04 14:36:55 -0400 |
---|---|---|
committer | Konstantin Varlamov <var-const@users.noreply.github.com> | 2018-06-04 14:36:55 -0400 |
commit | a135ee17175f8f186e73252263b8dbc3785f3d3c (patch) | |
tree | b76fdea7a5bfe27159c497e445a079cce005d1c0 /Firestore/Example/Firestore.xcodeproj/xcshareddata | |
parent | ce61f4e0e654e7a16dad023e1b8df32449d5a00f (diff) |
Add a new Xcode target and scheme for fuzz tests (#1364)
Created `Firestore_FuzzTests_iOS` Xcode target as a duplicate of the target
`Firestore_Tests_iOS`.
- Added `-fsanitize-coverage=trace-pc-guard` to the compiler flags to enable
code coverage by libFuzzer fuzzing driver.
- Modified the files to compile to the fuzz testing ones.
- Added a Principal testing class.
* Modified the `Podfile` to include `LibFuzzer.podspec` as a dependency for
the target `Firestore_FuzzTests_iOS`.
* Added a skeleton for fuzz testing. Currently does not test any code but
the fuzzing works fine and calls an empty `LLVMFuzzerTestOneInput`
with different input values.
- This means that fuzzing does not finish or crash.
Diffstat (limited to 'Firestore/Example/Firestore.xcodeproj/xcshareddata')
-rw-r--r-- | Firestore/Example/Firestore.xcodeproj/xcshareddata/xcschemes/Firestore_FuzzTests_iOS.xcscheme | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/Firestore/Example/Firestore.xcodeproj/xcshareddata/xcschemes/Firestore_FuzzTests_iOS.xcscheme b/Firestore/Example/Firestore.xcodeproj/xcshareddata/xcschemes/Firestore_FuzzTests_iOS.xcscheme new file mode 100644 index 0000000..039273b --- /dev/null +++ b/Firestore/Example/Firestore.xcodeproj/xcshareddata/xcschemes/Firestore_FuzzTests_iOS.xcscheme @@ -0,0 +1,57 @@ +<?xml version="1.0" encoding="UTF-8"?> +<Scheme + LastUpgradeVersion = "0930" + version = "1.3"> + <BuildAction + parallelizeBuildables = "YES" + buildImplicitDependencies = "YES"> + </BuildAction> + <TestAction + buildConfiguration = "Debug" + selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" + selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" + enableAddressSanitizer = "YES" + shouldUseLaunchSchemeArgsEnv = "YES"> + <Testables> + <TestableReference + skipped = "NO"> + <BuildableReference + BuildableIdentifier = "primary" + BlueprintIdentifier = "6EDD3AD120BF247500C33877" + BuildableName = "Firestore_FuzzTests_iOS.xctest" + BlueprintName = "Firestore_FuzzTests_iOS" + ReferencedContainer = "container:Firestore.xcodeproj"> + </BuildableReference> + </TestableReference> + </Testables> + <AdditionalOptions> + </AdditionalOptions> + </TestAction> + <LaunchAction + buildConfiguration = "Debug" + selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" + selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" + launchStyle = "0" + useCustomWorkingDirectory = "NO" + ignoresPersistentStateOnLaunch = "NO" + debugDocumentVersioning = "YES" + debugServiceExtension = "internal" + allowLocationSimulation = "YES"> + <AdditionalOptions> + </AdditionalOptions> + </LaunchAction> + <ProfileAction + buildConfiguration = "Release" + shouldUseLaunchSchemeArgsEnv = "YES" + savedToolIdentifier = "" + useCustomWorkingDirectory = "NO" + debugDocumentVersioning = "YES"> + </ProfileAction> + <AnalyzeAction + buildConfiguration = "Debug"> + </AnalyzeAction> + <ArchiveAction + buildConfiguration = "Release" + revealArchiveInOrganizer = "YES"> + </ArchiveAction> +</Scheme> |