// Path: src/test/java/org/sherlok/SherlokPipelineTest.java
// public class SherlokPipelineTest {
//     protected static final Logger LOG = getLogger(SherlokPipelineTest.class);
// 
//     public static void testPipeline(String pipelineId) throws Exception {
// 
//         // skip this test if "skipSlowTests" is set to true
//         //FIXME trying assumeFalse("true".equals(System.getProperty("skipSlowTests")));
// 
//         Controller controller = new Controller().load();
//         PipelineDef pipelineDef = controller.getPipelineDef(pipelineId);
//         LOG.debug("testing {}", pipelineDef);
// 
//         boolean hasExpectations = false;
//         for (PipelineTest t : pipelineDef.getTests()) {
//             if (!t.getExpected().isEmpty()) {
//                 hasExpectations = true;
//                 break;
//             }
//         }
// 
//         if (hasExpectations) {
// 
//             PipelineLoader pipelineLoader = new PipelineLoader(controller);
//             UimaPipeline p = pipelineLoader.resolvePipeline(
//                     pipelineDef.getName(), pipelineDef.getVersion());
// 
//             for (PipelineTest test : p.getPipelineDef().getTests()) {
// 
//                 if (test.getExpected() != null
//                         && !test.getExpected().toString().isEmpty()) {
//                     String systemOut = p.annotate(test.getInput());
//                     SherlokTests.assertEquals(test.getExpected(), systemOut,
//                             test.getComparison());
//                 } else {
//                     LOG.debug("  no output for {}", test.getInput());
//                 }
//             }
// 
//             LOG.debug("+++passed                                      ");
// 
//         } else {
//             LOG.debug("---no tests                                      ");
//         }
//     }
// 
//     // util to propose tests for pipline that have none
//     @Test
//     @Ignore
//     public void testFillinPipelineTests() throws Exception {
// 
//         PipelineLoader pipelineLoader = new PipelineLoader(
//                 new Controller().load());
// 
//         for (PipelineDef pipelineDef : allPipelineDefs()) {
//             LOG.debug("testing {}", pipelineDef);
// 
//             UimaPipeline pipeline = pipelineLoader.resolvePipeline(
//                     pipelineDef.getName(), pipelineDef.getVersion());
// 
//             for (PipelineTest test : pipeline.getPipelineDef().getTests()) {
// 
//                 if (test.getExpected() == null
//                         || test.getExpected().toString().isEmpty()) {
//                     String systemOut = pipeline.annotate(test.getInput());
// 
//                     LOG.debug("TEST: {}\nPROPOSED: {}", pipelineDef + "::"
//                             + test.getInput(), systemOut);
//                 }
//             }
//         }
//     }
// 
//     @Test
//     @Ignore
//     public void testAnnotateDogs() throws Exception {
//         testPipeline("01.ruta.annotate.dog:1");
//     }
// 
//     // generates
//     public static void main(String[] args) throws Exception {
// 
//         for (String p : new Controller().load().listPipelineDefNames()) {
// 
//             String className = "Pipeline_" + p.replaceAll("[^a-zA-Z0-9]", "_")
//                     + "Test";
//             LOG.info("generating test classes for pipeline " + p
//                     + " with name " + className);
// 
//             File testFile = new File("src/test/java/org/sherlok/pipelinetests/"
//                     + className + ".java");
//             if (!testFile.exists()) {
// 
//                 // Freemarker configuration object
//                 Configuration cfg = new Configuration();
//                 cfg.setClassForTemplateLoading(MavenPom.class, "/");
// 
//                 Template template = cfg.getTemplate("sherlokPipelineTest.ftl");
// 
//                 // Bind variables
//                 Map<String, Object> data = new HashMap<String, Object>();
// 
//                 data.put("className", className);
//                 data.put("pipelineId", p);
// 
//                 Writer writer = new FileWriter(testFile);
//                 template.process(data, writer);
//                 writer.close();
//                 LOG.info("new testfile written to '{}'", testFile.getName());
//             }
//         }
//     }
// }


import org.junit.Test;
import org.sherlok.SherlokPipelineTest;
package org.sherlok.pipelinetests;


/**
 * Test for pipeline bluima.sentence:1.0.1. 
 *  Generated automatically by SherlokPipelineTest.main
 */
public class Pipeline_bluima_sentence_1_0_1Test {

