File: range_test.go

package info (click to toggle)
elvish 0.21.0-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 6,372 kB
  • sloc: javascript: 236; sh: 130; python: 104; makefile: 88; xml: 9
file content (34 lines) | stat: -rw-r--r-- 595 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
package diag

import (
	"testing"

	"src.elv.sh/pkg/tt"
)

var Args = tt.Args

type aRanger struct {
	Ranging
}

func TestEmbeddingRangingImplementsRanger(t *testing.T) {
	r := Ranging{1, 10}
	s := Ranger(aRanger{Ranging{1, 10}})
	if s.Range() != r {
		t.Errorf("s.Range() = %v, want %v", s.Range(), r)
	}
}

func TestPointRanging(t *testing.T) {
	tt.Test(t, PointRanging,
		Args(1).Rets(Ranging{1, 1}),
	)
}

func TestMixedRanging(t *testing.T) {
	tt.Test(t, MixedRanging,
		Args(Ranging{1, 2}, Ranging{0, 4}).Rets(Ranging{1, 4}),
		Args(Ranging{0, 4}, Ranging{1, 2}).Rets(Ranging{0, 2}),
	)
}