mirror of
https://github.com/walles/moar.git
synced 2024-10-03 23:17:51 +03:00
e0e9ee6610
One rune can cover multiple screen cells.
34 lines
757 B
Go
34 lines
757 B
Go
package main
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/walles/moar/twin"
|
|
"gotest.tools/v3/assert"
|
|
)
|
|
|
|
func TestParseScrollHint(t *testing.T) {
|
|
token, err := parseScrollHint("ESC[7m>")
|
|
assert.NilError(t, err)
|
|
assert.Equal(t, token, twin.StyledRune{
|
|
Rune: '>',
|
|
Style: twin.StyleDefault.WithAttr(twin.AttrReverse),
|
|
})
|
|
}
|
|
|
|
func TestPageOneInputFile(t *testing.T) {
|
|
pager, screen, _, formatter, err := pagerFromArgs(
|
|
[]string{"", "moar_test.go"},
|
|
func(_ twin.MouseMode, _ twin.ColorCount) (twin.Screen, error) {
|
|
return twin.NewFakeScreen(80, 24), nil
|
|
},
|
|
false, // stdin is redirected
|
|
false, // stdout is redirected
|
|
)
|
|
|
|
assert.NilError(t, err)
|
|
assert.Assert(t, pager != nil)
|
|
assert.Assert(t, screen != nil)
|
|
assert.Assert(t, formatter != nil)
|
|
}
|