package codersdk_test import ( "net/url" "testing" "github.com/stretchr/testify/require" "tailscale.com/tailcfg" "github.com/coder/coder/v2/codersdk/agentsdk" ) func TestWorkspaceRewriteDERPMap(t *testing.T) { t.Parallel() // This test ensures that RewriteDERPMap mutates built-in DERPs with the // client access URL. dm := &tailcfg.DERPMap{ Regions: map[int]*tailcfg.DERPRegion{ 1: { EmbeddedRelay: true, RegionID: 1, Nodes: []*tailcfg.DERPNode{{ HostName: "bananas.org", DERPPort: 1, }}, }, }, } parsed, err := url.Parse("https://coconuts.org:44558") require.NoError(t, err) client := agentsdk.New(parsed) client.RewriteDERPMap(dm) region := dm.Regions[1] require.True(t, region.EmbeddedRelay) require.Len(t, region.Nodes, 1) node := region.Nodes[0] require.Equal(t, "coconuts.org", node.HostName) require.Equal(t, 44558, node.DERPPort) }