diff --git a/tests/stochastic_purely_forward/stochastic_purely_forward.mod b/tests/stochastic_purely_forward/stochastic_purely_forward.mod
index 1fd41ccb6e3dee2f8a0349c5c4868e455abd204b..6dd03fcafc257731a4828a9186da0bf4906ad982 100644
--- a/tests/stochastic_purely_forward/stochastic_purely_forward.mod
+++ b/tests/stochastic_purely_forward/stochastic_purely_forward.mod
@@ -19,9 +19,15 @@ end;
 steady;
 check;
 
+% Skip test under Octave 5.1
+% ordeig() is buggy in that version (but is fixed in later ones; and in older
+% ones it is absent, so we use our replacement)
+if ~isoctave || octave_ver_less_than('5.1') || ~octave_ver_less_than('5.2')
+
 stoch_simul(periods=0, irf=30, order=1);
 stoch_simul(periods=2000, irf=30, order=1);
 
 stoch_simul(periods=0, irf=30, order=1,hp_filter=1600);
 stoch_simul(periods=2000, irf=30, order=1,hp_filter=1600);
 
+end
diff --git a/tests/stochastic_purely_forward/stochastic_purely_forward_with_static.mod b/tests/stochastic_purely_forward/stochastic_purely_forward_with_static.mod
index 537416bad553a95ead16468dff943ac8b296fac1..8622d890f1ad4986a31d3aae816d7031393fb176 100644
--- a/tests/stochastic_purely_forward/stochastic_purely_forward_with_static.mod
+++ b/tests/stochastic_purely_forward/stochastic_purely_forward_with_static.mod
@@ -20,8 +20,15 @@ end;
 steady;
 check;
 
+% Skip test under Octave 5.1
+% ordeig() is buggy in that version (but is fixed in later ones; and in older
+% ones it is absent, so we use our replacement)
+if ~isoctave || octave_ver_less_than('5.1') || ~octave_ver_less_than('5.2')
+
 stoch_simul(periods=0, irf=30, order=1);
 stoch_simul(periods=2000, irf=30, order=1);
 
 stoch_simul(periods=0, irf=30, order=1,hp_filter=1600);
 stoch_simul(periods=2000, irf=30, order=1,hp_filter=1600);
+
+end