MCPcopy Index your code
hub / github.com/cheat/cheat / TestPager

Function TestPager

internal/config/pager_test.go:11–82  ·  view source on GitHub ↗

TestPager tests the Pager function

(t *testing.T)

Source from the content-addressed store, hash-verified

9
10// TestPager tests the Pager function
11func TestPager(t *testing.T) {
12 // Save original env var
13 oldPager := os.Getenv("PAGER")
14 defer os.Setenv("PAGER", oldPager)
15
16 t.Run("windows default", func(t *testing.T) {
17 if runtime.GOOS != "windows" {
18 t.Skip("skipping windows test on non-windows platform")
19 }
20
21 os.Setenv("PAGER", "")
22 pager := Pager()
23 if pager != "more" {
24 t.Errorf("expected 'more' on windows, got %s", pager)
25 }
26 })
27
28 t.Run("PAGER env var", func(t *testing.T) {
29 if runtime.GOOS == "windows" {
30 t.Skip("skipping non-windows test on windows platform")
31 }
32
33 os.Setenv("PAGER", "bat")
34 pager := Pager()
35 if pager != "bat" {
36 t.Errorf("expected PAGER env var value, got %s", pager)
37 }
38 })
39
40 t.Run("fallback to system pager", func(t *testing.T) {
41 if runtime.GOOS == "windows" {
42 t.Skip("skipping non-windows test on windows platform")
43 }
44
45 os.Setenv("PAGER", "")
46 pager := Pager()
47
48 if pager == "" {
49 return // no pager found is acceptable
50 }
51
52 // Should find one of the known fallback pagers
53 validPagers := map[string]bool{
54 "pager": true,
55 "less": true,
56 "more": true,
57 }
58
59 base := filepath.Base(pager)
60 if !validPagers[base] {
61 t.Errorf("unexpected pager value: %s (base: %s)", pager, base)
62 }
63 })
64
65 t.Run("no pager available", func(t *testing.T) {
66 if runtime.GOOS == "windows" {
67 t.Skip("skipping non-windows test on windows platform")
68 }

Callers

nothing calls this directly

Calls 1

PagerFunction · 0.85

Tested by

no test coverage detected