@@ -91,49 +91,62 @@ sort!(testlist)
91
91
Random. shuffle! (Oscar. get_seeded_rng (), testlist)
92
92
93
93
# tests with the highest number of allocations / runtime / compilation time
94
- # more or less sorted by allocations
95
- test_large = [
96
- " test/Aqua.jl" ,
97
- " experimental/FTheoryTools/test/weierstrass.jl" ,
98
- " test/PolyhedralGeometry/timing.jl" ,
99
- " experimental/GITFans/test/runtests.jl" ,
100
- " test/AlgebraicGeometry/ToricVarieties/toric_schemes.jl" ,
101
- " test/AlgebraicGeometry/Schemes/WeilDivisor.jl" ,
102
- " test/Rings/NumberField.jl" ,
103
- " test/Serialization/PolynomialsSeries.jl" ,
104
- " test/AlgebraicGeometry/Schemes/K3.jl" ,
105
- " test/Groups/forms.jl" ,
106
- " test/Modules/UngradedModules.jl" ,
107
- " test/GAP/oscarinterface.jl" ,
108
- " test/AlgebraicGeometry/Schemes/CoveredProjectiveSchemes.jl" ,
109
- " test/AlgebraicGeometry/Schemes/CoveredScheme.jl" ,
110
- " test/AlgebraicGeometry/Schemes/DerivedPushforward.jl" ,
111
- " test/AlgebraicGeometry/Schemes/MorphismFromRationalFunctions.jl" ,
112
- " experimental/QuadFormAndIsom/test/runtests.jl" ,
113
- " experimental/GModule/test/runtests.jl" ,
114
- " experimental/LieAlgebras/test/LieAlgebraModule-test.jl" ,
115
- " test/Modules/ModulesGraded.jl" ,
116
- " test/AlgebraicGeometry/Schemes/EllipticSurface.jl" ,
117
- ]
118
- test_book = [
119
- " test/book/test.jl" ,
120
- ]
121
-
122
- test_subset = get (ENV , " OSCAR_TEST_SUBSET" , " " )
94
+ # more or less sorted by allocations are in `long`
95
+ # tests that should not be run for pull request CI are in `extra_long`
96
+ # (these are run on a custom schedule only)
97
+ test_subsets = Dict (
98
+ :extra_long => [
99
+ " experimental/FTheoryTools/test/FTM-1511-03209.jl" ,
100
+ ],
101
+
102
+ :long => [
103
+ " test/Aqua.jl" ,
104
+ " experimental/FTheoryTools/test/weierstrass.jl" ,
105
+ " test/PolyhedralGeometry/timing.jl" ,
106
+ " experimental/GITFans/test/runtests.jl" ,
107
+ " test/AlgebraicGeometry/ToricVarieties/toric_schemes.jl" ,
108
+ " test/AlgebraicGeometry/Schemes/WeilDivisor.jl" ,
109
+ " test/Rings/NumberField.jl" ,
110
+ " test/Serialization/PolynomialsSeries.jl" ,
111
+ " test/AlgebraicGeometry/Schemes/K3.jl" ,
112
+ " test/Groups/forms.jl" ,
113
+ " test/Modules/UngradedModules.jl" ,
114
+ " test/GAP/oscarinterface.jl" ,
115
+ " test/AlgebraicGeometry/Schemes/CoveredProjectiveSchemes.jl" ,
116
+ " test/AlgebraicGeometry/Schemes/CoveredScheme.jl" ,
117
+ " test/AlgebraicGeometry/Schemes/DerivedPushforward.jl" ,
118
+ " test/AlgebraicGeometry/Schemes/MorphismFromRationalFunctions.jl" ,
119
+ " experimental/QuadFormAndIsom/test/runtests.jl" ,
120
+ " experimental/GModule/test/runtests.jl" ,
121
+ " experimental/LieAlgebras/test/LieAlgebraModule-test.jl" ,
122
+ " test/Modules/ModulesGraded.jl" ,
123
+ " test/AlgebraicGeometry/Schemes/EllipticSurface.jl" ,
124
+ ],
125
+ :book => [
126
+ " test/book/test.jl" ,
127
+ ]
128
+ )
129
+
130
+ test_subset = Symbol (get (ENV , " OSCAR_TEST_SUBSET" , " default" ))
123
131
if haskey (ENV , " JULIA_PKGEVAL" )
124
- test_subset = " short"
132
+ test_subset = : short
125
133
end
126
134
127
- if test_subset == " short"
128
- filter! (x-> ! in (relpath (x, Oscar. oscardir), [test_large; test_book]), testlist)
129
- elseif test_subset == " long"
130
- filter! (x-> in (relpath (x, Oscar. oscardir), test_large), testlist)
131
- elseif test_subset == " book"
132
- filter! (x-> in (relpath (x, Oscar. oscardir), test_book), testlist)
133
- elseif test_subset == " " && ! (Sys. islinux () && v " 1.10" <= VERSION < v " 1.11.0-DEV" )
134
- # book tests only on 1.10 and linux
135
- @info " Skipping Oscar book tests"
136
- filter! (x-> ! in (relpath (x, Oscar. oscardir), test_book), testlist)
135
+ if test_subset == :short
136
+ # short are all files not in a specific group
137
+ filter! (x-> ! in (relpath (x, Oscar. oscardir), reduce (vcat, values (test_subsets))), testlist)
138
+ elseif haskey (test_subsets, test_subset)
139
+ filter! (x-> in (relpath (x, Oscar. oscardir), test_subsets[test_subset]), testlist)
140
+ elseif test_subset == :default
141
+ # no extra long by default
142
+ filter! (x-> ! in (relpath (x, Oscar. oscardir), test_subsets[:extra_long ]), testlist)
143
+ if ! (Sys. islinux () && v " 1.10" <= VERSION < v " 1.11.0-DEV" )
144
+ # and book tests only on 1.10 and linux
145
+ @info " Skipping Oscar book tests"
146
+ filter! (x-> ! in (relpath (x, Oscar. oscardir), test_subsets[:book ]), testlist)
147
+ end
148
+ else
149
+ error (" invalid test subset specified via `OSCAR_TEST_SUBSET` environment variable" )
137
150
end
138
151
139
152
0 commit comments