+++ /dev/null
-/*
- * Copyright 2005-2011 the original author or authors.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.wamblee.xmlrouter.impl;
-
-import static junit.framework.Assert.*;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.List;
-
-import javax.xml.transform.dom.DOMSource;
-
-import org.junit.Test;
-import org.wamblee.xmlrouter.common.Id;
-import org.wamblee.xmlrouter.config.Transformation;
-
-public class TransformationPathsTest {
-
- public static class MyTransformation implements Transformation {
-
- private String from;
- private String to;
-
- public MyTransformation(String aFrom, String aTo) {
- from = aFrom;
- to = aTo;
- }
-
- @Override
- public Id<Transformation> getId() {
- return new Id<Transformation>("myname");
- }
-
- @Override
- public String getFromType() {
- return from;
- }
-
- @Override
- public String getToType() {
- return to;
- }
-
- @Override
- public DOMSource transform(DOMSource aDocument) {
- return null;
- }
-
- @Override
- public String toString() {
- return from + "->" + to;
- }
- }
-
- private TransformationPaths transformations;
-
- private List<Transformation> createTransformations(long aStartId,
- Transformation... aTransformations) {
- List<Transformation> res = new ArrayList<Transformation>();
-
- for (Transformation t : aTransformations) {
- res.add(t);
- }
- return res;
- }
-
- @Test
- public void testOneTransformation() {
- transformations = new TransformationPaths(createTransformations(10L,
- new MyTransformation("A", "B")));
-
- System.out.println(transformations.toString());
- TransformationPath path = transformations.getPath("A", "B");
- assertEquals(1, path.size());
- assertNull(transformations.getPath("B", "A"));
-
- assertEquals(0, transformations.getPath("A", "A").size());
- assertEquals(0, transformations.getPath("B", "B").size());
-
- Collection<String> possibleTargets = transformations
- .getPossibleTargetTypes("A");
- assertEquals(2, possibleTargets.size());
- assertTrue(possibleTargets.contains("A"));
- assertTrue(possibleTargets.contains("B"));
- }
-
- @Test
- public void testMultipleTransformations() {
- transformations = new TransformationPaths(createTransformations(10L,
- new MyTransformation("A", "B"), new MyTransformation("B", "C"),
- new MyTransformation("C", "A")));
-
- System.out.println(transformations);
- assertEquals(2, transformations.getPath("C", "B").size());
-
- transformations = new TransformationPaths(createTransformations(10L,
- new MyTransformation("B", "C"), new MyTransformation("C", "A")));
-
- assertNull(transformations.getPath("C", "B"));
- }
-
- @Test
- public void testUnknownDestination() {
- transformations = new TransformationPaths(createTransformations(10L,
- new MyTransformation("A", "B")));
- assertNull(transformations.getPath("A", "D"));
- }
-
- @Test
- public void testWithoutTransformations() {
- transformations = new TransformationPaths(
- new ArrayList<Transformation>());
- Collection<String> res = transformations.getPossibleTargetTypes("a");
- assertEquals(1, res.size());
-
- TransformationPath path = transformations.getPath("A", "A");
- assertNotNull(path);
- assertEquals(0, path.size());
-
- assertNull(transformations.getPath("B", "C"));
- }
-}