Skip to content

Commit 91767ab

Browse files
authored
GHA: Skip spline tests under valgrind (#2116)
... except for one.
1 parent 85c1f51 commit 91767ab

File tree

3 files changed

+21
-0
lines changed

3 files changed

+21
-0
lines changed

python/tests/test_splines.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
import os
1010

1111
import numpy as np
12+
from amici.testing import skip_on_valgrind
1213
from splines_utils import (
1314
check_splines_full,
1415
example_spline_1,
@@ -17,6 +18,7 @@
1718
)
1819

1920

21+
@skip_on_valgrind
2022
def test_multiple_splines(**kwargs):
2123
"""
2224
Test a SBML model containing multiple splines.

python/tests/test_splines_python.py

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,10 @@
99

1010
import amici
1111
import sympy as sp
12+
from amici.testing import skip_on_valgrind
1213

1314

15+
@skip_on_valgrind
1416
def test_SplineUniform():
1517
spline = amici.splines.CubicHermiteSpline(
1618
sbml_id="f",
@@ -27,6 +29,7 @@ def test_SplineUniform():
2729
assert math.isclose(float(spline.evaluate(1.00)), 1.0)
2830

2931

32+
@skip_on_valgrind
3033
def test_SplineNonUniform():
3134
spline = amici.splines.CubicHermiteSpline(
3235
sbml_id="f",
@@ -43,6 +46,7 @@ def test_SplineNonUniform():
4346
assert math.isclose(float(spline.evaluate(1.00)), 1.0)
4447

4548

49+
@skip_on_valgrind
4650
def test_SplineExplicit():
4751
spline = amici.splines.CubicHermiteSpline(
4852
sbml_id="f",
@@ -62,6 +66,7 @@ def test_SplineExplicit():
6266
assert math.isclose(float(spline.evaluate(1.00)), 0.75)
6367

6468

69+
@skip_on_valgrind
6570
def test_SplineZeroBC():
6671
spline = amici.splines.CubicHermiteSpline(
6772
sbml_id="f",
@@ -77,6 +82,7 @@ def test_SplineZeroBC():
7782
assert math.isclose(float(spline.evaluate(1.00)), 1.0)
7883

7984

85+
@skip_on_valgrind
8086
def test_SplineLogarithmic():
8187
spline = amici.splines.CubicHermiteSpline(
8288
sbml_id="f",
@@ -96,6 +102,7 @@ def test_SplineLogarithmic():
96102
assert math.isclose(float(spline.evaluate(1.00)), 0.75)
97103

98104

105+
@skip_on_valgrind
99106
def test_SplineUniformConstantExtrapolation():
100107
spline = amici.splines.CubicHermiteSpline(
101108
sbml_id="f",
@@ -117,6 +124,7 @@ def test_SplineUniformConstantExtrapolation():
117124
assert math.isclose(float(spline.evaluate(3.00)), 1.0)
118125

119126

127+
@skip_on_valgrind
120128
def test_SplineUniformLinearExtrapolation():
121129
spline = amici.splines.CubicHermiteSpline(
122130
sbml_id="f",
@@ -138,6 +146,7 @@ def test_SplineUniformLinearExtrapolation():
138146
assert math.isclose(float(spline.evaluate(3.00)), 4.0)
139147

140148

149+
@skip_on_valgrind
141150
def test_SplineUniformPolynomialExtrapolation():
142151
spline = amici.splines.CubicHermiteSpline(
143152
sbml_id="f",
@@ -159,6 +168,7 @@ def test_SplineUniformPolynomialExtrapolation():
159168
assert math.isclose(float(spline.evaluate(3.00)), -248.0)
160169

161170

171+
@skip_on_valgrind
162172
def test_SplineUniformPeriodicExtrapolation():
163173
spline = amici.splines.CubicHermiteSpline(
164174
sbml_id="f",
@@ -180,6 +190,7 @@ def test_SplineUniformPeriodicExtrapolation():
180190
assert math.isclose(float(spline.evaluate(2.75)), 0.47265625)
181191

182192

193+
@skip_on_valgrind
183194
def test_SplineNonUniformPeriodicExtrapolation():
184195
spline = amici.splines.CubicHermiteSpline(
185196
sbml_id="f",
@@ -201,13 +212,15 @@ def test_SplineNonUniformPeriodicExtrapolation():
201212
assert math.isclose(float(spline.evaluate(2.05)), 1.5296875)
202213

203214

215+
@skip_on_valgrind
204216
def check_gradient(spline, t, params, params_values, expected, rel_tol=1e-9):
205217
value = spline.evaluate(t)
206218
subs = {pname: pvalue for (pname, pvalue) in zip(params, params_values)}
207219
for p, exp in zip(params, expected):
208220
assert math.isclose(float(value.diff(p).subs(subs)), exp, rel_tol=rel_tol)
209221

210222

223+
@skip_on_valgrind
211224
def test_SplineUniformSensitivity():
212225
params = (a, b, c) = sp.symbols("a b c")
213226
params_values = [0.5, 1.0, 2.5]
@@ -230,6 +243,7 @@ def test_SplineUniformSensitivity():
230243
check_gradient(spline, 1.00, params, params_values, [-6.0, 1.0, 3.0])
231244

232245

246+
@skip_on_valgrind
233247
def test_SplineNonUniformSensitivity():
234248
params = (a, b, c) = sp.symbols("a b c")
235249
params_values = [0.5, 1.0, 2.5]
@@ -250,6 +264,7 @@ def test_SplineNonUniformSensitivity():
250264
check_gradient(spline, 1.00, params, params_values, [-6.0, 1.0, 3.0])
251265

252266

267+
@skip_on_valgrind
253268
def test_SplineExplicitSensitivity():
254269
params = (a, b, c) = sp.symbols("a b c")
255270
params_values = [0.5, 1.0, 2.5]
@@ -280,6 +295,7 @@ def test_SplineExplicitSensitivity():
280295
check_gradient(spline, 1.00, params, params_values, [-6.0, 1.0, 3.0])
281296

282297

298+
@skip_on_valgrind
283299
def test_SplineLogarithmicSensitivity():
284300
params = (a, b, c) = sp.symbols("a b c")
285301
params_values = [0.5, 1.0, 2.5]

python/tests/test_splines_short.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
import numpy as np
99
import sympy as sp
1010
from amici.splines import CubicHermiteSpline, UniformGrid
11+
from amici.testing import skip_on_valgrind
1112
from splines_utils import check_splines_full, example_spline_1
1213

1314

@@ -20,6 +21,7 @@ def test_spline_piecewise(**kwargs):
2021
check_splines_full(spline, params, tols, **kwargs)
2122

2223

24+
@skip_on_valgrind
2325
def test_two_splines(**kwargs):
2426
"""
2527
Test a SBML model containing two splines.
@@ -68,6 +70,7 @@ def test_two_splines(**kwargs):
6870
check_splines_full(splines, params, tols, check_piecewise=False, **kwargs)
6971

7072

73+
@skip_on_valgrind
7174
def test_splines_plist():
7275
"""
7376
Test if AMICI's spline implementation

0 commit comments

Comments
 (0)