github.com/kolbycrouch/elvish@v0.14.1-0.20210614162631-215b9ac1c423/pkg/diag/range_test.go (about) 1 package diag 2 3 import ( 4 "testing" 5 6 "src.elv.sh/pkg/tt" 7 ) 8 9 var Args = tt.Args 10 11 type aRanger struct { 12 Ranging 13 } 14 15 func TestEmbeddingRangingImplementsRanger(t *testing.T) { 16 r := Ranging{1, 10} 17 s := Ranger(aRanger{Ranging{1, 10}}) 18 if s.Range() != r { 19 t.Errorf("s.Range() = %v, want %v", s.Range(), r) 20 } 21 } 22 23 func TestPointRanging(t *testing.T) { 24 tt.Test(t, tt.Fn("PointRanging", PointRanging), tt.Table{ 25 Args(1).Rets(Ranging{1, 1}), 26 }) 27 } 28 29 func TestMixedRanging(t *testing.T) { 30 tt.Test(t, tt.Fn("MixedRanging", MixedRanging), tt.Table{ 31 Args(Ranging{1, 2}, Ranging{0, 4}).Rets(Ranging{1, 4}), 32 Args(Ranging{0, 4}, Ranging{1, 2}).Rets(Ranging{0, 2}), 33 }) 34 }