Class ScmTckTestCase

    • Constructor Detail

      • ScmTckTestCase

        public ScmTckTestCase()
    • Method Detail

      • getScmUrl

        public abstract java.lang.String getScmUrl()
                                            throws java.lang.Exception
        Returns:
        A provider specific and valid url for the repository
        Throws:
        java.lang.Exception - if any
      • getScmFileNames

        protected java.util.List<java.lang.String> getScmFileNames()

        Get the list of file names that is supposed to be in the test repo.

        • /pom.xml
        • /readme.txt
        • /src/main/java/Application.java
        • /src/test/java/Test.java
        Returns:
        List of String objects
      • initRepo

        public abstract void initRepo()
                               throws java.lang.Exception

        Initialize repository at the getScmUrl() location with the files in getScmFileNames()

        The setup is also asserting on the existence of these files.
        This should only be used by this class (thus do not call this method from derived classes)

        Note: 'svnadmin' should be a system command.
        Throws:
        java.lang.Exception - if any
      • setUp

        protected void setUp()
                      throws java.lang.Exception
        Overrides:
        setUp in class ScmTestCase
        Throws:
        java.lang.Exception
      • removeRepo

        public void removeRepo()
                        throws java.lang.Exception
        This method is available to those SCM clients that need to perform a cleanup at the end of the tests. It is needed when server side operations are performed, or the check out dirs are outside of the normal target directory.
        Throws:
        java.lang.Exception
      • tearDown

        protected void tearDown()
                         throws java.lang.Exception
        Provided to allow removeRepo() to be called.
        Overrides:
        tearDown in class org.codehaus.plexus.PlexusTestCase
        Throws:
        java.lang.Exception
        See Also:
        TestCase.tearDown()
      • getScmRepository

        protected ScmRepository getScmRepository()
                                          throws java.lang.Exception
        Convenience method to get the ScmRepository for this provider
        Throws:
        java.lang.Exception
      • checkOut

        protected CheckOutScmResult checkOut​(java.io.File workingDirectory,
                                             ScmRepository repository)
                                      throws java.lang.Exception
        Convenience method to check out files from the repository
        Throws:
        java.lang.Exception
      • checkIn

        protected CheckInScmResult checkIn​(java.io.File workingDirectory,
                                           ScmRepository repository)
                                    throws java.lang.Exception
        Convenience method to check in files to the repository
        Throws:
        java.lang.Exception
      • addToWorkingTree

        protected void addToWorkingTree​(java.io.File workingDirectory,
                                        java.io.File file,
                                        ScmRepository repository)
                                 throws java.lang.Exception
        Convenience method to add a file to the working tree at the working directory
        Throws:
        java.lang.Exception
      • mapFilesByPath

        protected java.util.Map<java.lang.String,​ScmFile> mapFilesByPath​(java.util.List<ScmFile> files)
        take the files of the given list, add them to a TreeMap and use the pathName String as key for the Map. This function is useful for every TCK which has to check for the existence of more than 1 file of the returned ScmResult, regardless of their order in the list. All backslashes in the path will be replaced by forward slashes for Windows compatibility.
        Parameters:
        files - List with ScmFiles
        Returns:
        Map key=pathName, value=ScmFile
      • edit

        protected EditScmResult edit​(java.io.File basedir,
                                     java.lang.String includes,
                                     java.lang.String excludes,
                                     ScmRepository repository)
                              throws java.lang.Exception
        Throws:
        java.lang.Exception