github.com/prebid/prebid-server@v0.275.0/adapters/tappx/params_test.go (about)

     1  package tappx
     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.BidderTappx, json.RawMessage(validParam)); err != nil {
    17  			t.Errorf("Schema rejected tappx params: %s \n Error: %s", validParam, err)
    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.BidderTappx, json.RawMessage(invalidParam)); err == nil {
    30  			t.Errorf("Schema allowed unexpected params: %s", invalidParam)
    31  		}
    32  	}
    33  }
    34  
    35  var validParams = []string{
    36  	`{"tappxkey":"pub-12345-android-9876", "endpoint":"ZZ1INTERNALTEST149147915"}`,
    37  	`{"tappxkey":"pub-12345-android-9876", "endpoint":"ZZ1INTERNALTEST149147915", "host":"test.tappx.com"}`,
    38  	`{"tappxkey":"pub-12345-android-9876", "endpoint":"ZZ1INTERNALTEST149147915", "host":"test.tappx.com", "bidfloor":0.5}`,
    39  	`{"tappxkey":"pub-12345-android-9876", "endpoint":"ZZ1INTERNALTEST149147915", "host":"test.tappx.com", "bidfloor":0.5, "mktag":"txmk-xxxxx-xxx-xxxx"}`,
    40  	`{"tappxkey":"pub-12345-android-9876", "endpoint":"ZZ1INTERNALTEST149147915", "host":"test.tappx.com", "bidfloor":0.5, "bcid":["123"]}`,
    41  	`{"tappxkey":"pub-12345-android-9876", "endpoint":"ZZ1INTERNALTEST149147915", "host":"test.tappx.com", "bidfloor":0.5, "bcrid":["245"]}`,
    42  	`{"tappxkey":"pub-12345-android-9876", "endpoint":"ZZ1INTERNALTEST149147915", "host":"test.tappx.com", "bidfloor":0.5, "bcrid":["245", "321"]}`,
    43  	`{"tappxkey":"pub-12345-android-9876", "endpoint":"ZZ1INTERNALTEST149147915", "host":"test.tappx.com", "bidfloor":0.5, "bcid":["123", "654"], "bcrid":["245", "321"]}`,
    44  }
    45  
    46  var invalidParams = []string{
    47  	``,
    48  	`null`,
    49  	`true`,
    50  	`5`,
    51  	`4.2`,
    52  	`[]`,
    53  	`{}`,
    54  	`{"tappxkey":""}`,
    55  	`{"tappxkey":"pub-12345-android-9876"}`,
    56  	`{"endpoint":""}`,
    57  	`{"endpoint":"ZZ1INTERNALTEST149147915"}`,
    58  	`{"tappxkey": 1, "endpoint":"ZZ1INTERNALTEST149147915"}`,
    59  	`{"tappxkey":"pub-12345-android-9876", "endpoint": 1}`,
    60  	`{"tappxkey": 1, "endpoint": 1}`,
    61  	`{"tappxkey": 1, "endpoint":"ZZ1INTERNALTEST149147915", "host":""}`,
    62  	`{"tappxkey":"pub-12345-android-9876", "endpoint": 1, "host":""}`,
    63  	`{"tappxkey": 1, "endpoint": 1, "host": 123}`,
    64  	`{"tappxkey": "1", "endpoint": 1}`,
    65  	`{"tappxkey": "1", "endpoint": "ZZ1INTERNALTEST149147915", "host":[]]}`,
    66  	`{"tappxkey": "1", "endpoint": 1}`,
    67  	`{"tappxkey": "1", "endpoint": "1", "mktag":1}`,
    68  	`{"tappxkey": "1", "endpoint": "1", "mktag":[1,2]}`,
    69  	`{"tappxkey": "1", "endpoint": "1", "bcid":""}`,
    70  	`{"tappxkey": "1", "endpoint": "1", "bcid":"123", bcrid: ["123"]}`,
    71  	`{"tappxkey": "1", "endpoint": "1", "bcid":["123"], bcrid: 123}`,
    72  	`{"tappxkey": "1", "endpoint": "1", "bcid":["123"], bcrid: [123]}`,
    73  	`{"tappxkey": "1", "endpoint": "1", "bcid":[123], bcrid: ["123"]}`,
    74  }