github.com/ghodss/etcd@v0.3.1-0.20140417172404-cc329bfa55cb/store/watcher_hub_test.go (about)

     1  package store
     2  
     3  import (
     4  	"testing"
     5  )
     6  
     7  // TestIsHidden tests isHidden functions.
     8  func TestIsHidden(t *testing.T) {
     9  	// watch at "/"
    10  	// key is "/_foo", hidden to "/"
    11  	// expected: hidden = true
    12  	watch := "/"
    13  	key := "/_foo"
    14  	hidden := isHidden(watch, key)
    15  	if !hidden {
    16  		t.Fatalf("%v should be hidden to %v\n", key, watch)
    17  	}
    18  
    19  	// watch at "/_foo"
    20  	// key is "/_foo", not hidden to "/_foo"
    21  	// expected: hidden = false
    22  	watch = "/_foo"
    23  	hidden = isHidden(watch, key)
    24  	if hidden {
    25  		t.Fatalf("%v should not be hidden to %v\n", key, watch)
    26  	}
    27  
    28  	// watch at "/_foo/"
    29  	// key is "/_foo/foo", not hidden to "/_foo"
    30  	key = "/_foo/foo"
    31  	hidden = isHidden(watch, key)
    32  	if hidden {
    33  		t.Fatalf("%v should not be hidden to %v\n", key, watch)
    34  	}
    35  
    36  	// watch at "/_foo/"
    37  	// key is "/_foo/_foo", hidden to "/_foo"
    38  	key = "/_foo/_foo"
    39  	hidden = isHidden(watch, key)
    40  	if !hidden {
    41  		t.Fatalf("%v should be hidden to %v\n", key, watch)
    42  	}
    43  
    44  	// watch at "/_foo/foo"
    45  	// key is "/_foo"
    46  	watch = "_foo/foo"
    47  	key = "/_foo/"
    48  	hidden = isHidden(watch, key)
    49  	if hidden {
    50  		t.Fatalf("%v should not be hidden to %v\n", key, watch)
    51  	}
    52  }