Example usage for org.apache.commons.io FileUtils contentEquals

List of usage examples for org.apache.commons.io FileUtils contentEquals

Introduction

In this page you can find the example usage for org.apache.commons.io FileUtils contentEquals.

Prototype

public static boolean contentEquals(File file1, File file2) throws IOException 

Source Link

Document

Compares the contents of two files to determine if they are equal or not.

Usage

From source file:org.activiti.crystalball.diagram.ProcessDiagramGeneratorTest.java

public void testOneNodeHighlight() throws IOException {
    String id = FINANCIALREPORT_PROCESS_KEY;
    DiagramLayerGenerator generator = new HighlightNodeDiagramLayer((RepositoryServiceImpl) repositoryService);
    Map<String, Object> params = new HashMap<String, Object>();
    params.put(HighlightNodeDiagramLayer.PROCESS_DEFINITION_ID, id);
    List<String> highlightedActivities = new ArrayList<String>();
    highlightedActivities.add("writeReportTask");
    params.put(HighlightNodeDiagramLayer.HIGHLIGHTED_ACTIVITIES, highlightedActivities);

    File expectedFile = new File(
            "src/test/resources/org/activiti/crystalball/diagram/HighlightNodeDiagramLayer.testOneNodeHighlight.png");
    File generatedFile = new File("target/HighlightNodeDiagramLayer.testOneNodeHighlight.png");
    ImageIO.write(ImageIO.read(generator.generateLayer("png", params)), "png", generatedFile);
    assertTrue(FileUtils.contentEquals(expectedFile, generatedFile));
}

From source file:org.activiti.crystalball.diagram.ProcessDiagramGeneratorTest.java

public void testOneNodeHighlightSVG() throws IOException {
    String id = FINANCIALREPORT_PROCESS_KEY;
    DiagramLayerGenerator generator = new HighlightNodeDiagramLayer((RepositoryServiceImpl) repositoryService,
            null, new SVGCanvasFactory());
    Map<String, Object> params = new HashMap<String, Object>();
    params.put(HighlightNodeDiagramLayer.PROCESS_DEFINITION_ID, id);
    List<String> highlightedActivities = new ArrayList<String>();
    highlightedActivities.add("writeReportTask");
    params.put(HighlightNodeDiagramLayer.HIGHLIGHTED_ACTIVITIES, highlightedActivities);

    File expectedFile = new File(
            "src/test/resources/org/activiti/crystalball/diagram/HighlightNodeDiagramLayer.testOneNodeHighlight.svg");
    File generatedFile = new File("target/HighlightNodeDiagramLayer.testOneNodeHighlight.svg");
    FileUtils.copyInputStreamToFile(generator.generateLayer("svg", params), generatedFile);
    assertTrue(FileUtils.contentEquals(expectedFile, generatedFile));
}

From source file:org.activiti.crystalball.diagram.ProcessDiagramGeneratorTest.java

public void testMergeLayers() throws IOException {
    DiagramLayerGenerator generator = new MergeLayersGenerator();
    Map<String, Object> params = new HashMap<String, Object>();
    params.put("img1", getBytes(
            "src/test/resources/org/activiti/crystalball/diagram/MergeLayerGenerator.testMergeLayers1.png"));
    params.put("img2", getBytes(
            "src/test/resources/org/activiti/crystalball/diagram/MergeLayerGenerator.testMergeLayers2.png"));

    File expectedFile = new File(
            "src/test/resources/org/activiti/crystalball/diagram/MergeLayerGenerator.testMergeLayers.png");
    File generatedFile = new File("target/MergeLayerGenerator.testMergeLayers.png");
    ImageIO.write(ImageIO.read(generator.generateLayer("png", params)), "png", generatedFile);
    assertTrue(FileUtils.contentEquals(expectedFile, generatedFile));
}

From source file:org.activiti.crystalball.diagram.ProcessDiagramGeneratorTest.java