    @Test
// Path: src/test/java/org/sherlok/SherlokPipelineTest.java
// public class SherlokPipelineTest {
//     protected static final Logger LOG = getLogger(SherlokPipelineTest.class);
// 
//     public static void testPipeline(String pipelineId) throws Exception {
// 
//         // skip this test if "skipSlowTests" is set to true
//         //FIXME trying assumeFalse("true".equals(System.getProperty("skipSlowTests")));
// 
//         Controller controller = new Controller().load();
//         PipelineDef pipelineDef = controller.getPipelineDef(pipelineId);
//         LOG.debug("testing {}", pipelineDef);
// 
//         boolean hasExpectations = false;
//         for (PipelineTest t : pipelineDef.getTests()) {
//             if (!t.getExpected().isEmpty()) {
//                 hasExpectations = true;
//                 break;
//             }
//         }
// 
//         if (hasExpectations) {
// 
//             PipelineLoader pipelineLoader = new PipelineLoader(controller);
//             UimaPipeline p = pipelineLoader.resolvePipeline(
//                     pipelineDef.getName(), pipelineDef.getVersion());
// 
//             for (PipelineTest test : p.getPipelineDef().getTests()) {
// 
//                 if (test.getExpected() != null
//                         && !test.getExpected().toString().isEmpty()) {
//                     String systemOut = p.annotate(test.getInput());
//                     SherlokTests.assertEquals(test.getExpected(), systemOut,
//                             test.getComparison());
//                 } else {
//                     LOG.debug("  no output for {}", test.getInput());
//                 }
//             }
// 
//             LOG.debug("+++passed                                      ");
// 
//         } else {
//             LOG.debug("---no tests                                      ");
//         }
//     }
// 
//     // util to propose tests for pipline that have none
//     @Test
//     @Ignore
//     public void testFillinPipelineTests() throws Exception {
// 
//         PipelineLoader pipelineLoader = new PipelineLoader(
//                 new Controller().load());
// 
//         for (PipelineDef pipelineDef : allPipelineDefs()) {
//             LOG.debug("testing {}", pipelineDef);
// 
//             UimaPipeline pipeline = pipelineLoader.resolvePipeline(
//                     pipelineDef.getName(), pipelineDef.getVersion());
// 
//             for (PipelineTest test : pipeline.getPipelineDef().getTests()) {
// 
//                 if (test.getExpected() == null
//                         || test.getExpected().toString().isEmpty()) {
//                     String systemOut = pipeline.annotate(test.getInput());
// 
//                     LOG.debug("TEST: {}\nPROPOSED: {}", pipelineDef + "::"
//                             + test.getInput(), systemOut);
//                 }
//             }
//         }
//     }
// 
//     @Test
//     @Ignore
//     public void testAnnotateDogs() throws Exception {
//         testPipeline("01.ruta.annotate.dog:1");
//     }
// 
//     // generates
//     public static void main(String[] args) throws Exception {
// 
//         for (String p : new Controller().load().listPipelineDefNames()) {
// 
//             String className = "Pipeline_" + p.replaceAll("[^a-zA-Z0-9]", "_")
//                     + "Test";
//             LOG.info("generating test classes for pipeline " + p
//                     + " with name " + className);
// 
//             File testFile = new File("src/test/java/org/sherlok/pipelinetests/"
//                     + className + ".java");
//             if (!testFile.exists()) {
// 
//                 // Freemarker configuration object
//                 Configuration cfg = new Configuration();
//                 cfg.setClassForTemplateLoading(MavenPom.class, "/");
// 
//                 Template template = cfg.getTemplate("sherlokPipelineTest.ftl");
// 
//                 // Bind variables
//                 Map<String, Object> data = new HashMap<String, Object>();
// 
//                 data.put("className", className);
//                 data.put("pipelineId", p);
// 
//                 Writer writer = new FileWriter(testFile);
//                 template.process(data, writer);
//                 writer.close();
//                 LOG.info("new testfile written to '{}'", testFile.getName());
//             }
//         }
//     }
// }


// Path: src/test/java/org/sherlok/pipelinetests/Pipeline_bluima_sentence_1_0_1Test.java
import org.junit.Test;
import org.sherlok.SherlokPipelineTest;

package org.sherlok.pipelinetests;


/**
 * Test for pipeline bluima.sentence:1.0.1. 
 *  Generated automatically by SherlokPipelineTest.main
 */
public class Pipeline_bluima_sentence_1_0_1Test {

    @Test
    public void test() throws Exception {