123456789101112131415161718192021222324252627282930313233343536373839 |
- package utils
- import (
- "strings"
- "testing"
- )
- func TestGetPatternForRestEndpoint(t *testing.T) {
- expected := "/hello/"
- endpoints := [...]string{"/hello/{param1}", "/hello/{param1}/{param2}", "/hello/{param1}/world/{param2}"}
- for _, endpoint := range endpoints {
- if ep := getPatternForRestEndpoint(endpoint); ep != expected {
- t.Errorf("%s p does not match expected %s", ep, expected)
- }
- }
- }
- func TestReadParameter(t *testing.T) {
- expected := "world"
- endpoints := [...]string{
- "/hello/{p1}",
- "/hello/cruel/{p1}",
- "/hello/{p1}/my/friend",
- "/hello/{p1}/{p2}/friend",
- "/hello/{p2}/{p3}/{p1}",
- "/{p1}/is/nice",
- "/{p1}/{p1}/{p1}",
- }
- for _, ep := range endpoints {
- v, err := readParameter(ep, strings.Replace(ep, "{p1}", expected, -1), "p1")
- if err != nil {
- t.Errorf("Unexpected error when reading parameter: %s", err.Error())
- }
- if v != expected {
- t.Errorf("'%s' should have returned %s", ep, expected)
- }
- }
- }
|