diff options
author | Khaled Yakdan <yakdan@code-intelligence.com> | 2021-10-17 21:49:09 +0200 |
---|---|---|
committer | Fabian Meumertzheim <fabian@meumertzhe.im> | 2021-10-19 11:07:51 +0200 |
commit | 9a804bb4272b35b10028a7dc246c6c63176e0eee (patch) | |
tree | 9f8f1cbc7999aae3db744ffb6db484ebcd2956fc /agent/src/test/java/com/code_intelligence/jazzer/autofuzz/SettersTest.java | |
parent | 65b3309b8b027a945b52155772e7690fb7581533 (diff) | |
download | jazzer-api-9a804bb4272b35b10028a7dc246c6c63176e0eee.tar.gz |
Handle creating classes with a default constructor and setter methods
Diffstat (limited to 'agent/src/test/java/com/code_intelligence/jazzer/autofuzz/SettersTest.java')
-rw-r--r-- | agent/src/test/java/com/code_intelligence/jazzer/autofuzz/SettersTest.java | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/agent/src/test/java/com/code_intelligence/jazzer/autofuzz/SettersTest.java b/agent/src/test/java/com/code_intelligence/jazzer/autofuzz/SettersTest.java new file mode 100644 index 00000000..59a46636 --- /dev/null +++ b/agent/src/test/java/com/code_intelligence/jazzer/autofuzz/SettersTest.java @@ -0,0 +1,43 @@ +// Copyright 2021 Code Intelligence GmbH +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package com.code_intelligence.jazzer.autofuzz; + +import static org.junit.Assert.assertEquals; + +import com.code_intelligence.jazzer.api.CannedFuzzedDataProvider; +import com.code_intelligence.jazzer.api.FuzzedDataProvider; +import com.code_intelligence.jazzer.autofuzz.testdata.EmployeeWithSetters; +import java.util.Arrays; +import org.junit.Test; + +public class SettersTest { + FuzzedDataProvider data = + CannedFuzzedDataProvider.create(Arrays.asList(0, // pick first constructor + 2, // pick two setters + 1, // pick second setter + 0, // pick first setter + 6, // remaining bytes + "foo", // setFirstName + 26 // setAge + )); + + @Test + public void testEmptyConstructorWithSetters() { + EmployeeWithSetters employee = new EmployeeWithSetters(); + employee.setFirstName("foo"); + employee.setAge(26); + assertEquals(Meta.consume(data, EmployeeWithSetters.class), employee); + } +} |