org.apache.maven.it
Class Verifier

java.lang.Object
  extended by org.apache.maven.it.Verifier

public class Verifier
extends java.lang.Object

Version:
$Id: Verifier.java 578638 2007-09-24 03:57:17Z brett $
Author:
Jason van Zyl, Brett Porter

Nested Class Summary
(package private) static class Verifier.UserModelReader
           
 
Field Summary
private  java.lang.String basedir
           
private  java.util.List cliOptions
           
private  boolean debug
           
private  java.io.ByteArrayOutputStream errStream
           
private  boolean forkJvm
           
 java.lang.String localRepo
           
private static java.lang.String localRepoLayout
           
private static java.lang.String LOG_FILENAME
           
private  java.io.PrintStream originalErr
           
private  java.io.PrintStream originalOut
           
private  java.io.ByteArrayOutputStream outStream
           
private  java.util.Properties systemProperties
           
private  java.util.Properties verifierProperties
           
 
Constructor Summary
Verifier(java.lang.String basedir)
           
Verifier(java.lang.String basedir, boolean debug)
           
Verifier(java.lang.String basedir, java.lang.String settingsFile)
           
Verifier(java.lang.String basedir, java.lang.String settingsFile, boolean debug)
           
Verifier(java.lang.String basedir, java.lang.String settingsFile, boolean debug, boolean forkJvm)
           
 
Method Summary
private static void addMetadataToList(java.io.File dir, boolean hasCommand, java.util.List l, java.lang.String command)
           
 void assertArtifactContents(java.lang.String org, java.lang.String artifact, java.lang.String version, java.lang.String type, java.lang.String contents)
           
 void assertArtifactNotPresent(java.lang.String org, java.lang.String name, java.lang.String version, java.lang.String ext)
           
 void assertArtifactPresent(java.lang.String org, java.lang.String name, java.lang.String version, java.lang.String ext)
           
 void assertFileNotPresent(java.lang.String file)
           
 void assertFilePresent(java.lang.String file)
           
 void deleteArtifact(java.lang.String org, java.lang.String name, java.lang.String version, java.lang.String ext)
           
private static java.util.List discoverIntegrationTests(java.lang.String directory)
           
private  void displayLogFile()
           
 void displayStreamBuffers()
           
private  void executeCommand(java.lang.String line)
           
 void executeGoal(java.lang.String goal)
           
 void executeGoal(java.lang.String goal, java.util.Map envVars)
           
 void executeGoals(java.util.List goals)
           
 void executeGoals(java.util.List goals, java.util.Map envVars)
           
 void executeHook(java.lang.String filename)
           
private  void findLocalRepo(java.lang.String settingsFile)
           
 java.util.List getArtifactFileNameList(java.lang.String org, java.lang.String name, java.lang.String version, java.lang.String ext)
           
private  java.lang.String getArtifactPath(java.lang.String artifact)
           
 java.lang.String getArtifactPath(java.lang.String org, java.lang.String name, java.lang.String version, java.lang.String ext)
           
 java.lang.String getBasedir()
           
 java.util.List getCliOptions()
           
private  java.lang.String getExecutable()
           
private static java.lang.String getLogContents(java.io.File logFile)
           
 java.lang.String getMavenVersion()
           
 java.util.Properties getSystemProperties()
           
 java.util.Properties getVerifierProperties()
           
static void launchSubversion(java.lang.String line, java.lang.String basedir)
           
 java.util.List loadFile(java.io.File file, boolean hasCommand)
           
 java.util.List loadFile(java.lang.String basedir, java.lang.String filename, boolean hasCommand)
           
 java.util.Properties loadProperties(java.lang.String filename)
           
static void main(java.lang.String[] args)
           
private  java.util.List replaceArtifacts(java.lang.String line, boolean hasCommand)
           
 void resetStreams()
           
private  java.lang.String resolveCommandLineArg(java.lang.String key)
           
private static java.lang.String retrieveLocalRepo(java.lang.String settingsXmlPath)
           
