Package org.springframework.ide.eclipse.roo.test

Source Code of org.springframework.ide.eclipse.roo.test.StyledTextAppenderTest

/*******************************************************************************
*  Copyright (c) 2012 VMware, Inc.
*  All rights reserved. This program and the accompanying materials
*  are made available under the terms of the Eclipse Public License v1.0
*  which accompanies this distribution, and is available at
*  http://www.eclipse.org/legal/epl-v10.html
*
*  Contributors:
*      VMware, Inc. - initial API and implementation
*******************************************************************************/
package org.springframework.ide.eclipse.roo.test;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

import junit.framework.TestCase;

import org.junit.Test;
import org.springframework.ide.eclipse.roo.ui.internal.StyledTextAppender;


/**
* @author Martin Lippert
* @author Leo Dos Santos
*/
public class StyledTextAppenderTest extends TestCase {

  @Test
  public void testCreatedFile() {
    Pattern pattern = new StyledTextAppender(null).getHyperlinkPattern();

    Matcher matcher = pattern.matcher("Created SRC_MAIN_WEBAPP/WEB-INF/views/votes/list.jspx");
    assertTrue(matcher.matches());
    assertEquals("Created ", matcher.group(1));
    assertEquals("SRC_MAIN_WEBAPP/WEB-INF/views/votes/list.jspx", matcher.group(2));
    assertNull(matcher.group(5));
  }

  @Test
  public void testUpdatedFile() {
    Pattern pattern = new StyledTextAppender(null).getHyperlinkPattern();

    Matcher matcher = pattern.matcher("Updated SRC_MAIN_JAVA/r1/web/ApplicationConversionServiceFactoryBean_Roo_ConversionService.aj");
    assertTrue(matcher.matches());
    assertEquals("Updated ", matcher.group(1));
    assertEquals("SRC_MAIN_JAVA/r1/web/ApplicationConversionServiceFactoryBean_Roo_ConversionService.aj", matcher.group(2));
    assertNull(matcher.group(5));
  }
 
  @Test
  public void testCreatedModule() {
    Pattern pattern = new StyledTextAppender(null).getHyperlinkPattern();
   
    Matcher matcher = pattern.matcher("Created module1|SRC_MAIN_JAVA/com/foo/MyEntity_Roo_JavaBean.aj");
    assertTrue(matcher.matches());
    assertEquals("Created ", matcher.group(1));
    assertEquals("module1|SRC_MAIN_JAVA/com/foo/MyEntity_Roo_JavaBean.aj", matcher.group(2));
    assertNull(matcher.group(5));
  }
 
  @Test
  public void testUpdatedModule() {
    Pattern pattern = new StyledTextAppender(null).getHyperlinkPattern();
   
    Matcher matcher = pattern.matcher("Updated module1|SRC_MAIN_RESOURCES/META-INF/persistence.xml");
    assertTrue(matcher.matches());
    assertEquals("Updated ", matcher.group(1));
    assertEquals("module1|SRC_MAIN_RESOURCES/META-INF/persistence.xml", matcher.group(2));
    assertNull(matcher.group(5));
  }
 
  @Test
  public void testSpringConfigRoot() {
    Pattern pattern = new StyledTextAppender(null).getHyperlinkPattern();
   
    Matcher matcher = pattern.matcher("Created module1|SPRING_CONFIG_ROOT/applicationContext.xml");
    assertTrue(matcher.matches());
    assertEquals("Created ", matcher.group(1));
    assertEquals("module1|SPRING_CONFIG_ROOT/applicationContext.xml", matcher.group(2));
    assertNull(matcher.group(5));
  }

  @Test
  public void testDeletedFile() {
    Pattern pattern = new StyledTextAppender(null).getHyperlinkPattern();

    Matcher matcher = pattern.matcher("Managed SRC_MAIN_WEBAPP/WEB-INF/views/votes/list.jspx");
    assertTrue(matcher.matches());
    assertEquals("Managed ", matcher.group(1));
    assertEquals("SRC_MAIN_WEBAPP/WEB-INF/views/votes/list.jspx", matcher.group(2));
    assertNull(matcher.group(5));
  }

  @Test
  public void testUnknownAction() {
    Pattern pattern = new StyledTextAppender(null).getHyperlinkPattern();

    Matcher matcher = pattern.matcher("Unknown SRC_MAIN_WEBAPP/WEB-INF/views/votes/list.jspx");
    assertTrue(matcher.matches());
    assertEquals("Unknown ", matcher.group(1));
    assertEquals("SRC_MAIN_WEBAPP/WEB-INF/views/votes/list.jspx", matcher.group(2));
    assertNull(matcher.group(5));
  }

  @Test
  public void testSomethingAfterTheFileName() {
    Pattern pattern = new StyledTextAppender(null).getHyperlinkPattern();

    Matcher matcher = pattern.matcher("Unknown SRC_MAIN_WEBAPP/WEB-INF/views/votes/list.jspx this is the end");
    assertTrue(matcher.matches());
    assertEquals("Unknown ", matcher.group(1));
    assertEquals("SRC_MAIN_WEBAPP/WEB-INF/views/votes/list.jspx", matcher.group(2));
    assertEquals(" this is the end", matcher.group(5));
  }

  @Test
  public void testColonDirectlyAfterFileName() {
    Pattern pattern = new StyledTextAppender(null).getHyperlinkPattern();

    Matcher matcher = pattern.matcher("Unknown SRC_MAIN_WEBAPP/WEB-INF/views/votes/list.jspx : this is the end");
    assertTrue(matcher.matches());
    assertEquals("Unknown ", matcher.group(1));
    assertEquals("SRC_MAIN_WEBAPP/WEB-INF/views/votes/list.jspx", matcher.group(2));
    assertEquals(" : this is the end", matcher.group(5));
  }

