]> gitweb.michael.orlitzky.com - octave.git/blobdiff - tests/extended_rosenbrock_gradient1_tests.m
Add extended_rosenbrock_gradient1() and its tests.
[octave.git] / tests / extended_rosenbrock_gradient1_tests.m
diff --git a/tests/extended_rosenbrock_gradient1_tests.m b/tests/extended_rosenbrock_gradient1_tests.m
new file mode 100644 (file)
index 0000000..cc42544
--- /dev/null
@@ -0,0 +1,13 @@
+## The gradient should be zero at the optimal point.
+
+for m = [ 1 : 10 ]
+  x = repmat([1;1], m, 1);
+
+  msg = sprintf("extended_rosenbrock_gradient1([1;1;...]) == 0 (m = %d)", m);
+  unit_test_equals(msg, 0, extended_rosenbrock_gradient1(x));
+end
+
+## It should fail with the wrong number of coordinates.
+g = extended_rosenbrock_gradient1([1;2;3]);
+msg = "extended_rosenbrock_gradient1 fails when length(x) is odd";
+unit_test_equals(msg, true, isna(g));