github.com/prebid/prebid-server@v0.275.0/openrtb_ext/site_test.go (about)

     1  package openrtb_ext_test
     2  
     3  import (
     4  	"encoding/json"
     5  	"testing"
     6  
     7  	"github.com/prebid/prebid-server/openrtb_ext"
     8  	"github.com/stretchr/testify/assert"
     9  )
    10  
    11  func TestInvalidSiteExt(t *testing.T) {
    12  	var s openrtb_ext.ExtSite
    13  	assert.EqualError(t, json.Unmarshal([]byte(`{"amp":-1}`), &s), "request.site.ext.amp must be either 1, 0, or undefined")
    14  	assert.EqualError(t, json.Unmarshal([]byte(`{"amp":2}`), &s), "request.site.ext.amp must be either 1, 0, or undefined")
    15  	assert.EqualError(t, json.Unmarshal([]byte(`{"amp":true}`), &s), "request.site.ext.amp must be either 1, 0, or undefined")
    16  	assert.EqualError(t, json.Unmarshal([]byte(`{"amp":null}`), &s), "request.site.ext.amp must be either 1, 0, or undefined")
    17  	assert.EqualError(t, json.Unmarshal([]byte(`{"amp":"1"}`), &s), "request.site.ext.amp must be either 1, 0, or undefined")
    18  }
    19  
    20  func TestValidSiteExt(t *testing.T) {
    21  	var s openrtb_ext.ExtSite
    22  	assert.NoError(t, json.Unmarshal([]byte(`{"amp":0}`), &s))
    23  	assert.EqualValues(t, 0, s.AMP)
    24  	assert.NoError(t, json.Unmarshal([]byte(`{"amp":1}`), &s))
    25  	assert.EqualValues(t, 1, s.AMP)
    26  	assert.NoError(t, json.Unmarshal([]byte(`{"amp":      1   }`), &s))
    27  	assert.EqualValues(t, 1, s.AMP)
    28  }