Mercurial > octave-nkf
comparison scripts/statistics/base/skewness.m @ 17587:a13ff4521538
skewness.m: Simplify %!test for division-by-zero.
* scripts/statistics/base/skewness.m: Use "local" option to warning()
rather than unwind_protect block to simplify code.
author | Rik <rik@octave.org> |
---|---|
date | Mon, 07 Oct 2013 08:07:55 -0700 |
parents | 8334144458a4 |
children | a53a97faf61a |
comparison
equal
deleted
inserted
replaced
17586:8334144458a4 | 17587:a13ff4521538 |
---|---|
146 | 146 |
147 ## Test behaviour on single input | 147 ## Test behaviour on single input |
148 %!assert (skewness (single ([1:5 10])), single (1.0513283), eps ("single")) | 148 %!assert (skewness (single ([1:5 10])), single (1.0513283), eps ("single")) |
149 %!assert (skewness (single ([1 2]), 0), single (NaN)) | 149 %!assert (skewness (single ([1 2]), 0), single (NaN)) |
150 | 150 |
151 ## Verify no "division-by-zero" warnings | |
152 %!test | 151 %!test |
153 %! wstate = warning ("query", "Octave:divide-by-zero"); | 152 %! ## Verify no "division-by-zero" warnings |
154 %! unwind_protect | 153 %! warning ("on", "Octave:divide-by-zero", "local"); |
155 %! lastwarn (""); # clear last warning | 154 %! lastwarn (""); # clear last warning |
156 %! skewness (1); | 155 %! skewness (1); |
157 %! assert (lastwarn (), ""); | 156 %! assert (lastwarn (), ""); |
158 %! unwind_protect_cleanup | |
159 %! warning (wstate, "Octave:divide-by-zero"); | |
160 %! end_unwind_protect | |
161 | 157 |
162 ## Test input validation | 158 ## Test input validation |
163 %!error skewness () | 159 %!error skewness () |
164 %!error skewness (1, 2, 3) | 160 %!error skewness (1, 2, 3) |
165 %!error <X must be a numeric vector or matrix> skewness (['A'; 'B']) | 161 %!error <X must be a numeric vector or matrix> skewness (['A'; 'B']) |