Ejemplo n.º 1
0
func TestAPIKeyValidator(t *testing.T) {

	v := NewAPIKeyValidator("apiKey", "foo", "bar")
	hr, _ := http.NewRequest("GET", "/foo", nil)
	r := vertex.NewRequest(hr)
	check := func(k string) error {
		r.Form.Set(v.paramName, k)
		_, err := v.Handle(httptest.NewRecorder(), r, mockkHandler)
		return err
	}

	assert.NoError(t, check("foo"))
	assert.NoError(t, check("bar"))
	assert.Error(t, check(""))
	assert.Error(t, check("sdfsdfsd"))

}
Ejemplo n.º 2
0
func TestIPFilter(t *testing.T) {

	flt := NewIPRangeFilter().AllowPrivate()
	flt.Allow("8.8.8.4")
	flt.Deny("127.0.0.2")
	hr, _ := http.NewRequest("GET", "/foo", nil)
	r := vertex.NewRequest(hr)
	checkAddr := func(addr string) error {
		r.RemoteIP = addr
		_, err := flt.Handle(httptest.NewRecorder(), r, mockkHandler)
		return err
	}

	assert.NoError(t, checkAddr("127.0.0.1"))
	assert.NoError(t, checkAddr("172.16.25.46"))
	assert.Error(t, checkAddr("8.8.8.8"))
	assert.NoError(t, checkAddr("8.8.8.4"))
	assert.Error(t, checkAddr("127.0.0.2"))

}