* tree-vect-loop-manip.c (vect_do_peeling): Do not use
[official-gcc.git] / libgo / go / go / ast / ast_test.go
blob1a6a283f232bb706287c6aa004fb27af2d67f4ff
1 // Copyright 2012 The Go Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style
3 // license that can be found in the LICENSE file.
5 package ast
7 import (
8 "testing"
11 var comments = []struct {
12 list []string
13 text string
15 {[]string{"//"}, ""},
16 {[]string{"// "}, ""},
17 {[]string{"//", "//", "// "}, ""},
18 {[]string{"// foo "}, "foo\n"},
19 {[]string{"//", "//", "// foo"}, "foo\n"},
20 {[]string{"// foo bar "}, "foo bar\n"},
21 {[]string{"// foo", "// bar"}, "foo\nbar\n"},
22 {[]string{"// foo", "//", "//", "//", "// bar"}, "foo\n\nbar\n"},
23 {[]string{"// foo", "/* bar */"}, "foo\n bar\n"},
24 {[]string{"//", "//", "//", "// foo", "//", "//", "//"}, "foo\n"},
26 {[]string{"/**/"}, ""},
27 {[]string{"/* */"}, ""},
28 {[]string{"/**/", "/**/", "/* */"}, ""},
29 {[]string{"/* Foo */"}, " Foo\n"},
30 {[]string{"/* Foo Bar */"}, " Foo Bar\n"},
31 {[]string{"/* Foo*/", "/* Bar*/"}, " Foo\n Bar\n"},
32 {[]string{"/* Foo*/", "/**/", "/**/", "/**/", "// Bar"}, " Foo\n\nBar\n"},
33 {[]string{"/* Foo*/", "/*\n*/", "//", "/*\n*/", "// Bar"}, " Foo\n\nBar\n"},
34 {[]string{"/* Foo*/", "// Bar"}, " Foo\nBar\n"},
35 {[]string{"/* Foo\n Bar*/"}, " Foo\n Bar\n"},
38 func TestCommentText(t *testing.T) {
39 for i, c := range comments {
40 list := make([]*Comment, len(c.list))
41 for i, s := range c.list {
42 list[i] = &Comment{Text: s}
45 text := (&CommentGroup{list}).Text()
46 if text != c.text {
47 t.Errorf("case %d: got %q; expected %q", i, text, c.text)