Skip to content
代码片段 群组 项目
提交 bfe1c939 编辑于 作者: Terri Chu's avatar Terri Chu
浏览文件

Update covered? method to also check include?

上级 6ae97953
No related branches found
No related tags found
无相关合并请求
......@@ -229,7 +229,7 @@ trie = Namespaces::Traversal::TrieNode.build(traversal_ids)
trie.prefix_search([9970]) # returns [[9970, 123], [9970, 456]]
trie.covered?([9970]) # returns false
trie.covered?([9970, 123]) # returns false
trie.covered?([9970, 123]) # returns true
trie.covered?([9970, 123, 789]) # returns true
```
......
......@@ -46,10 +46,10 @@ def prefix_search(traversal_ids)
end
end
# Check if traversal ID is already covered by a broader prefix
# Check if traversal ID is already covered by a broader prefix or included in trie
# If trie contains [9970, 123] and [9970, 456]
# covered?([9970]) returns false
# covered?([9970, 123]) returns false
# covered?([9970, 123]) returns true
# covered?([9970, 123, 789]) returns true
def covered?(traversal_ids)
current_node = self
......@@ -64,8 +64,7 @@ def covered?(traversal_ids)
current_node = current_node.children[traversal_id]
end
# It's not covered by a broader permission
false
current_node.end
end
def to_a
......
......@@ -55,6 +55,10 @@
expect(trie.covered?([1, 2, 3])).to be true
end
it 'returns true for included traversal ID' do
expect(trie.covered?([1, 2])).to be true
end
it 'returns false for non-covered traversal ID' do
expect(trie.covered?([1, 3])).to be false
end
......
0% 加载中 .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册