[shrinkwrap-issues] [JBoss JIRA] Commented: (SHRINKDESC-84) Node.get(Patterns) matches recursive down the whole tree
Bartosz Majsak (JIRA)
jira-events at lists.jboss.org
Mon Sep 5 10:20:26 EDT 2011
[ https://issues.jboss.org/browse/SHRINKDESC-84?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12626258#comment-12626258 ]
Bartosz Majsak commented on SHRINKDESC-84:
------------------------------------------
Thanks,
it's more or less what I implemented now as _absolute_ get query (matching given path starting from the root). This is used in {{Node.get(Patterns)}}. I will write some more tests and try to create pull requests this evening CET :)
For _relative_ implementation calling {code}Get(web-app,"servlet") > servlet {code} since I treat it in the same way as XPath version - "{{//servlet}}".
> Node.get(Patterns) matches recursive down the whole tree
> --------------------------------------------------------
>
> Key: SHRINKDESC-84
> URL: https://issues.jboss.org/browse/SHRINKDESC-84
> Project: ShrinkWrap Descriptors
> Issue Type: Bug
> Components: spi
> Affects Versions: 1.1.0-alpha-3
> Reporter: Aslak Knutsen
> Assignee: Bartosz Majsak
> Priority: Blocker
>
> Node.get should only try to match the first level.
> {code}
> @Test
> public void shouldNotMatchAChildsChildrenOnGet()
> {
> // /root/child1/child2
> Node root = new Node(ROOT_NAME)
> .createChild(CHILD_1_NAME)
> .createChild(CHILD_2_NAME).getRoot();
> Assert.assertNull(root.get(CHILD_2_NAME));
> }
>
> @Test
> public void shouldNotMatchAChildsChildrenOnGetSingle()
> {
> // /root/child1/child2
> Node root = new Node(ROOT_NAME)
> .createChild(CHILD_1_NAME)
> .createChild(CHILD_2_NAME).getRoot();
> Assert.assertNull(root.getSingle(CHILD_2_NAME));
> }
> @Test
> public void shouldNotMatchAChildsChildrenOnGetOrCreate()
> {
> // /root/child1/child2
> Node root = new Node(ROOT_NAME);
> Node child1 = root.createChild(CHILD_1_NAME);
> Node child2 = child1.createChild(CHILD_2_NAME);
> Node createdChild = root.getOrCreate(CHILD_2_NAME);
> Assert.assertNotSame(createdChild, child2);
> }
> @Test
> public void shouldNotMatchAChildsChildrenOnRemoveChild()
> {
> // /root/child1/child2
> Node root = new Node(ROOT_NAME)
> .createChild(CHILD_1_NAME)
> .createChild(CHILD_2_NAME).getRoot();
> Assert.assertNull(root.removeChild(CHILD_2_NAME));
> }
> @Test
> public void shouldNotMatchAChildsChildrenOnRemoveChildren()
> {
> // /root/child1/child2
> Node root = new Node(ROOT_NAME)
> .createChild(CHILD_1_NAME)
> .createChild(CHILD_2_NAME).getRoot();
> List<Node> removed = root.removeChildren(CHILD_2_NAME);
> Assert.assertNotNull(removed);
> Assert.assertEquals(0, removed.size());
> }
> {code}
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the shrinkwrap-issues
mailing list