View Javadoc

1   /*
2    * $Id: FileAtomFeedConsumeTestCase.java 22401 2011-07-13 09:10:18Z dirk.olmes $
3    * -------------------------------------------------------------------------------------
4    * Copyright (c) MuleSoft, Inc.  All rights reserved.  http://www.mulesoft.com
5    *
6    * The software in this package is published under the terms of the CPAL v1.0
7    * license, a copy of which has been included with this distribution in the
8    * LICENSE.txt file.
9    */
10  package org.mule.module.atom;
11  
12  import org.mule.module.atom.event.EntryReceiver;
13  import org.mule.tck.junit4.FunctionalTestCase;
14  
15  import java.io.File;
16  import java.io.FileOutputStream;
17  
18  import org.junit.Test;
19  
20  import static org.junit.Assert.assertEquals;
21  
22  public class FileAtomFeedConsumeTestCase extends FunctionalTestCase
23  {
24  
25      @Override
26      protected String getConfigResources()
27      {
28          return "file-atom-consume.xml";
29      }
30  
31      @Test
32      public void testConsumeFeedEntries() throws Exception
33      {
34          FileOutputStream fos = new FileOutputStream(new File(muleContext.getConfiguration().getWorkingDirectory(), "sample-feed.atom"));
35          String feed = loadResourceAsString("sample-feed.atom");
36          fos.write(feed.getBytes("UTF-8"));
37          fos.close();
38  
39          //allow the file connector to poll a couple of times to ensure we only get the same 25 entries
40          Thread.sleep(5000);
41          EntryReceiver component = (EntryReceiver)getComponent("feedSplitterConsumer");
42          assertEquals(25, component.getCount());
43      }
44  
45  }