summaryrefslogtreecommitdiff
path: root/main_test.go
blob: d1b864d3864af1f80b024b104f50ba92120c82f9 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
package main

import (
	"io"
	"net/http"
	"net/http/httptest"
	"net/url"
	"testing"
)

func TestSyncRejection(t *testing.T) {
	server := httptest.NewServer(endpoint{"my.site"})
	defer server.Close()

	client := http.DefaultClient
	r, err := client.PostForm(server.URL, url.Values{
		"source": []string{"https||:example.org/somewhere"},
		"target": []string{"my.site/target"},
	})
	if err != nil {
		t.Fatal(err)
	}
	if r.StatusCode != 400 {
		t.Fatalf("want 400, got %v", r.Status)
	}
	bb, _ := io.ReadAll(r.Body)
	if string(bb) != errSrcInvalid {
		t.Fatalf("want %s, got %s", errSrcInvalid, string(bb))
	}
}