private  int runCommandLine(java.lang.String mavenHome, Commandline cli, java.io.File logFile)
           
private static void runIntegrationTest(Verifier verifier)
           
 void setCliOptions(java.util.List cliOptions)
           
 void setLocalRepo(java.lang.String localRepo)
           
 void setSystemProperties(java.util.Properties systemProperties)
           
 void setVerifierProperties(java.util.Properties verifierProperties)
           
 void verify(boolean chokeOnErrorOutput)
           
private  void verifyArtifactPresence(boolean wanted, java.lang.String org, java.lang.String name, java.lang.String version, java.lang.String ext)
           
 void verifyErrorFreeLog()
           
private  void verifyExpectedResult(java.lang.String line)
           
private  void verifyExpectedResult(java.lang.String line, boolean wanted)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

LOG_FILENAME

private static final java.lang.String LOG_FILENAME
See Also:
Constant Field Values

localRepo

public java.lang.String localRepo

basedir

private final java.lang.String basedir

outStream

private final java.io.ByteArrayOutputStream outStream

errStream

private final java.io.ByteArrayOutputStream errStream

originalOut

private java.io.PrintStream originalOut

originalErr

private java.io.PrintStream originalErr

cliOptions

private java.util.List cliOptions

systemProperties

private java.util.Properties systemProperties

verifierProperties

private java.util.Properties verifierProperties

localRepoLayout

private static java.lang.String localRepoLayout

debug

private boolean debug

forkJvm

private boolean forkJvm
Constructor Detail

Verifier

public Verifier(java.lang.String basedir,
                java.lang.String settingsFile)
         throws VerificationException
Throws:
VerificationException

Verifier

public Verifier(java.lang.String basedir,
                java.lang.String settingsFile,
                boolean debug)
         throws VerificationException
Throws:
VerificationException

Verifier

public Verifier(java.lang.String basedir,
                java.lang.String settingsFile,
                boolean debug,
                boolean forkJvm)
         throws VerificationException
Throws:
VerificationException

Verifier

public Verifier(java.lang.String basedir)
         throws VerificationException
Throws:
VerificationException

Verifier

public Verifier(java.lang.String basedir,
                boolean debug)
         throws VerificationException
Throws:
VerificationException
Method Detail

setLocalRepo

public void setLocalRepo(java.lang.String localRepo)

resetStreams

public void resetStreams()

displayStreamBuffers

public void displayStreamBuffers()

verify

public void verify(boolean chokeOnErrorOutput)
            throws VerificationException
Throws:
VerificationException

verifyErrorFreeLog

public void verifyErrorFreeLog()
                        throws VerificationException
Throws:
VerificationException

loadProperties

public java.util.Properties loadProperties(java.lang.String filename)
                                    throws VerificationException
Throws:
VerificationException

loadFile

public java.util.List loadFile(java.lang.String basedir,
                               java.lang.String filename,
                               boolean hasCommand)
                        throws VerificationException
Throws:
VerificationException

loadFile

public java.util.List loadFile(java.io.File file,
                               boolean hasCommand)
                        throws VerificationException
Throws:
VerificationException

replaceArtifacts

private java.util.List replaceArtifacts(java.lang.String line,
                                        boolean hasCommand)

addMetadataToList

private static void addMetadataToList(java.io.File dir,
                                      boolean hasCommand,
                                      java.util.List l,
                                      java.lang.String command)

getArtifactPath

private java.lang.String getArtifactPath(java.lang.String artifact)

getArtifactPath

public java.lang.String getArtifactPath(java.lang.String org,
                                        java.lang.String name,
                                        java.lang.String version,
                                        java.lang.String ext)

getArtifactFileNameList

public java.util.List getArtifactFileNameList(java.lang.String org,
                                              java.lang.String name,
                                              java.lang.String version,
                                              java.lang.String ext)

executeHook

public void executeHook(java.lang.String filename)
                 throws VerificationException
Throws:
VerificationException

executeCommand

