@@ -36,17 +36,33 @@ func TestJoinKeySegments(t *testing.T) {
3636 segments []string
3737 expected string
3838 }{
39- {segments : []string {"EVM " , "TX " , "my-key" }, expected : "EVM/TX /my-key" },
40- {segments : []string {"EVM " , "/TX " , "my-key" }, expected : "EVM/TX /my-key" },
41- {segments : []string {"EVM " , "TX /" , "my-key" }, expected : "EVM/TX /my-key" },
42- {segments : []string {"EVM " , "TX " , "/my-key" }, expected : "EVM/TX /my-key" },
43- {segments : []string {"EVM " , "TX " , "my-key" , "" }, expected : "EVM/TX /my-key" },
44- {segments : []string {"EVM " , "TX " , "my-key" , "/" }, expected : "EVM/TX /my-key" },
45- {segments : []string {"EVM " , "TX " , "my-key" , "//" }, expected : "EVM/TX /my-key" },
46- {segments : []string {"EVM " , "TX " , "my-key" , "///" }, expected : "EVM/TX /my-key" },
47- {segments : []string {"EVM " , "TX " , "my-key" , "////" }, expected : "EVM/TX /my-key" },
39+ {segments : []string {"evm " , "tx " , "my-key" }, expected : "evm/tx /my-key" },
40+ {segments : []string {"evm " , "/tx " , "my-key" }, expected : "evm/tx /my-key" },
41+ {segments : []string {"evm " , "tx /" , "my-key" }, expected : "evm/tx /my-key" },
42+ {segments : []string {"evm " , "tx " , "/my-key" }, expected : "evm/tx /my-key" },
43+ {segments : []string {"evm " , "tx " , "my-key" , "" }, expected : "evm/tx /my-key" },
44+ {segments : []string {"evm " , "tx " , "my-key" , "/" }, expected : "evm/tx /my-key" },
45+ {segments : []string {"evm " , "tx " , "my-key" , "//" }, expected : "evm/tx /my-key" },
46+ {segments : []string {"evm " , "tx " , "my-key" , "///" }, expected : "evm/tx /my-key" },
47+ {segments : []string {"evm " , "tx " , "my-key" , "////" }, expected : "evm/tx /my-key" },
4848 }
4949 for _ , tt := range tests {
5050 require .Equal (t , tt .expected , joinKeySegments (tt .segments ... ))
5151 }
5252}
53+
54+ func TestKeyPathHasPrefix (t * testing.T ) {
55+ tests := []struct {
56+ path KeyPath
57+ prefix KeyPath
58+ expected bool
59+ }{
60+ {path : KeyPath {"evm" , "tx" , "my-key" }, prefix : KeyPath {"evm" , "tx" }, expected : true },
61+ {path : KeyPath {"evm" , "tx" , "my-key" }, prefix : KeyPath {"evm" }, expected : true },
62+ {path : KeyPath {"evm" , "tx" , "my-key" }, prefix : KeyPath {"evm" , "tx" , "my-key" }, expected : true },
63+ {path : KeyPath {"evm" , "tx" , "my-key" }, prefix : KeyPath {"evm" , "tx" , "my-key" , "extra" }, expected : false },
64+ }
65+ for _ , tt := range tests {
66+ require .Equal (t , tt .expected , tt .path .HasPrefix (tt .prefix ))
67+ }
68+ }
0 commit comments