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