@Ignore("Generator provides platform dependent images (fonts) see http://forums.activiti.org/en/viewtopic.php?f=6109t=4647&start=0")
public void testOneNodeCount() throws IOException {
    String id = FINANCIALREPORT_PROCESS_KEY;
    DiagramLayerGenerator generator = new WriteNodeDescriptionDiagramLayer(
            (RepositoryServiceImpl) repositoryService);
    Map<String, Object> params = new HashMap<String, Object>();
    params.put(WriteNodeDescriptionDiagramLayer.PROCESS_DEFINITION_ID, id);
    params.put("writeReportTask", 5);

    File expectedFile = new File(
            "src/test/resources/org/activiti/crystalball/diagram/WriteCountLayerGeneratorTest.oneNumber.png");
    File generatedFile = new File("target/WriteCountLayerGeneratorTest.oneNumber.png");
    ImageIO.write(ImageIO.read(generator.generateLayer("png", params)), "png", generatedFile);
    assertTrue(FileUtils.contentEquals(expectedFile, generatedFile));
}

From source file:org.activiti.crystalball.diagram.ProcessDiagramGeneratorTest.java

public void testOneNodeCountSVG() throws IOException {
    String id = FINANCIALREPORT_PROCESS_KEY;
    DiagramLayerGenerator generator = new WriteNodeDescriptionDiagramLayer(
            (RepositoryServiceImpl) repositoryService, new SVGCanvasFactory());
    Map<String, Object> params = new HashMap<String, Object>();
    params.put(WriteNodeDescriptionDiagramLayer.PROCESS_DEFINITION_ID, id);
    params.put("writeReportTask", 5);

    File expectedFile = new File(
            "src/test/resources/org/activiti/crystalball/diagram/WriteCountLayerGeneratorTest.oneNumber.svg");
    File generatedFile = new File("target/WriteCountLayerGeneratorTest.oneNumber.svg");
    FileUtils.copyInputStreamToFile(generator.generateLayer("svg", params), generatedFile);
    assertTrue(FileUtils.contentEquals(expectedFile, generatedFile));
}

From source file:org.activiti.crystalball.generator.ProcessInstancesGeneratorTest.java

/**
 * Generate ProcessInstances reports for started ThreeTask process. <br/>
 * The first report should have <a href="https://raw.github.com/gro-mar/activiti/crystalball/master/simulator/src/test/resources/org/activiti/crystalball/generator/ProcessInstanceMonitor-1.png">4 tasks on the first node<a>.<br/>
 * 3 tasks are completed - <a href="https://raw.github.com/gro-mar/activiti/crystalball/master/simulator/src/test/resources/org/activiti/crystalball/generator/ProcessInstanceMonitor-2.png">1 task on the first node  3 tasks on the second.<a><br/>
 * 3 tasks from the 2nd node are completed - <a href="https://raw.github.com/gro-mar/activiti/crystalball/master/simulator/src/test/resources/org/activiti/crystalball/generator/ProcessInstanceMonitor-3.png">1 task on the first node  3 tasks on the 3rd<a>.<br/>
 * 3 tasks from the 3rd node are completed - <a href="https://raw.github.com/gro-mar/activiti/crystalball/master/simulator/src/test/resources/org/activiti/crystalball/generator/ProcessInstanceMonitor-4.png">1 task on the first node remains<a>
 * @throws IOException// w  ww  . j a v  a  2  s  .co m
 */
