annotate assertStructFields.m @ 1185:abb1b3ab8c23 feature/rv

Fix incorrect of RungekuttaRvInstage
author Vidar Stiernström <vidar.stiernstrom@it.uu.se>
date Fri, 05 Jul 2019 18:12:10 +0200
parents c596122374df
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
775
c596122374df Add a few assert functions
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
1 % Assert that the struct s has the all the field names in the cell array fns.
c596122374df Add a few assert functions
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
2 function assertStructFields(s, fns)
c596122374df Add a few assert functions
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
3 assertType(s, 'struct');
c596122374df Add a few assert functions
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
4 assertType(fns, 'cell');
c596122374df Add a few assert functions
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
5
c596122374df Add a few assert functions
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
6 ok = ismember(fns, fieldnames(s));
c596122374df Add a few assert functions
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
7 if ~all(ok)
c596122374df Add a few assert functions
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
8 str1 = sprintf("'%s' must have the fields %s\n", inputname(1), toString(fns));
c596122374df Add a few assert functions
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
9 str2 = sprintf("The following fields are missing: %s", toString(fns(~ok)));
c596122374df Add a few assert functions
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
10 error(str1 + str2);
c596122374df Add a few assert functions
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
11 end
c596122374df Add a few assert functions
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
12 end