use of org.mule.tck.testmodels.fruit.Apple in project mule by mulesoft.
the class ClassUtilsTestCase method testInstanciateClass.
@Test
public void testInstanciateClass() throws Exception {
Object object = ClassUtils.instantiateClass("org.mule.tck.testmodels.fruit.Orange");
assertNotNull(object);
assertTrue(object instanceof Orange);
object = ClassUtils.instantiateClass("org.mule.tck.testmodels.fruit.FruitBowl", new Apple(), new Banana());
assertNotNull(object);
assertTrue(object instanceof FruitBowl);
FruitBowl bowl = (FruitBowl) object;
assertTrue(bowl.hasApple());
assertTrue(bowl.hasBanana());
try {
ClassUtils.instantiateClass("java.lang.Bing");
fail("Class does not exist, ClassNotFoundException should have been thrown");
} catch (ClassNotFoundException e) {
// expected
}
}
use of org.mule.tck.testmodels.fruit.Apple in project mule by mulesoft.
the class ImmutableMapCollectorTestCase method collect.
@Test
public void collect() {
final List<Fruit> fruits = Arrays.asList(new Apple(), new Banana(), new Kiwi());
Map<String, Fruit> map = fruits.stream().collect(collector);
assertThat(map.size(), is(3));
fruits.forEach(fruit -> {
Fruit value = map.get(fruit.getClass().getName());
assertThat(value, sameInstance(fruit));
});
}
use of org.mule.tck.testmodels.fruit.Apple in project mule by mulesoft.
the class AbstractForkJoinStrategyTestCase method flowVarsMerged.
@Test
@Description("After successful completion of all routes the variables from each route are merged into the result.")
public void flowVarsMerged() throws Throwable {
final String beforeVarName = "before";
final String beforeVarValue = "beforeValue";
final String beforeVar2Name = "before2";
final String beforeVar2Value = "before2Value";
final String beforeVar2NewValue = "before2NewValue";
final String fooVarName = "foo";
final String fooVarValue = "fooValue1";
final String fooVar2Name = "foo2";
final String fooVar2Value1 = "foo2Value1";
final String fooVar2Value2 = "foo2Value2";
final String fooVar3Name = "foo3";
final String fooVar3Value1 = "foo3Value1";
final Apple fooVar3Value2 = new Apple();
CoreEvent original = builder(this.<CoreEvent>newEvent()).addVariable(beforeVarName, beforeVarValue).addVariable(beforeVar2Name, beforeVar2Value).build();
RoutingPair pair1 = of(original, createChain(event -> builder(event).addVariable(beforeVar2Name, beforeVar2NewValue).addVariable(fooVarName, fooVarValue).addVariable(fooVar2Name, fooVar2Value1).addVariable(fooVar3Name, fooVar3Value1).build()));
RoutingPair pair2 = of(original, createChain(event -> builder(event).addVariable(fooVar2Name, fooVar2Value2).addVariable(fooVar3Name, fooVar3Value2).build()));
CoreEvent result = invokeStrategyBlocking(strategy, original, asList(pair1, pair2));
assertThat(result.getVariables().keySet(), hasSize(5));
assertThat(result.getVariables().keySet(), hasItems(beforeVarName, beforeVar2Name, fooVarName, fooVarName, fooVar2Name, fooVar3Name));
assertThat(result.getVariables().get(beforeVarName).getValue(), equalTo(beforeVarValue));
assertThat(result.getVariables().get(beforeVar2Name).getValue(), equalTo(beforeVar2NewValue));
assertThat(result.getVariables().get(fooVarName).getValue(), equalTo(fooVarValue));
TypedValue fooVar2 = result.getVariables().get(fooVar2Name);
assertThat(fooVar2.getDataType(), equalTo(DataType.builder().collectionType(List.class).itemType(String.class).build()));
assertThat(((List<String>) fooVar2.getValue()), hasItems(fooVar2Value1, fooVar2Value2));
TypedValue fooVar3 = result.getVariables().get(fooVar3Name);
assertThat(fooVar3.getDataType(), equalTo(DataType.builder().collectionType(List.class).itemType(Object.class).build()));
assertThat(((List<Object>) fooVar3.getValue()), hasItems(fooVar3Value1, fooVar3Value2));
}
use of org.mule.tck.testmodels.fruit.Apple in project mule by mulesoft.
the class AbstractSplitterTestCase method simpleSplitter.
@Test
public void simpleSplitter() throws Exception {
TestSplitter splitter = new TestSplitter(false);
MultipleEventSensingMessageProcessor listener = new MultipleEventSensingMessageProcessor();
splitter.setListener(listener);
splitter.setMuleContext(muleContext);
Apple apple = new Apple();
Banana banana = new Banana();
Orange orange = new Orange();
FruitBowl fruitBowl = new FruitBowl();
fruitBowl.addFruit(apple);
fruitBowl.addFruit(banana);
fruitBowl.addFruit(orange);
final CoreEvent inEvent = eventBuilder(muleContext).message(of(fruitBowl)).build();
CoreEvent resultEvent = splitter.process(inEvent);
assertThat(listener.events, hasSize(3));
assertThat(listener.events.get(0).getMessage().getPayload().getValue(), instanceOf(Fruit.class));
assertThat(listener.events.get(1).getMessage().getPayload().getValue(), instanceOf(Fruit.class));
assertThat(listener.events.get(2).getMessage().getPayload().getValue(), instanceOf(Fruit.class));
assertThat(resultEvent.getMessage().getPayload().getValue(), instanceOf(List.class));
assertThat(((List<InternalMessage>) resultEvent.getMessage().getPayload().getValue()), hasSize(3));
assertThat(((List<InternalMessage>) resultEvent.getMessage().getPayload().getValue()).get(0).getPayload().getValue(), instanceOf(Fruit.class));
assertThat(((List<InternalMessage>) resultEvent.getMessage().getPayload().getValue()).get(1).getPayload().getValue(), instanceOf(Fruit.class));
assertThat(((List<InternalMessage>) resultEvent.getMessage().getPayload().getValue()).get(2).getPayload().getValue(), instanceOf(Fruit.class));
}
use of org.mule.tck.testmodels.fruit.Apple in project mule by mulesoft.
the class ObjectToInputStreamTestCase method testTransformSerializable.
@Test
public void testTransformSerializable() {
Apple apple = new Apple();
InputStream serializedApple = new ByteArrayInputStream(muleContext.getObjectSerializer().getExternalProtocol().serialize(apple));
try {
assertTrue(compare(serializedApple, (InputStream) transformer.transform(apple)));
} catch (Exception e) {
assertTrue(e instanceof TransformerException);
assertTrue(e.getMessage().contains("does not support source type"));
}
}
Aggregations