Add supporting unit tests for WrapContent
This commit is contained in:
parent
980f236d84
commit
57b3afd4d7
|
@ -0,0 +1,74 @@
|
||||||
|
package main
|
||||||
|
|
||||||
|
import (
|
||||||
|
"reflect"
|
||||||
|
"testing"
|
||||||
|
)
|
||||||
|
|
||||||
|
func Test_WrapContent_Wrapped_Line_Length(t *testing.T) {
|
||||||
|
type fields struct {
|
||||||
|
WrappedContent []string
|
||||||
|
RawContent string
|
||||||
|
Links []string
|
||||||
|
Location Url
|
||||||
|
ScrollPosition int
|
||||||
|
FoundLinkLines []int
|
||||||
|
SearchTerm string
|
||||||
|
SearchIndex int
|
||||||
|
FileType string
|
||||||
|
WrapWidth int
|
||||||
|
Color bool
|
||||||
|
}
|
||||||
|
type args struct {
|
||||||
|
width int
|
||||||
|
color bool
|
||||||
|
}
|
||||||
|
|
||||||
|
// create a Url for use by the MakePage function
|
||||||
|
url, _ := MakeUrl("gemini://rawtext.club")
|
||||||
|
|
||||||
|
tests := []struct {
|
||||||
|
name string
|
||||||
|
input string
|
||||||
|
expects []string
|
||||||
|
args args
|
||||||
|
}{
|
||||||
|
{
|
||||||
|
"Short line that doesn't wrap",
|
||||||
|
"0123456789\n",
|
||||||
|
[]string{
|
||||||
|
"0123456789",
|
||||||
|
"",
|
||||||
|
},
|
||||||
|
args{
|
||||||
|
10,
|
||||||
|
false,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Long line wrapped to 10 columns",
|
||||||
|
"0123456789 123456789 123456789 123456789 123456789\n",
|
||||||
|
[]string{
|
||||||
|
"0123456789",
|
||||||
|
" 123456789",
|
||||||
|
" 123456789",
|
||||||
|
" 123456789",
|
||||||
|
" 123456789",
|
||||||
|
"",
|
||||||
|
},
|
||||||
|
args{
|
||||||
|
10,
|
||||||
|
false,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
for _, tt := range tests {
|
||||||
|
t.Run(tt.name, func(t *testing.T) {
|
||||||
|
p := MakePage(url, tt.input, []string{""})
|
||||||
|
p.WrapContent(tt.args.width-1, tt.args.color)
|
||||||
|
if !reflect.DeepEqual(p.WrappedContent, tt.expects) {
|
||||||
|
t.Errorf("Test failed - %s\nexpects %s\nactual %s", tt.name, tt.expects, p.WrappedContent)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue