1*97bd480fSBaptiste Daroussin[ 2*97bd480fSBaptiste Daroussin { 3*97bd480fSBaptiste Daroussin "description": "oneOf", 4*97bd480fSBaptiste Daroussin "schema": { 5*97bd480fSBaptiste Daroussin "oneOf": [ 6*97bd480fSBaptiste Daroussin { 7*97bd480fSBaptiste Daroussin "type": "integer" 8*97bd480fSBaptiste Daroussin }, 9*97bd480fSBaptiste Daroussin { 10*97bd480fSBaptiste Daroussin "minimum": 2 11*97bd480fSBaptiste Daroussin } 12*97bd480fSBaptiste Daroussin ] 13*97bd480fSBaptiste Daroussin }, 14*97bd480fSBaptiste Daroussin "tests": [ 15*97bd480fSBaptiste Daroussin { 16*97bd480fSBaptiste Daroussin "description": "first oneOf valid", 17*97bd480fSBaptiste Daroussin "data": 1, 18*97bd480fSBaptiste Daroussin "valid": true 19*97bd480fSBaptiste Daroussin }, 20*97bd480fSBaptiste Daroussin { 21*97bd480fSBaptiste Daroussin "description": "second oneOf valid", 22*97bd480fSBaptiste Daroussin "data": 2.5, 23*97bd480fSBaptiste Daroussin "valid": true 24*97bd480fSBaptiste Daroussin }, 25*97bd480fSBaptiste Daroussin { 26*97bd480fSBaptiste Daroussin "description": "both oneOf valid", 27*97bd480fSBaptiste Daroussin "data": 3, 28*97bd480fSBaptiste Daroussin "valid": false 29*97bd480fSBaptiste Daroussin }, 30*97bd480fSBaptiste Daroussin { 31*97bd480fSBaptiste Daroussin "description": "neither oneOf valid", 32*97bd480fSBaptiste Daroussin "data": 1.5, 33*97bd480fSBaptiste Daroussin "valid": false 34*97bd480fSBaptiste Daroussin } 35*97bd480fSBaptiste Daroussin ] 36*97bd480fSBaptiste Daroussin }, 37*97bd480fSBaptiste Daroussin { 38*97bd480fSBaptiste Daroussin "description": "oneOf with base schema", 39*97bd480fSBaptiste Daroussin "schema": { 40*97bd480fSBaptiste Daroussin "type": "string", 41*97bd480fSBaptiste Daroussin "oneOf" : [ 42*97bd480fSBaptiste Daroussin { 43*97bd480fSBaptiste Daroussin "minLength": 2 44*97bd480fSBaptiste Daroussin }, 45*97bd480fSBaptiste Daroussin { 46*97bd480fSBaptiste Daroussin "maxLength": 4 47*97bd480fSBaptiste Daroussin } 48*97bd480fSBaptiste Daroussin ] 49*97bd480fSBaptiste Daroussin }, 50*97bd480fSBaptiste Daroussin "tests": [ 51*97bd480fSBaptiste Daroussin { 52*97bd480fSBaptiste Daroussin "description": "mismatch base schema", 53*97bd480fSBaptiste Daroussin "data": 3, 54*97bd480fSBaptiste Daroussin "valid": false 55*97bd480fSBaptiste Daroussin }, 56*97bd480fSBaptiste Daroussin { 57*97bd480fSBaptiste Daroussin "description": "one oneOf valid", 58*97bd480fSBaptiste Daroussin "data": "foobar", 59*97bd480fSBaptiste Daroussin "valid": true 60*97bd480fSBaptiste Daroussin }, 61*97bd480fSBaptiste Daroussin { 62*97bd480fSBaptiste Daroussin "description": "both oneOf valid", 63*97bd480fSBaptiste Daroussin "data": "foo", 64*97bd480fSBaptiste Daroussin "valid": false 65*97bd480fSBaptiste Daroussin } 66*97bd480fSBaptiste Daroussin ] 67*97bd480fSBaptiste Daroussin } 68*97bd480fSBaptiste Daroussin] 69