mirror of https://github.com/k3s-io/k3s
51 lines
1.5 KiB
Go
51 lines
1.5 KiB
Go
// Copyright 2012 The Go Authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style
|
|
// license that can be found in the LICENSE file.
|
|
|
|
package ast
|
|
|
|
import (
|
|
"testing"
|
|
)
|
|
|
|
var comments = []struct {
|
|
list []string
|
|
text string
|
|
}{
|
|
{[]string{"//"}, ""},
|
|
{[]string{"// "}, ""},
|
|
{[]string{"//", "//", "// "}, ""},
|
|
{[]string{"// foo "}, "foo\n"},
|
|
{[]string{"//", "//", "// foo"}, "foo\n"},
|
|
{[]string{"// foo bar "}, "foo bar\n"},
|
|
{[]string{"// foo", "// bar"}, "foo\nbar\n"},
|
|
{[]string{"// foo", "//", "//", "//", "// bar"}, "foo\n\nbar\n"},
|
|
{[]string{"// foo", "/* bar */"}, "foo\n bar\n"},
|
|
{[]string{"//", "//", "//", "// foo", "//", "//", "//"}, "foo\n"},
|
|
|
|
{[]string{"/**/"}, ""},
|
|
{[]string{"/* */"}, ""},
|
|
{[]string{"/**/", "/**/", "/* */"}, ""},
|
|
{[]string{"/* Foo */"}, " Foo\n"},
|
|
{[]string{"/* Foo Bar */"}, " Foo Bar\n"},
|
|
{[]string{"/* Foo*/", "/* Bar*/"}, " Foo\n Bar\n"},
|
|
{[]string{"/* Foo*/", "/**/", "/**/", "/**/", "// Bar"}, " Foo\n\nBar\n"},
|
|
{[]string{"/* Foo*/", "/*\n*/", "//", "/*\n*/", "// Bar"}, " Foo\n\nBar\n"},
|
|
{[]string{"/* Foo*/", "// Bar"}, " Foo\nBar\n"},
|
|
{[]string{"/* Foo\n Bar*/"}, " Foo\n Bar\n"},
|
|
}
|
|
|
|
func TestCommentText(t *testing.T) {
|
|
for i, c := range comments {
|
|
list := make([]*Comment, len(c.list))
|
|
for i, s := range c.list {
|
|
list[i] = &Comment{Text: s}
|
|
}
|
|
|
|
text := (&CommentGroup{list}).Text()
|
|
if text != c.text {
|
|
t.Errorf("case %d: got %q; expected %q", i, text, c.text)
|
|
}
|
|
}
|
|
}
|