private void executeCommand(java.lang.String line)
                     throws VerificationException
Throws:
VerificationException

launchSubversion

public static void launchSubversion(java.lang.String line,
                                    java.lang.String basedir)
                             throws VerificationException
Throws:
VerificationException

retrieveLocalRepo

private static java.lang.String retrieveLocalRepo(java.lang.String settingsXmlPath)
                                           throws VerificationException
Throws:
VerificationException

deleteArtifact

public void deleteArtifact(java.lang.String org,
                           java.lang.String name,
                           java.lang.String version,
                           java.lang.String ext)
                    throws java.io.IOException
Throws:
java.io.IOException

assertFilePresent

public void assertFilePresent(java.lang.String file)

assertFileNotPresent

public void assertFileNotPresent(java.lang.String file)

verifyArtifactPresence

private void verifyArtifactPresence(boolean wanted,
                                    java.lang.String org,
                                    java.lang.String name,
                                    java.lang.String version,
                                    java.lang.String ext)

assertArtifactPresent

public void assertArtifactPresent(java.lang.String org,
                                  java.lang.String name,
                                  java.lang.String version,
                                  java.lang.String ext)

assertArtifactNotPresent

public void assertArtifactNotPresent(java.lang.String org,
                                     java.lang.String name,
                                     java.lang.String version,
                                     java.lang.String ext)

verifyExpectedResult

private void verifyExpectedResult(java.lang.String line)
                           throws VerificationException
Throws:
VerificationException

verifyExpectedResult

private void verifyExpectedResult(java.lang.String line,
                                  boolean wanted)
                           throws VerificationException
Throws:
VerificationException

executeGoal

public void executeGoal(java.lang.String goal)
                 throws VerificationException
Throws:
VerificationException

executeGoal

public void executeGoal(java.lang.String goal,
                        java.util.Map envVars)
                 throws VerificationException
Throws:
VerificationException

executeGoals

public void executeGoals(java.util.List goals)
                  throws VerificationException
Throws:
VerificationException

getExecutable

private java.lang.String getExecutable()

executeGoals

public void executeGoals(java.util.List goals,
                         java.util.Map envVars)
                  throws VerificationException
Throws:
VerificationException

getMavenVersion

public java.lang.String getMavenVersion()
                                 throws VerificationException
Throws:
VerificationException

runCommandLine

private int runCommandLine(java.lang.String mavenHome,
                           Commandline cli,
                           java.io.File logFile)
                    throws CommandLineException,
                           java.io.IOException
Throws:
CommandLineException
java.io.IOException

getLogContents

private static java.lang.String getLogContents(java.io.File logFile)

resolveCommandLineArg

private java.lang.String resolveCommandLineArg(java.lang.String key)

discoverIntegrationTests

private static java.util.List discoverIntegrationTests(java.lang.String directory)
                                                throws VerificationException
Throws:
VerificationException

displayLogFile

private void displayLogFile()

main

public static void main(java.lang.String[] args)
                 throws VerificationException
Throws:
VerificationException

findLocalRepo

private void findLocalRepo(java.lang.String settingsFile)
                    throws VerificationException
Throws:
VerificationException

runIntegrationTest

private static void runIntegrationTest(Verifier verifier)
                                throws VerificationException
Throws:
VerificationException

assertArtifactContents

public void assertArtifactContents(java.lang.String org,
                                   java.lang.String artifact,
                                   java.lang.String version,
                                   java.lang.String type,
                                   java.lang.String contents)
                            throws java.io.IOException
Throws:
java.io.IOException

getCliOptions

public java.util.List getCliOptions()

setCliOptions

public void setCliOptions(java.util.List cliOptions)

getSystemProperties

public java.util.Properties getSystemProperties()

setSystemProperties

public void setSystemProperties(java.util.Properties systemProperties)

getVerifierProperties

public java.util.Properties getVerifierProperties()

setVerifierProperties

public void setVerifierProperties(java.util.Properties verifierProperties)

getBasedir

public java.lang.String getBasedir()