public void testGenerateProcessDefinition() throws IOException {

    ProcessInstancesGenerator monitor = new ProcessInstancesGenerator();
    monitor.setRepositoryService(repositoryService);
    monitor.setRuntimeService(runtimeService);
    List<ColorInterval> highlightColorIntervalList = new ArrayList<ColorInterval>();
    highlightColorIntervalList.add(new ColorInterval(1, Color.red));
    monitor.setHighlightColorIntervalList(highlightColorIntervalList);

    String processDefinitionId = repositoryService.createProcessDefinitionQuery()
            .processDefinitionKey(PROCESS_KEY).singleResult().getId();

    monitor.generateReport(processDefinitionId, null, null, "target/ProcessInstanceMonitor-1.png");

    File expectedFile = new File(
            "src/test/resources/org/activiti/crystalball/generator/ProcessInstanceMonitor-1.png");
    File generatedFile = new File("target/ProcessInstanceMonitor-1.png");
    assertTrue(FileUtils.contentEquals(expectedFile, generatedFile));

    // move 3 tasks forward
    List<Task> taskList = taskService.createTaskQuery().taskCandidateUser("user1").list();
    for (int i = 0; i < 3; i++) {
        Task t = taskList.get(i);
        taskService.claim(t.getId(), "user1");
        taskService.complete(t.getId());
    }

    monitor.generateReport(processDefinitionId, null, null, "target/ProcessInstanceMonitor-2.png");

    expectedFile = new File(
            "src/test/resources/org/activiti/crystalball/generator/ProcessInstanceMonitor-2.png");
    generatedFile = new File("target/ProcessInstanceMonitor-2.png");
    assertTrue(FileUtils.contentEquals(expectedFile, generatedFile));

    // move 3 tasks forward
    taskList = taskService.createTaskQuery().taskCandidateUser("user2").list();
    for (Task t : taskList) {
        taskService.claim(t.getId(), "user2");
        taskService.complete(t.getId());
    }

    monitor.generateReport(processDefinitionId, null, null, "target/ProcessInstanceMonitor-3.png");

    expectedFile = new File(
            "src/test/resources/org/activiti/crystalball/generator/ProcessInstanceMonitor-3.png");
    generatedFile = new File("target/ProcessInstanceMonitor-3.png");
    assertTrue(FileUtils.contentEquals(expectedFile, generatedFile));

    // move 3 tasks forward
    taskList = taskService.createTaskQuery().taskCandidateUser("user3").list();
    for (Task t : taskList) {
        taskService.claim(t.getId(), "user3");
        taskService.complete(t.getId());
    }

    monitor.generateReport(processDefinitionId, null, null, "target/ProcessInstanceMonitor-4.png");

    expectedFile = new File(
            "src/test/resources/org/activiti/crystalball/generator/ProcessInstanceMonitor-4.png");
    generatedFile = new File("target/ProcessInstanceMonitor-4.png");
    assertTrue(FileUtils.contentEquals(expectedFile, generatedFile));

}

From source file:org.activiti.crystalball.generator.ProcessInstancesGeneratorTest.java

public void testGenerateHistoricInstances() throws IOException {

    HistoricInstancesGenerator monitor = new HistoricInstancesGenerator();
    monitor.setRepositoryService(repositoryService);
    monitor.setHistoryService(historyService);
    List<ColorInterval> highlightColorIntervalList = new ArrayList<ColorInterval>();
    highlightColorIntervalList.add(new ColorInterval(4, Color.green));
    highlightColorIntervalList.add(new ColorInterval(1, 3, Color.yellow));
    highlightColorIntervalList.add(new ColorInterval(0, 0, Color.red));

    monitor.setHighlightColorIntervalList(highlightColorIntervalList);

    String processDefinitionId = repositoryService.createProcessDefinitionQuery()
            .processDefinitionKey(PROCESS_KEY).singleResult().getId();

    monitor.generateReport(processDefinitionId, null, null, "target/HistoricInstanceMonitor-1.png");

    File expectedFile = new File(
            "src/test/resources/org/activiti/crystalball/generator/HistoricInstanceMonitor-1.png");
    File generatedFile = new File("target/HistoricInstanceMonitor-1.png");
    assertTrue(FileUtils.contentEquals(expectedFile, generatedFile));

    // move 3 tasks forward
    List<Task> taskList = taskService.createTaskQuery().taskCandidateUser("user1").list();
    for (int i = 0; i < 3; i++) {
        Task t = taskList.get(i);/* w  w  w  . j a v a2s .  c  o m*/
        taskService.claim(t.getId(), "user1");
        taskService.complete(t.getId());
    }

    monitor.generateReport(processDefinitionId, null, null, "target/HistoricInstanceMonitor-2.png");

    expectedFile = new File(
            "src/test/resources/org/activiti/crystalball/generator/HistoricInstanceMonitor-2.png");
    generatedFile = new File("target/HistoricInstanceMonitor-2.png");
    assertTrue(FileUtils.contentEquals(expectedFile, generatedFile));

    // move 3 tasks forward
    taskList = taskService.createTaskQuery().taskCandidateUser("user2").list();
    for (Task t : taskList) {
        taskService.claim(t.getId(), "user2");
        taskService.complete(t.getId());
    }

    monitor.generateReport(processDefinitionId, null, null, "target/HistoricInstanceMonitor-3.png");

    expectedFile = new File(
            "src/test/resources/org/activiti/crystalball/generator/HistoricInstanceMonitor-3.png");
    generatedFile = new File("target/HistoricInstanceMonitor-3.png");
    assertTrue(FileUtils.contentEquals(expectedFile, generatedFile));

    // move 3 tasks forward
    taskList = taskService.createTaskQuery().taskCandidateUser("user3").list();
    for (Task t : taskList) {
        taskService.claim(t.getId(), "user3");
        taskService.complete(t.getId());
    }

    monitor.generateReport(processDefinitionId, null, null, "target/HistoricInstanceMonitor-4.png");

    expectedFile = new File(
            "src/test/resources/org/activiti/crystalball/generator/HistoricInstanceMonitor-4.png");
    generatedFile = new File("target/HistoricInstanceMonitor-4.png");
    assertTrue(FileUtils.contentEquals(expectedFile, generatedFile));

}

