@@ -6,50 +6,19 @@ const whitelist = require('..');
66
77const sleep = t => new Promise ( resolve => setTimeout ( resolve , t ) ) ;
88
9- /*
10- const darth = {
11- // primitives
12- name: 'Darth',
13- // array of primitives
14- alternativeNames: ['Anakin', 'Lord Vader'],
15- // nested object
16- settings: {color: 'red', remember: true},
17- // array with objects
18- skills: [{name: 'lightsaber', level: 1}, {name: 'math', level: -1}],
19- };
20-
21- const personAllowedRead = (person, options) => {
22- const isSelf = options.data && options.data.authenticated === person.name;
23- return whitelist(person, {
24- name: true,
25- alternativeNames: [true],
26- settings: isSelf && {color: true, remember: true},
27- skills: [{name: true, level: isSelf}],
28- }, options);
29- };
30-
31- const personAllowedWrite = (person, options) => {
32- return whitelist(person, isSelf && {
33- name: true,
34- alternativeNames: true,
35- settings: {color: true, remember: true},
9+ describe ( 'whitelist()' , ( ) => {
10+ describe ( 'allowed is not recognized' , ( ) => {
11+ it ( 'should throw' , co . wrap ( function * ( ) {
12+ yield whitelist ( 42 , 42 ) . should . be . rejectedWith ( 'allowed parameter type not recognized' ) ;
13+ } ) ) ;
3614 } ) ;
37- };
38-
39- const deathstar = {
40- name: 'Death star',
41- progress: 0.8,
42- owner: darth,
43- };
4415
45- const placeAllowedRead = {
46- name: true,
47- progress: true,
48- owner: personAllowedRead,
49- };
50- */
16+ describe ( 'allowed is undefined' , ( ) => {
17+ it ( 'should throw' , co . wrap ( function * ( ) {
18+ yield whitelist ( 42 , undefined ) . should . be . rejectedWith ( 'value not allowed' ) ;
19+ } ) ) ;
20+ } ) ;
5121
52- describe ( 'whitelist()' , ( ) => {
5322 describe ( 'allowed is boolean' , ( ) => {
5423 it ( 'should throw if allowed is false' , co . wrap ( function * ( ) {
5524 yield whitelist ( 42 , false ) . should . be . rejectedWith ( 'value not allowed' ) ;
0 commit comments