...

Source file src/github.com/gobwas/glob/match/any_of_test.go

Documentation: github.com/gobwas/glob/match

     1  package match
     2  
     3  import (
     4  	"reflect"
     5  	"testing"
     6  )
     7  
     8  func TestAnyOfIndex(t *testing.T) {
     9  	for id, test := range []struct {
    10  		matchers Matchers
    11  		fixture  string
    12  		index    int
    13  		segments []int
    14  	}{
    15  		{
    16  			Matchers{
    17  				NewAny(nil),
    18  				NewText("b"),
    19  				NewText("c"),
    20  			},
    21  			"abc",
    22  			0,
    23  			[]int{0, 1, 2, 3},
    24  		},
    25  		{
    26  			Matchers{
    27  				NewPrefix("b"),
    28  				NewSuffix("c"),
    29  			},
    30  			"abc",
    31  			0,
    32  			[]int{3},
    33  		},
    34  		{
    35  			Matchers{
    36  				NewList([]rune("[def]"), false),
    37  				NewList([]rune("[abc]"), false),
    38  			},
    39  			"abcdef",
    40  			0,
    41  			[]int{1},
    42  		},
    43  	} {
    44  		everyOf := NewAnyOf(test.matchers...)
    45  		index, segments := everyOf.Index(test.fixture)
    46  		if index != test.index {
    47  			t.Errorf("#%d unexpected index: exp: %d, act: %d", id, test.index, index)
    48  		}
    49  		if !reflect.DeepEqual(segments, test.segments) {
    50  			t.Errorf("#%d unexpected segments: exp: %v, act: %v", id, test.segments, segments)
    51  		}
    52  	}
    53  }
    54  

View as plain text