@Test
 public void testNamesWithParentheses() {
   MyComponent a = new MyComponent(null, "a");
   MyComponent b = new MyComponent(a, "b()");
   MyComponent c = new MyComponent(b, "c#");
   namingStrategy.setTopLevelComponent(a, true);
   assertEquals("a", namingStrategy.getName(a));
   assertEquals("b#{#}", namingStrategy.getName(b));
   assertEquals("c##", namingStrategy.getName(c));
   assertSame(a, namingStrategy.getComponent("a", ComponentFinder.getRetryCount(), false));
   assertSame(b, namingStrategy.getComponent("b#{#}", ComponentFinder.getRetryCount(), false));
 }
 @Test
 public void testNamesWithProperties() {
   MyComponent parent = new MyComponent(null, "a");
   MyComponent comp1 = new MyComponent(parent, "component");
   namingStrategy.setTopLevelComponent(parent, true);
   Component component =
       namingStrategy.getComponent(
           "{name:component, parent.name:a}", ComponentFinder.getRetryCount(), false);
   assertNotNull(component);
   assertEquals(comp1, component);
 }