View Javadoc
1   /*
2    * Copyright (c) MuleSoft, Inc.  All rights reserved.  http://www.mulesoft.com
3    * The software in this package is published under the terms of the CPAL v1.0
4    * license, a copy of which has been included with this distribution in the
5    * LICENSE.txt file.
6    */
7   package org.mule.config.spring.parsers;
8   
9   import org.mule.config.spring.parsers.beans.OrphanBean;
10  
11  import java.util.Collection;
12  
13  import org.junit.Test;
14  
15  import static org.junit.Assert.assertEquals;
16  
17  /**
18   * References to collections in attributes are currently not handled correctly
19   */
20  public class ReferenceCollectionTestCase extends AbstractNamespaceTestCase
21  {
22  
23      @Override
24      protected String getConfigResources()
25      {
26          return "org/mule/config/spring/parsers/reference-collection-test.xml";
27      }
28  
29      protected void testOffspringRef(int index, int size)
30      {
31          OrphanBean orphan = (OrphanBean) assertBeanExists("orphan" + index, OrphanBean.class);
32          Collection offspring = (Collection) assertContentExists(orphan.getOffspring(), Collection.class);
33          assertEquals(size, offspring.size());
34      }
35  
36      @Test
37      public void testNamed()
38      {
39          testOffspringRef(1, 2);
40      }
41  
42      @Test
43      public void testOrphan()
44      {
45          testOffspringRef(2, 1);
46      }
47  
48      @Test
49      public void testParent()
50      {
51          testOffspringRef(3, 3);
52      }
53  
54  }