Skip to main content
Glama
messages_test.go2.64 kB
package lunarmessages_test import ( lunarMessages "lunar/engine/messages" "net/url" "testing" "time" "github.com/stretchr/testify/assert" ) func TestItReturnsParsedURL(t *testing.T) { onRequest := lunarMessages.OnRequest{ ID: "123", SequenceID: "abc", Method: "GET", Scheme: "http", URL: "www.twitter.com", Path: "/users/2", Query: "flag=true", Headers: map[string]string{"Authorization": "bla"}, Body: "{}", Time: time.Now(), } res, err := onRequest.ParsedURL() assert.Nil(t, err) assert.Equal(t, "www.twitter.com", res.Host) assert.Equal(t, "http", res.Scheme) assert.Equal( t, url.Values(map[string][]string{"flag": {"true"}}), res.Query(), ) } func TestItReturnsUpdatedParsedURLWhenHostChanged(t *testing.T) { onRequest := lunarMessages.OnRequest{ ID: "123", SequenceID: "abc", Method: "GET", Scheme: "http", URL: "www.twitter.com", Path: "/users/2", Query: "flag=true", Headers: map[string]string{"Authorization": "bla"}, Body: "{}", Time: time.Now(), } res, err := onRequest.ParsedURL() assert.Nil(t, err) assert.Equal(t, "www.twitter.com", res.Host) onRequest.URL = "www.medium.com" res, err = onRequest.ParsedURL() assert.Nil(t, err) assert.Equal(t, "www.medium.com", res.Host) } func TestItReturnsUpdatedParsedURLWhenSchemeChanged(t *testing.T) { onRequest := lunarMessages.OnRequest{ ID: "123", SequenceID: "abc", Method: "GET", Scheme: "http", URL: "www.twitter.com", Path: "/users/2", Query: "flag=true", Headers: map[string]string{"Authorization": "bla"}, Body: "{}", Time: time.Now(), } res, err := onRequest.ParsedURL() assert.Nil(t, err) assert.Equal(t, "http", res.Scheme) onRequest.Scheme = "https" res, err = onRequest.ParsedURL() assert.Nil(t, err) assert.Equal(t, "https", res.Scheme) } func TestItReturnsUpdatedParsedURLWhenQueryChanged(t *testing.T) { onRequest := lunarMessages.OnRequest{ ID: "123", SequenceID: "abc", Method: "GET", Scheme: "http", URL: "www.twitter.com", Path: "/users/2", Query: "flag=true", Headers: map[string]string{"Authorization": "bla"}, Body: "{}", Time: time.Now(), } res, err := onRequest.ParsedURL() assert.Nil(t, err) assert.Equal( t, url.Values(map[string][]string{"flag": {"true"}}), res.Query(), ) onRequest.Query = "" res, err = onRequest.ParsedURL() assert.Nil(t, err) assert.Equal(t, url.Values(map[string][]string{}), res.Query()) }

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/TheLunarCompany/lunar'

If you have feedback or need assistance with the MCP directory API, please join our Discord server