Search in sources :

Example 56 with Converter

use of org.mule.runtime.core.api.transformer.Converter in project mule by mulesoft.

the class TransformationGraphTestCase method removeFirstAddedConverterWithDifferentSourceToSameResultTypes.

@Test
public void removeFirstAddedConverterWithDifferentSourceToSameResultTypes() {
    Converter xmlToJson = new MockConverterBuilder().from(XML_DATA_TYPE).to(JSON_DATA_TYPE).build();
    Converter objectToJson = new MockConverterBuilder().from(INPUT_STREAM_DATA_TYPE).to(JSON_DATA_TYPE).build();
    TransformationGraph graph = new TransformationGraph();
    graph.addConverter(xmlToJson);
    graph.addConverter(objectToJson);
    graph.removeConverter(xmlToJson);
    assertEquals(2, graph.vertexSet().size());
    assertTrue(graph.containsVertex(JSON_DATA_TYPE));
    assertTrue(graph.containsVertex(INPUT_STREAM_DATA_TYPE));
    assertEquals(1, graph.edgeSet().size());
    assertFalse(graph.containsEdge(XML_DATA_TYPE, JSON_DATA_TYPE));
    assertFalse(graph.containsEdge(JSON_DATA_TYPE, XML_DATA_TYPE));
    assertTrue(graph.containsEdge(INPUT_STREAM_DATA_TYPE, JSON_DATA_TYPE));
    assertFalse(graph.containsEdge(JSON_DATA_TYPE, INPUT_STREAM_DATA_TYPE));
}
Also used : MockConverterBuilder(org.mule.runtime.core.internal.transformer.builder.MockConverterBuilder) Converter(org.mule.runtime.core.api.transformer.Converter) SmallTest(org.mule.tck.size.SmallTest) Test(org.junit.Test)

Example 57 with Converter

use of org.mule.runtime.core.api.transformer.Converter in project mule by mulesoft.

the class TransformationGraphTestCase method multipleConvertersFromDifferentSourceToSameResultTypes.

@Test
public void multipleConvertersFromDifferentSourceToSameResultTypes() {
    Converter xmlToJson = new MockConverterBuilder().from(XML_DATA_TYPE).to(JSON_DATA_TYPE).build();
    Converter objectToJson = new MockConverterBuilder().from(INPUT_STREAM_DATA_TYPE).to(JSON_DATA_TYPE).build();
    TransformationGraph graph = new TransformationGraph();
    graph.addConverter(xmlToJson);
    graph.addConverter(objectToJson);
    assertEquals(3, graph.vertexSet().size());
    assertTrue(graph.containsVertex(XML_DATA_TYPE));
    assertTrue(graph.containsVertex(JSON_DATA_TYPE));
    assertTrue(graph.containsVertex(INPUT_STREAM_DATA_TYPE));
    assertEquals(2, graph.edgeSet().size());
    assertTrue(graph.containsEdge(XML_DATA_TYPE, JSON_DATA_TYPE));
    assertFalse(graph.containsEdge(JSON_DATA_TYPE, XML_DATA_TYPE));
    assertTrue(graph.containsEdge(INPUT_STREAM_DATA_TYPE, JSON_DATA_TYPE));
    assertFalse(graph.containsEdge(JSON_DATA_TYPE, INPUT_STREAM_DATA_TYPE));
}
Also used : MockConverterBuilder(org.mule.runtime.core.internal.transformer.builder.MockConverterBuilder) Converter(org.mule.runtime.core.api.transformer.Converter) SmallTest(org.mule.tck.size.SmallTest) Test(org.junit.Test)

Example 58 with Converter

use of org.mule.runtime.core.api.transformer.Converter in project mule by mulesoft.

the class TransformationGraphTestCase method processesConverterRemoved.

@Test
public void processesConverterRemoved() {
    Converter xmlToJson = new MockConverterBuilder().from(XML_DATA_TYPE).to(JSON_DATA_TYPE).build();
    TransformationGraph graph = new TransformationGraph();
    graph.addConverter(xmlToJson);
    graph.removeConverter(xmlToJson);
    assertEquals(0, graph.vertexSet().size());
    assertEquals(0, graph.edgeSet().size());
}
Also used : MockConverterBuilder(org.mule.runtime.core.internal.transformer.builder.MockConverterBuilder) Converter(org.mule.runtime.core.api.transformer.Converter) SmallTest(org.mule.tck.size.SmallTest) Test(org.junit.Test)

