Skip to content

Commit 8c6501b

Browse files
elopezanishnaik
andauthored
ci: macos-13 -> macos-15-intel (#685)
* ci: macos-13 -> macos-15-intel See https://github.blog/changelog/2025-09-19-github-actions-macos-13-runner-image-is-closing-down/ * add a separate test for problematic CI tests --------- Co-authored-by: anishnaik <[email protected]>
1 parent 03c99b6 commit 8c6501b

File tree

2 files changed

+31
-3
lines changed

2 files changed

+31
-3
lines changed

.github/workflows/ci.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ jobs:
2424
needs: [lint, test]
2525
strategy:
2626
matrix:
27-
environment: [ubuntu-latest, macos-13, macos-14, windows-latest]
27+
environment: [ubuntu-latest, macos-15-intel, macos-14, windows-latest]
2828
permissions:
2929
contents: read
3030
id-token: write
@@ -157,7 +157,7 @@ jobs:
157157
test:
158158
strategy:
159159
matrix:
160-
environment: [ubuntu-latest, macos-13, macos-14, windows-latest]
160+
environment: [ubuntu-latest, macos-15-intel, macos-14, windows-latest]
161161

162162
runs-on: ${{ matrix.environment }}
163163
timeout-minutes: 20

fuzzing/fuzzer_test.go

Lines changed: 29 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -764,9 +764,36 @@ func TestValueGenerationSolving(t *testing.T) {
764764
"testdata/contracts/value_generation/match_addr_sender.sol",
765765
"testdata/contracts/value_generation/match_string_exact.sol",
766766
"testdata/contracts/value_generation/match_structs_xy.sol",
767+
"testdata/contracts/value_generation/match_payable_xy.sol",
768+
}
769+
for _, filePath := range filePaths {
770+
runFuzzerTest(t, &fuzzerSolcFileTest{
771+
filePath: filePath,
772+
configUpdates: func(config *config.ProjectConfig) {
773+
config.Fuzzing.TargetContracts = []string{"TestContract"}
774+
config.Fuzzing.Testing.AssertionTesting.Enabled = false
775+
config.Fuzzing.Testing.OptimizationTesting.Enabled = false
776+
config.Slither.UseSlither = true
777+
},
778+
method: func(f *fuzzerTestContext) {
779+
// Start the fuzzer
780+
err := f.fuzzer.Start()
781+
assert.NoError(t, err)
782+
783+
// Check for any failed tests and verify coverage was captured
784+
assertFailedTestsExpected(f, true)
785+
assertCorpusCallSequencesCollected(f, true)
786+
},
787+
})
788+
}
789+
}
790+
791+
// TestComplexValueGenerationSolving runs a series of tests to test the value generator can solve expected problems.
792+
// Specifically, this test provides a much larger test limit since some of these tests fail to get solved in the CI fast enough.
793+
func TestComplexValueGenerationSolving(t *testing.T) {
794+
filePaths := []string{
767795
"testdata/contracts/value_generation/match_ints_xy.sol",
768796
"testdata/contracts/value_generation/match_uints_xy.sol",
769-
"testdata/contracts/value_generation/match_payable_xy.sol",
770797
}
771798
for _, filePath := range filePaths {
772799
runFuzzerTest(t, &fuzzerSolcFileTest{
@@ -775,6 +802,7 @@ func TestValueGenerationSolving(t *testing.T) {
775802
config.Fuzzing.TargetContracts = []string{"TestContract"}
776803
config.Fuzzing.Testing.AssertionTesting.Enabled = false
777804
config.Fuzzing.Testing.OptimizationTesting.Enabled = false
805+
config.Fuzzing.TestLimit = 15_000_000
778806
config.Slither.UseSlither = true
779807
},
780808
method: func(f *fuzzerTestContext) {

0 commit comments

Comments
 (0)