mirror of
https://github.com/hanzoai/expr.git
synced 2026-09-24 16:58:58 +00:00
55 lines
1.6 KiB
Go
55 lines
1.6 KiB
Go
package file
|
|
|
|
import (
|
|
"testing"
|
|
)
|
|
|
|
const (
|
|
unexpectedSnippet = "%s got snippet '%s', want '%v'"
|
|
snippetNotFound = "%s snippet not found, wanted '%v'"
|
|
snippetFound = "%s snippet found at Line %d, wanted none"
|
|
)
|
|
|
|
func TestStringSource_SnippetMultiLine(t *testing.T) {
|
|
source := NewSource("hello\nworld\nmy\nbub\n")
|
|
if str, found := source.Snippet(1); !found {
|
|
t.Errorf(snippetNotFound, t.Name(), 1)
|
|
} else if str != "hello" {
|
|
t.Errorf(unexpectedSnippet, t.Name(), str, "hello")
|
|
}
|
|
if str2, found := source.Snippet(2); !found {
|
|
t.Errorf(snippetNotFound, t.Name(), 2)
|
|
} else if str2 != "world" {
|
|
t.Errorf(unexpectedSnippet, t.Name(), str2, "world")
|
|
}
|
|
if str3, found := source.Snippet(3); !found {
|
|
t.Errorf(snippetNotFound, t.Name(), 3)
|
|
} else if str3 != "my" {
|
|
t.Errorf(unexpectedSnippet, t.Name(), str3, "my")
|
|
}
|
|
if str4, found := source.Snippet(4); !found {
|
|
t.Errorf(snippetNotFound, t.Name(), 4)
|
|
} else if str4 != "bub" {
|
|
t.Errorf(unexpectedSnippet, t.Name(), str4, "bub")
|
|
}
|
|
if str5, found := source.Snippet(5); !found {
|
|
t.Errorf(snippetNotFound, t.Name(), 5)
|
|
} else if str5 != "" {
|
|
t.Errorf(unexpectedSnippet, t.Name(), str5, "")
|
|
}
|
|
}
|
|
|
|
func TestStringSource_SnippetSingleLine(t *testing.T) {
|
|
source := NewSource("hello, world")
|
|
if str, found := source.Snippet(1); !found {
|
|
t.Errorf(snippetNotFound, t.Name(), 1)
|
|
} else if str != "hello, world" {
|
|
t.Errorf(unexpectedSnippet, t.Name(), str, "hello, world")
|
|
}
|
|
if str2, found := source.Snippet(2); found {
|
|
t.Errorf(snippetFound, t.Name(), 2)
|
|
} else if str2 != "" {
|
|
t.Errorf(unexpectedSnippet, t.Name(), str2, "")
|
|
}
|
|
}
|