1 package org.apache.maven.scm.plugin;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import org.apache.maven.plugin.testing.AbstractMojoTestCase;
23 import org.apache.maven.scm.ScmTestCase;
24 import org.apache.maven.scm.provider.svn.SvnScmTestUtils;
25 import org.codehaus.plexus.util.FileUtils;
26 import org.codehaus.plexus.util.StringUtils;
27
28 import java.io.File;
29
30
31
32
33
34 public class UpdateMojoTest
35 extends AbstractMojoTestCase
36 {
37 File checkoutDir;
38
39 File repository;
40
41 protected void setUp()
42 throws Exception
43 {
44 super.setUp();
45
46 checkoutDir = getTestFile( "target/checkout" );
47
48 repository = getTestFile( "target/repository" );
49
50 FileUtils.forceDelete( checkoutDir );
51 }
52
53 public void testSkipCheckoutWithConnectionUrl()
54 throws Exception
55 {
56 if ( !ScmTestCase.isSystemCmd( SvnScmTestUtils.SVNADMIN_COMMAND_LINE ) )
57 {
58 System.err.println( "'" + SvnScmTestUtils.SVNADMIN_COMMAND_LINE
59 + "' is not a system command. Ignored " + getName() + "." );
60 return;
61 }
62
63 SvnScmTestUtils.initializeRepository( repository );
64
65 CheckoutMojo checkoutMojo = (CheckoutMojo) lookupMojo( "checkout", getTestFile(
66 "src/test/resources/mojos/checkout/checkoutWithConnectionUrl.xml" ) );
67
68 String connectionUrl = checkoutMojo.getConnectionUrl();
69 connectionUrl = StringUtils.replace( connectionUrl, "${basedir}", getBasedir() );
70 connectionUrl = StringUtils.replace( connectionUrl, "\\", "/" );
71 checkoutMojo.setConnectionUrl( connectionUrl );
72
73 checkoutMojo.execute();
74
75 UpdateMojo updateMojo = (UpdateMojo) lookupMojo( "update", getTestFile(
76 "src/test/resources/mojos/update/updateWithConnectionUrl.xml" ) );
77
78 connectionUrl = updateMojo.getConnectionUrl();
79 connectionUrl = StringUtils.replace( connectionUrl, "${basedir}", getBasedir() );
80 connectionUrl = StringUtils.replace( connectionUrl, "\\", "/" );
81 updateMojo.setConnectionUrl( connectionUrl );
82
83 updateMojo.execute();
84
85 }
86
87 }