From source file:org.activiti.crystalball.simulator.OptimizeBottleneckTest.java

@Test
public void testUser2OverLoadedWithHelp3() throws Exception {
    System.setProperty("liveDB", LIVE_DB);
    System.setProperty("_SIM_DB_PATH",
            tempDir + "/simulationRunDB-SimulateBottleNeck-Overload3-" + Thread.currentThread().getId());

    FileUtils.copyFile(new File(LIVE_DB + ".h2.db"), new File(tempDir
            + "/simulationRunDB-SimulateBottleNeck-Overload3-" + Thread.currentThread().getId() + ".h2.db"));

    ClassPathXmlApplicationContext appContext = new ClassPathXmlApplicationContext(
            "/org/activiti/crystalball/simulator/SimEngine-simulateBottleneck-h2-context.xml");
    ProcessEngine processEngine = (ProcessEngine) appContext.getBean("simProcessEngine");

    // increase frequency of process starts to 45 mins (default is 1 hour)
    StartProcessEventHandler startProcessEventHandler = appContext.getBean(StartProcessEventHandler.class);
    startProcessEventHandler.setPeriod(2700000);
    // add User3 to the Group2 to help user2
    IdentityService identityService = (IdentityService) appContext.getBean("simIdentityService");
    identityService.createMembership("user3", "Group2");

    runSimulation(appContext, tempDir + "/OptimizeBottleneckTest3.png",
            tempDir + "/OptimizeBottleneckTest3-dueDate.png");

    processEngine.close();/*  w  ww. j  av a  2s .c o  m*/
    appContext.close();

    File expected = new File(System.getProperty("baseDir", ".")
            + "/src/test/resources/org/activiti/crystalball/simulator/OptimizeBottleneckTest3.png");
    File generated = new File(tempDir + "/OptimizeBottleneckTest3.png");
    assertTrue(FileUtils.contentEquals(expected, generated));

    expected = new File(System.getProperty("baseDir", ".")
            + "/src/test/resources/org/activiti/crystalball/simulator/OptimizeBottleneckTest3-dueDate.png");
    generated = new File(tempDir + "/OptimizeBottleneckTest3-dueDate.png");
    assertTrue(FileUtils.contentEquals(expected, generated));

    // delete database file
    File f = new File(System.getProperty("_SIM_DB_PATH") + ".h2.db");
    if (!f.delete())
        System.err.println("unable to delete file");
}

From source file:org.activiti.crystalball.simulator.OptimizeBottleneckTest.java

