package frameproto import ( "testing" "strings" ) func TestWriteFrame(t *testing.T) { tests := []struct{ Version string Expected string }{ { Version: "", Expected: ``+"\n", }, { Version: "something", Expected: ``+"\n", }, { Version: "Hello world! 🙂", Expected: ``+"\n", }, { Version: "vNext", Expected: ``+"\n", }, { Version: "2020-01-01", Expected: ``+"\n", }, } for testNumber, test := range tests { var buffer strings.Builder WriteFrame(&buffer, test.Version) expected := test.Expected actual := buffer.String() if expected != actual { t.Errorf("For test #%d, the actual written meta-tag is not what was expected.", testNumber) t.Logf("EXPECTED: %s", expected) t.Logf("ACTUAL: %s", actual) t.Logf("EXPECTED: %q", expected) t.Logf("ACTUAL: %q", actual) t.Logf("LABEL: %q", test.Version) continue } } }