@@ -54,24 +54,29 @@ tape( 'main export is a function', opts, function test( t ) {
5454 t . end ( ) ;
5555} ) ;
5656
57- tape ( 'if provided `NaN` for any parameter , the function returns `NaN`' , opts , function test ( t ) {
57+ tape ( 'if provided `NaN` for `x` or `p` , the function returns `NaN`' , opts , function test ( t ) {
5858 var y ;
59- y = logpmf ( 0 , 20 , NaN ) ;
60- t . equal ( isnan ( y ) , true , 'returns NaN' ) ;
59+
60+ y = logpmf ( NaN , 20 , 0.5 ) ;
61+ t . strictEqual ( isnan ( y ) , true , 'returns expected value' ) ;
62+
63+ y = logpmf ( 0.0 , 20 , NaN ) ;
64+ t . strictEqual ( isnan ( y ) , true , 'returns expected value' ) ;
65+
6166 t . end ( ) ;
6267} ) ;
6368
6469tape ( 'if provided a negative integer for `x` and a valid `n` and `p`, the function returns `-Infinity`' , opts , function test ( t ) {
6570 var y ;
6671
6772 y = logpmf ( - 20 , 20 , 0.5 ) ;
68- t . equal ( y , NINF , 'returns -Infinity ' ) ;
73+ t . strictEqual ( y , NINF , 'returns expected value ' ) ;
6974
7075 y = logpmf ( - 100 , 20 , 0.5 ) ;
71- t . equal ( y , NINF , 'returns -Infinity ' ) ;
76+ t . strictEqual ( y , NINF , 'returns expected value ' ) ;
7277
7378 y = logpmf ( - 1 , 20 , 0.5 ) ;
74- t . equal ( y , NINF , 'returns -Infinity ' ) ;
79+ t . strictEqual ( y , NINF , 'returns expected value ' ) ;
7580
7681 t . end ( ) ;
7782} ) ;
@@ -80,7 +85,7 @@ tape( 'if provided `n` which is not a nonnegative integer, the function returns
8085 var y ;
8186
8287 y = logpmf ( 0 , - 1 , 0.5 ) ;
83- t . equal ( isnan ( y ) , true , 'returns NaN ' ) ;
88+ t . strictEqual ( isnan ( y ) , true , 'returns expected value ' ) ;
8489
8590 t . end ( ) ;
8691} ) ;
@@ -89,16 +94,16 @@ tape( 'if provided a success probability `p` outside of `[0,1]`, the function re
8994 var y ;
9095
9196 y = logpmf ( 2 , 20 , - 1.0 ) ;
92- t . equal ( isnan ( y ) , true , 'returns NaN ' ) ;
97+ t . strictEqual ( isnan ( y ) , true , 'returns expected value ' ) ;
9398
9499 y = logpmf ( 0 , 20 , 1.5 ) ;
95- t . equal ( isnan ( y ) , true , 'returns NaN ' ) ;
100+ t . strictEqual ( isnan ( y ) , true , 'returns expected value ' ) ;
96101
97102 y = logpmf ( 2 , 20 , NINF ) ;
98- t . equal ( isnan ( y ) , true , 'returns NaN ' ) ;
103+ t . strictEqual ( isnan ( y ) , true , 'returns expected value ' ) ;
99104
100105 y = logpmf ( 2 , 20 , PINF ) ;
101- t . equal ( isnan ( y ) , true , 'returns NaN ' ) ;
106+ t . strictEqual ( isnan ( y ) , true , 'returns expected value ' ) ;
102107
103108 t . end ( ) ;
104109} ) ;
@@ -108,17 +113,17 @@ tape( 'if `p` or `n` equals `0`, the function evaluates a degenerate distributio
108113
109114 // Case: n = 8, p = 0.0
110115 y = logpmf ( 0 , 8 , 0.0 ) ;
111- t . equal ( y , 0.0 , 'returns 0 for x equal to 0 ' ) ;
116+ t . strictEqual ( y , 0.0 , 'returns expected value ' ) ;
112117
113118 y = logpmf ( 1 , 8 , 0.0 ) ;
114- t . equal ( y , NINF , 'returns -Infinity ' ) ;
119+ t . strictEqual ( y , NINF , 'returns expected value ' ) ;
115120
116121 // Case: n = 0, p = 0.5
117122 y = logpmf ( 0 , 0 , 0.5 ) ;
118- t . equal ( y , 0.0 , 'returns 0 for x equal to 0 ' ) ;
123+ t . strictEqual ( y , 0.0 , 'returns expected value ' ) ;
119124
120125 y = logpmf ( 1 , 0 , 0.5 ) ;
121- t . equal ( y , NINF , 'returns -Infinity ' ) ;
126+ t . strictEqual ( y , NINF , 'returns expected value ' ) ;
122127
123128 t . end ( ) ;
124129} ) ;
@@ -127,10 +132,10 @@ tape( 'if `p` equals `1.0`, the function evaluates a degenerate distribution cen
127132 var y ;
128133
129134 y = logpmf ( 8 , 8 , 1.0 ) ;
130- t . equal ( y , 0.0 , 'returns 0 for x equal to 8 ' ) ;
135+ t . strictEqual ( y , 0.0 , 'returns expected value ' ) ;
131136
132137 y = logpmf ( 1 , 8 , 1.0 ) ;
133- t . equal ( y , NINF , 'returns -Infinity ' ) ;
138+ t . strictEqual ( y , NINF , 'returns expected value ' ) ;
134139
135140 t . end ( ) ;
136141} ) ;
@@ -152,7 +157,7 @@ tape( 'the function evaluates the logpmf for `x` given large `n` and `p`', opts,
152157 for ( i = 0 ; i < x . length ; i ++ ) {
153158 y = logpmf ( x [ i ] , n [ i ] , p [ i ] ) ;
154159 if ( y === expected [ i ] ) {
155- t . equal ( y , expected [ i ] , 'x: ' + x [ i ] + ', n: ' + n [ i ] + ', p: ' + p [ i ] + ', y: ' + y + ', expected: ' + expected [ i ] ) ;
160+ t . strictEqual ( y , expected [ i ] , 'x: ' + x [ i ] + ', n: ' + n [ i ] + ', p: ' + p [ i ] + ', y: ' + y + ', expected: ' + expected [ i ] ) ;
156161 } else {
157162 delta = abs ( y - expected [ i ] ) ;
158163 tol = 30.0 * EPS * abs ( expected [ i ] ) ;
@@ -179,7 +184,7 @@ tape( 'the function evaluates the logpmf for `x` given large `n` and small `p`',
179184 for ( i = 0 ; i < x . length ; i ++ ) {
180185 y = logpmf ( x [ i ] , n [ i ] , p [ i ] ) ;
181186 if ( y === expected [ i ] ) {
182- t . equal ( y , expected [ i ] , 'x: ' + x [ i ] + ', n: ' + n [ i ] + ', p: ' + p [ i ] + ', y: ' + y + ', expected: ' + expected [ i ] ) ;
187+ t . strictEqual ( y , expected [ i ] , 'x: ' + x [ i ] + ', n: ' + n [ i ] + ', p: ' + p [ i ] + ', y: ' + y + ', expected: ' + expected [ i ] ) ;
183188 } else {
184189 delta = abs ( y - expected [ i ] ) ;
185190 tol = 20.0 * EPS * abs ( expected [ i ] ) ;
@@ -206,7 +211,7 @@ tape( 'the function evaluates the logpmf for `x` given small `n` and large `p`',
206211 for ( i = 0 ; i < x . length ; i ++ ) {
207212 y = logpmf ( x [ i ] , n [ i ] , p [ i ] ) ;
208213 if ( y === expected [ i ] ) {
209- t . equal ( y , expected [ i ] , 'x: ' + x [ i ] + ', n: ' + n [ i ] + ', p: ' + p [ i ] + ', y: ' + y + ', expected: ' + expected [ i ] ) ;
214+ t . strictEqual ( y , expected [ i ] , 'x: ' + x [ i ] + ', n: ' + n [ i ] + ', p: ' + p [ i ] + ', y: ' + y + ', expected: ' + expected [ i ] ) ;
210215 } else {
211216 delta = abs ( y - expected [ i ] ) ;
212217 tol = 20.0 * EPS * abs ( expected [ i ] ) ;
@@ -233,7 +238,7 @@ tape( 'the function evaluates the logpmf for `x` given small `n` and `p`', opts,
233238 for ( i = 0 ; i < x . length ; i ++ ) {
234239 y = logpmf ( x [ i ] , n [ i ] , p [ i ] ) ;
235240 if ( y === expected [ i ] ) {
236- t . equal ( y , expected [ i ] , 'x: ' + x [ i ] + ', n: ' + n [ i ] + ', p: ' + p [ i ] + ', y: ' + y + ', expected: ' + expected [ i ] ) ;
241+ t . strictEqual ( y , expected [ i ] , 'x: ' + x [ i ] + ', n: ' + n [ i ] + ', p: ' + p [ i ] + ', y: ' + y + ', expected: ' + expected [ i ] ) ;
237242 } else {
238243 delta = abs ( y - expected [ i ] ) ;
239244 tol = 10.0 * EPS * abs ( expected [ i ] ) ;
0 commit comments