@Test
public void testUser2OverLoadedWithHelp4() throws Exception {
    System.setProperty("liveDB", LIVE_DB);
    System.setProperty("_SIM_DB_PATH",
            tempDir + "/simulationRunDB-SimulateBottleNeck-Overload4-" + Thread.currentThread().getId());

    FileUtils.copyFile(new File(LIVE_DB + ".h2.db"), new File(tempDir
            + "/simulationRunDB-SimulateBottleNeck-Overload4-" + Thread.currentThread().getId() + ".h2.db"));

    ClassPathXmlApplicationContext appContext = new ClassPathXmlApplicationContext(
            "/org/activiti/crystalball/simulator/SimEngine-simulateBottleneck-h2-context.xml");
    ProcessEngine processEngine = (ProcessEngine) appContext.getBean("simProcessEngine");

    // increase frequency of process starts to 45 mins (default is 1 hour)
    StartProcessEventHandler startProcessEventHandler = appContext.getBean(StartProcessEventHandler.class);
    startProcessEventHandler.setPeriod(2700000);
    // add user4 to the Group2 to help user2
    IdentityService identityService = (IdentityService) appContext.getBean("simIdentityService");

    identityService.createMembership("user4", "Group2");

    runSimulation(appContext, tempDir + "/OptimizeBottleneckTest4.png",
            tempDir + "/OptimizeBottleneckTest4-dueDate.png");

    processEngine.close();//ww w.j a v  a2  s. c  o  m
    appContext.close();

    File expected = new File(System.getProperty("baseDir", ".")
            + "/src/test/resources/org/activiti/crystalball/simulator/OptimizeBottleneckTest4.png");
    File generated = new File(tempDir + "/OptimizeBottleneckTest4.png");
    assertTrue(FileUtils.contentEquals(expected, generated));

    expected = new File(System.getProperty("baseDir", ".")
            + "/src/test/resources/org/activiti/crystalball/simulator/OptimizeBottleneckTest4-dueDate.png");
    generated = new File(tempDir + "/OptimizeBottleneckTest4-dueDate.png");
    assertTrue(FileUtils.contentEquals(expected, generated));

    // delete database file
    File f = new File(System.getProperty("_SIM_DB_PATH") + ".h2.db");
    if (!f.delete())
        System.err.println("unable to delete file");
}

From source file:org.activiti.crystalball.simulator.OptimizeBottleneckTest.java

@Test
public void testUser2OverLoadedWithHelp5() throws Exception {
    System.setProperty("liveDB", LIVE_DB);
    System.setProperty("_SIM_DB_PATH",
            tempDir + "/simulationRunDB-SimulateBottleNeck-Overload5-" + Thread.currentThread().getId());

    FileUtils.copyFile(new File(LIVE_DB + ".h2.db"), new File(tempDir
            + "/simulationRunDB-SimulateBottleNeck-Overload5-" + Thread.currentThread().getId() + ".h2.db"));

    ClassPathXmlApplicationContext appContext = new ClassPathXmlApplicationContext(
            "/org/activiti/crystalball/simulator/SimEngine-simulateBottleneck-h2-context.xml");
    ProcessEngine processEngine = (ProcessEngine) appContext.getBean("simProcessEngine");

    // increase frequency of process starts to 45 mins (default is 1 hour)
    StartProcessEventHandler startProcessEventHandler = appContext.getBean(StartProcessEventHandler.class);
    startProcessEventHandler.setPeriod(2700000);
    // add new user5 to the Group2 to help user2
    IdentityService identityService = (IdentityService) appContext.getBean("simIdentityService");
    identityService.saveUser(identityService.newUser("user5"));
    identityService.createMembership("user5", "Group2");

    runSimulation(appContext, tempDir + "/OptimizeBottleneckTest5.png",
            tempDir + "/OptimizeBottleneckTest5-dueDate.png");

    processEngine.close();// ww  w.  j a va  2 s  .c  om
    appContext.close();

    File expected = new File(System.getProperty("baseDir", ".")
            + "/src/test/resources/org/activiti/crystalball/simulator/OptimizeBottleneckTest5.png");
    File generated = new File(tempDir + "/OptimizeBottleneckTest5.png");
    assertTrue(FileUtils.contentEquals(expected, generated));

    expected = new File(System.getProperty("baseDir", ".")
            + "/src/test/resources/org/activiti/crystalball/simulator/OptimizeBottleneckTest5-dueDate.png");
    generated = new File(tempDir + "/OptimizeBottleneckTest5-dueDate.png");
    assertTrue(FileUtils.contentEquals(expected, generated));

    // delete database file
    File f = new File(System.getProperty("_SIM_DB_PATH") + ".h2.db");
    if (!f.delete())
        System.err.println("unable to delete file");
}