  @Test
  public void testSpaceAndColonDirectlyAfterFileName() {
    Pattern pattern = new StyledTextAppender(null).getHyperlinkPattern();

    Matcher matcher = pattern.matcher("Unknown SRC_MAIN_WEBAPP/WEB-INF/views/votes/list.jspx : this is the end");
    assertTrue(matcher.matches());
    assertEquals("Unknown ", matcher.group(1));
    assertEquals("SRC_MAIN_WEBAPP/WEB-INF/views/votes/list.jspx", matcher.group(2));
    assertEquals(" : this is the end", matcher.group(5));
  }

  @Test
  public void testRootFileName() {
    Pattern pattern = new StyledTextAppender(null).getHyperlinkPattern();

    Matcher matcher = pattern.matcher("Updated ROOT/pom.xml");
    assertTrue(matcher.matches());
    assertEquals("Updated ", matcher.group(1));
    assertEquals("ROOT/pom.xml", matcher.group(2));
    assertNull(matcher.group(5));
  }
 
  @Test
  public void testRootFileNameWithAddOn() {
    Pattern pattern = new StyledTextAppender(null).getHyperlinkPattern();

    Matcher matcher = pattern.matcher("Updated ROOT/pom.xml [added dependencies org.hsqldb:hsqldb:1.8.0.10, org.hibernate:hibernate-core:3.6.4.Final, org.hibernate:hibernate-entitymanager:3.6.4.Final, org.hibernate.javax.persistence:hibernate-jpa-2.0-api:1.0.0.Final, org.hibernate:hibernate-validator:4.1.0.Final, javax.validation:validation-api:1.0.0.GA, cglib:cglib-nodep:2.2, javax.transaction:jta:1.1, org.springframework:spring-jdbc:${spring.version}, org.springframework:spring-orm:${spring.version}, commons-pool:commons-pool:1.5.4, commons-dbcp:commons-dbcp:1.3; added repository https://repository.jboss.org/nexus/content/repositories/releases]");
    assertTrue(matcher.matches());
    assertEquals("Updated ", matcher.group(1));
    assertEquals("ROOT/pom.xml", matcher.group(2));
    assertEquals(" [added dependencies org.hsqldb:hsqldb:1.8.0.10, org.hibernate:hibernate-core:3.6.4.Final, org.hibernate:hibernate-entitymanager:3.6.4.Final, org.hibernate.javax.persistence:hibernate-jpa-2.0-api:1.0.0.Final, org.hibernate:hibernate-validator:4.1.0.Final, javax.validation:validation-api:1.0.0.GA, cglib:cglib-nodep:2.2, javax.transaction:jta:1.1, org.springframework:spring-jdbc:${spring.version}, org.springframework:spring-orm:${spring.version}, commons-pool:commons-pool:1.5.4, commons-dbcp:commons-dbcp:1.3; added repository https://repository.jboss.org/nexus/content/repositories/releases]", matcher.group(5));
  }
 
  @Test
  public void testSRCFileNameWithAddOn() {
    Pattern pattern = new StyledTextAppender(null).getHyperlinkPattern();

    Matcher matcher = pattern.matcher("Updated SRC_MAIN_WEBAPP/WEB-INF/views/votes/list.jspx [added dependencies org.hsqldb:hsqldb:1.8.0.10, org.hibernate:hibernate-core:3.6.4.Final, org.hibernate:hibernate-entitymanager:3.6.4.Final, org.hibernate.javax.persistence:hibernate-jpa-2.0-api:1.0.0.Final, org.hibernate:hibernate-validator:4.1.0.Final, javax.validation:validation-api:1.0.0.GA, cglib:cglib-nodep:2.2, javax.transaction:jta:1.1, org.springframework:spring-jdbc:${spring.version}, org.springframework:spring-orm:${spring.version}, commons-pool:commons-pool:1.5.4, commons-dbcp:commons-dbcp:1.3; added repository https://repository.jboss.org/nexus/content/repositories/releases]");
    assertTrue(matcher.matches());
    assertEquals("Updated ", matcher.group(1));
    assertEquals("SRC_MAIN_WEBAPP/WEB-INF/views/votes/list.jspx", matcher.group(2));
    assertEquals(" [added dependencies org.hsqldb:hsqldb:1.8.0.10, org.hibernate:hibernate-core:3.6.4.Final, org.hibernate:hibernate-entitymanager:3.6.4.Final, org.hibernate.javax.persistence:hibernate-jpa-2.0-api:1.0.0.Final, org.hibernate:hibernate-validator:4.1.0.Final, javax.validation:validation-api:1.0.0.GA, cglib:cglib-nodep:2.2, javax.transaction:jta:1.1, org.springframework:spring-jdbc:${spring.version}, org.springframework:spring-orm:${spring.version}, commons-pool:commons-pool:1.5.4, commons-dbcp:commons-dbcp:1.3; added repository https://repository.jboss.org/nexus/content/repositories/releases]", matcher.group(5));
  }

  @Test
  public void testNonMatchingFile() {
    Pattern pattern = new StyledTextAppender(null).getHyperlinkPattern();

    Matcher matcher = pattern.matcher("Created SRC_MAIN_WEBAPP/WEB-INF/views/public");
    assertFalse(matcher.matches());
  }

}
TOP

Related Classes of org.springframework.ide.eclipse.roo.test.StyledTextAppenderTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.