func (t *TestSuite) GetCustom(uri string) *TestRequest {
	req, err := http.NewRequest("GET", uri, nil)
	if err != nil {
		panic(err)
	}
	return t.NewTestRequest(req)
}
GetCustom returns a GET request to the given URI in a form of its wrapper.
package testsuite
import (
	"bytes"
	"fmt"
	"github.com/revel/revel"
	"github.com/revel/revel/session"
	"golang.org/x/net/websocket"
	"io"
	"mime"
	"mime/multipart"
	"net/http"
	"net/http/cookiejar"
	"net/http/httptest"
	"net/textproto"
	"net/url"
	"os"
	"path/filepath"
	"regexp"
	"strings"
	"testing"
)
func NewTestSuite(t *testing.T) *TestSuite {
	return NewTestSuiteEngine(revel.NewSessionCookieEngine(), t)
}
func NewTestSuiteEngine(engine revel.SessionEngine, t *testing.T) *TestSuite {
	jar, _ := cookiejar.New(nil)
	ts := &TestSuite{
		Client:        &http.Client{Jar: jar},
		Session:       session.NewSession(),
		SessionEngine: engine,
		T:             t,
		ResponseChannel:make(chan bool, 1),
	}
	return ts
}
type TestSuite struct {
	Response        *httptest.ResponseRecorder  
	ResponseChannel chan bool                   
	Session         session.Session             
	SessionEngine   revel.SessionEngine         
	Sent            bool                        
	T               *testing.T                  
	Client          *http.Client                
}
func (t *TestSuite) NewTestRequest(req *http.Request) *TestRequest {
	return &TestRequest{
		Request:   req,
		testSuite: t,
	}
}
func (t *TestSuite) Host() string {
	if revel.ServerEngineInit.Address[0] == ':' {
		return "127.0.0.1" + revel.ServerEngineInit.Address
	}
	return revel.ServerEngineInit.Address
}
func (t *TestSuite) BaseUrl() string {
	if revel.HTTPSsl {
		return "https://" + t.Host()
	}
	return "http://" + t.Host()
}
func (t *TestSuite) WebSocketUrl() string {
	return "ws://" + t.Host()
}
func (t *TestSuite) Get(path string) *TestSuite {
	t.GetCustom(t.BaseUrl() + path).Send()
	return t
}