github.com/prebid/prebid-server@v0.275.0/adapters/gumgum/params_test.go (about) 1 package gumgum 2 3 import ( 4 "encoding/json" 5 "github.com/prebid/prebid-server/openrtb_ext" 6 "testing" 7 ) 8 9 func TestValidParams(t *testing.T) { 10 validator, err := openrtb_ext.NewBidderParamsValidator("../../static/bidder-params") 11 if err != nil { 12 t.Fatalf("Failed to fetch the json-schemas. %v", err) 13 } 14 15 for _, validParam := range validParams { 16 if err := validator.Validate(openrtb_ext.BidderGumGum, json.RawMessage(validParam)); err != nil { 17 t.Errorf("Schema rejected gumgum params: %s", validParam) 18 } 19 } 20 } 21 22 func TestInvalidParams(t *testing.T) { 23 validator, err := openrtb_ext.NewBidderParamsValidator("../../static/bidder-params") 24 if err != nil { 25 t.Fatalf("Failed to fetch the json-schemas. %v", err) 26 } 27 28 for _, invalidParam := range invalidParams { 29 if err := validator.Validate(openrtb_ext.BidderGumGum, json.RawMessage(invalidParam)); err == nil { 30 t.Errorf("Schema allowed unexpected params: %s", invalidParam) 31 } 32 } 33 } 34 35 var validParams = []string{ 36 `{"zone":"dc9d6be1"}`, 37 `{"pubId":12345678}`, 38 `{"zone":"dc9d6be1", "pubId":12345678}`, 39 `{"zone":"dc9d6be1", "slot":1234567}`, 40 `{"pubId":12345678, "slot":1234567}`, 41 `{"pubId":12345678, "irisid": "iris_6f9285823a48bne5"}`, 42 `{"zone":"dc9d6be1", "irisid": "iris_6f9285823a48bne5"}`, 43 `{"zone":"dc9d6be1", "pubId":12345678, "irisid": "iris_6f9285823a48bne5"}`, 44 } 45 46 var invalidParams = []string{ 47 `null`, 48 `nil`, 49 ``, 50 `{}`, 51 `[]`, 52 `true`, 53 `2`, 54 `{"zone":12345678}`, 55 `{"zone":""}`, 56 `{"placementId": 1}`, 57 `{"zone": true}`, 58 `{"placementId": 1, "zone":"1234567"}`, 59 `{"pubId":"123456"}`, 60 `{"slot":123456}`, 61 `{"zone":"1234567", "irisid": ""}`, 62 `{"zone":"1234567", "irisid": 1234}`, 63 `{"irisid": "iris_6f9285823a48bne5"}`, 64 }