Example 59 with Converter

use of org.mule.runtime.core.api.transformer.Converter in project mule by mulesoft.

the class TransformationGraphTestCase method removesFirstDuplicateConverterAdded.

@Test
public void removesFirstDuplicateConverterAdded() {
    Converter xmlToJson = new MockConverterBuilder().from(XML_DATA_TYPE).to(JSON_DATA_TYPE).build();
    Converter betterXmlToJson = new MockConverterBuilder().from(XML_DATA_TYPE).to(JSON_DATA_TYPE).build();
    TransformationGraph graph = new TransformationGraph();
    graph.addConverter(xmlToJson);
    graph.addConverter(betterXmlToJson);
    graph.removeConverter(xmlToJson);
    assertEquals(2, graph.vertexSet().size());
    assertTrue(graph.containsVertex(JSON_DATA_TYPE));
    assertTrue(graph.containsVertex(XML_DATA_TYPE));
    Set<TransformationEdge> transformationEdges = graph.edgesOf(JSON_DATA_TYPE);
    assertEquals(1, transformationEdges.size());
    assertContainsTransformer(transformationEdges, betterXmlToJson);
}
Also used : MockConverterBuilder(org.mule.runtime.core.internal.transformer.builder.MockConverterBuilder) Converter(org.mule.runtime.core.api.transformer.Converter) SmallTest(org.mule.tck.size.SmallTest) Test(org.junit.Test)

Example 60 with Converter

use of org.mule.runtime.core.api.transformer.Converter in project mule by mulesoft.

the class TransformationGraphTestCase method multipleConvertersFromSameSourceToResultTypes.

@Test
public void multipleConvertersFromSameSourceToResultTypes() {
    Converter xmlToJson = new MockConverterBuilder().from(XML_DATA_TYPE).to(JSON_DATA_TYPE).build();
    Converter betterXmlToJson = new MockConverterBuilder().from(XML_DATA_TYPE).to(JSON_DATA_TYPE).build();
    TransformationGraph graph = new TransformationGraph();
    graph.addConverter(xmlToJson);
    graph.addConverter(betterXmlToJson);
    assertEquals(2, graph.vertexSet().size());
    assertTrue(graph.containsVertex(XML_DATA_TYPE));
    assertTrue(graph.containsVertex(JSON_DATA_TYPE));
    assertEquals(2, graph.edgeSet().size());
    assertTrue(graph.containsEdge(XML_DATA_TYPE, JSON_DATA_TYPE));
    assertFalse(graph.containsEdge(JSON_DATA_TYPE, XML_DATA_TYPE));
    assertContainsTransformer(graph.edgesOf(JSON_DATA_TYPE), xmlToJson);
    assertContainsTransformer(graph.edgesOf(JSON_DATA_TYPE), betterXmlToJson);
}
Also used : MockConverterBuilder(org.mule.runtime.core.internal.transformer.builder.MockConverterBuilder) Converter(org.mule.runtime.core.api.transformer.Converter) SmallTest(org.mule.tck.size.SmallTest) Test(org.junit.Test)

Aggregations

Converter (org.mule.runtime.core.api.transformer.Converter)69 Test (org.junit.Test)56 SmallTest (org.mule.tck.size.SmallTest)55 MockConverterBuilder (org.mule.runtime.core.internal.transformer.builder.MockConverterBuilder)48 CompositeConverter (org.mule.runtime.core.privileged.transformer.CompositeConverter)26 ArrayList (java.util.ArrayList)16 Transformer (org.mule.runtime.core.api.transformer.Transformer)12 List (java.util.List)5 DataType (org.mule.runtime.api.metadata.DataType)5 LinkedList (java.util.LinkedList)3 HashSet (java.util.HashSet)2 Lock (java.util.concurrent.locks.Lock)2 ReadWriteLock (java.util.concurrent.locks.ReadWriteLock)2 ReentrantReadWriteLock (java.util.concurrent.locks.ReentrantReadWriteLock)2 TransformerWeighting (org.mule.runtime.core.internal.registry.TransformerWeighting)2 MockTransformerBuilder (org.mule.runtime.core.internal.transformer.builder.MockTransformerBuilder)2 ImmutableList (com.google.common.collect.ImmutableList)1 Charset (java.nio.charset.Charset)1 CopyOnWriteArrayList (java.util.concurrent.CopyOnWriteArrayList)1 MessageTransformer (org.mule.runtime.core.api.transformer.MessageTransformer)1