123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 |
- package framework
- import (
- "github.com/fatedier/frp/test/e2e/framework/consts"
- "github.com/fatedier/frp/test/e2e/pkg/request"
- )
- func SetRequestProtocol(protocol string) func(*request.Request) {
- return func(r *request.Request) {
- r.Protocol(protocol)
- }
- }
- func SetRequestPort(port int) func(*request.Request) {
- return func(r *request.Request) {
- r.Port(port)
- }
- }
- // NewRequest return a default TCP request with default timeout and content.
- func NewRequest() *request.Request {
- return request.New().
- Timeout(consts.DefaultTimeout).
- Body([]byte(consts.TestString))
- }
- func ExpectResponse(req *request.Request, expectResp []byte, explain ...interface{}) {
- ret, err := req.Do()
- ExpectNoError(err, explain...)
- ExpectEqualValues(expectResp, ret, explain...)
- }
- func ExpectResponseError(req *request.Request, explain ...interface{}) {
- _, err := req.Do()
- ExpectError(err, explain...)
- }
- type RequestExpect struct {
- req *request.Request
- f *Framework
- expectResp []byte
- expectError bool
- explain []interface{}
- }
- func NewRequestExpect(f *Framework) *RequestExpect {
- return &RequestExpect{
- req: NewRequest(),
- f: f,
- expectResp: []byte(consts.TestString),
- expectError: false,
- explain: make([]interface{}, 0),
- }
- }
- func (e *RequestExpect) RequestModify(f func(r *request.Request)) *RequestExpect {
- f(e.req)
- return e
- }
- func (e *RequestExpect) PortName(name string) *RequestExpect {
- if e.f != nil {
- e.req.Port(e.f.PortByName(name))
- }
- return e
- }
- func (e *RequestExpect) ExpectResp(resp []byte) *RequestExpect {
- e.expectResp = resp
- return e
- }
- func (e *RequestExpect) ExpectError(expectErr bool) *RequestExpect {
- e.expectError = expectErr
- return e
- }
- func (e *RequestExpect) Explain(explain ...interface{}) *RequestExpect {
- e.explain = explain
- return e
- }
- func (e *RequestExpect) Ensure() {
- if e.expectError {
- ExpectResponseError(e.req, e.explain...)
- } else {
- ExpectResponse(e.req, e.expectResp, e.explain...)
- }
- }
|