/** * Checks the quick-start archetype with the emulator parameter. * * @throws IOException a file cannot be read * @throws VerificationException the maven launch failed */ @Test public void testQuickStartWithEmulator() throws VerificationException, IOException { File root = Helper.prepareDirectory("quickstart-default"); Verifier verifier = new Verifier(root.getAbsolutePath(), false); verifier.setAutoclean(false); verifier.displayStreamBuffers(); @SuppressWarnings("unchecked") List<String> cli = verifier.getCliOptions(); cli.add("-DarchetypeArtifactId=android-quickstart"); cli.add("-DarchetypeGroupId=de.akquinet.android.archetypes"); cli.add("-DarchetypeVersion=" + System.getProperty("archetype.version")); cli.add("-DgroupId=" + Constants.TEST_GROUP_ID); cli.add("-DartifactId=" + Constants.TEST_ARTIFACT_ID); cli.add("-DinteractiveMode=false"); cli.add("-DarchetypeCatalog=local"); cli.add("-DarchetypeRepository=local"); cli.add("-Demulator=test"); cli.add("-Dandroid-plugin-version=3.0.0-alpha-2"); verifier.executeGoal("org.apache.maven.plugins:maven-archetype-plugin:2.0:generate"); // Check folder create. verifier.assertFilePresent("android-test"); verifier.assertFilePresent("android-test/AndroidManifest.xml"); verifier.assertFilePresent("android-test/pom.xml"); verifier.assertFilePresent("android-test/res/values/strings.xml"); verifier.assertFilePresent("android-test/res/layout/main.xml"); verifier.assertFilePresent("android-test/assets"); verifier.assertFilePresent( "android-test/src/main/java/android/archetypes/test/HelloAndroidActivity.java"); Helper.assertContains( new File("target/it/quickstart-default/android-test/pom.xml"), "<artifactId>maven-android-plugin</artifactId>"); Helper.assertContains( new File("target/it/quickstart-default/android-test/pom.xml"), "<platform>7</platform>"); Helper.assertContains( new File("target/it/quickstart-default/android-test/AndroidManifest.xml"), "<activity android:name=\".HelloAndroidActivity\">"); Helper.assertContains( new File("target/it/quickstart-default/android-test/AndroidManifest.xml"), "package=\"android.archetypes.test\""); // Check that the Eclipse file is created (default.properties) Helper.assertContains( new File("target/it/quickstart-default/android-test/default.properties"), "target=android-7"); // Check the emulator part Helper.assertContains( new File("target/it/quickstart-default/android-test/pom.xml"), "<avd>test</avd>"); }
/** * Checks the quick-start archetype with the <tt>platform</tt> and <tt>package</tt> parameters. * * @throws VerificationException * @throws IOException */ @Test public void testQuickStartWithPlatformAndPackage() throws VerificationException, IOException { File root = Helper.prepareDirectory("quickstart-with-platform-and-package"); Verifier verifier = new Verifier(root.getAbsolutePath(), false); verifier.setAutoclean(false); verifier.displayStreamBuffers(); @SuppressWarnings("unchecked") List<String> cli = verifier.getCliOptions(); cli.add("-DarchetypeArtifactId=android-quickstart"); cli.add("-DarchetypeGroupId=de.akquinet.android.archetypes"); cli.add("-DarchetypeVersion=" + System.getProperty("archetype.version")); cli.add("-DgroupId=" + Constants.TEST_GROUP_ID); cli.add("-DartifactId=" + Constants.TEST_ARTIFACT_ID); cli.add("-DinteractiveMode=false"); cli.add("-DarchetypeCatalog=local"); cli.add("-DarchetypeRepository=local"); cli.add("-Dplatform=4"); cli.add("-Dpackage=foo"); verifier.executeGoal("org.apache.maven.plugins:maven-archetype-plugin:2.0:generate"); // Check folder create. verifier.assertFilePresent("android-test"); verifier.assertFilePresent("android-test/AndroidManifest.xml"); verifier.assertFilePresent("android-test/pom.xml"); verifier.assertFilePresent("android-test/res/values/strings.xml"); verifier.assertFilePresent("android-test/res/layout/main.xml"); verifier.assertFilePresent("android-test/assets"); verifier.assertFilePresent("android-test/src/main/java/foo/HelloAndroidActivity.java"); Helper.assertContains( new File("target/it/quickstart-with-platform-and-package/android-test/pom.xml"), "<artifactId>maven-android-plugin</artifactId>"); Helper.assertContains( new File("target/it/quickstart-with-platform-and-package/android-test/pom.xml"), "<platform>4</platform>"); Helper.assertContains( new File("target/it/quickstart-with-platform-and-package/android-test/pom.xml"), "1.6_r2"); // Android lib version Helper.assertContains( new File("target/it/quickstart-with-platform-and-package/android-test/AndroidManifest.xml"), "<activity android:name=\".HelloAndroidActivity\">"); Helper.assertContains( new File("target/it/quickstart-with-platform-and-package/android-test/AndroidManifest.xml"), "package=\"foo\""); }
/** * Checks the with-test archetype with the <tt>platform</tt> parameter bellow 7 for correct * constructor. * * @throws VerificationException * @throws IOException */ @Test public void testWithTestConstructorCorrectness() throws VerificationException, IOException { File root = Helper.prepareDirectory("with-test-with-platform"); Verifier verifier = new Verifier(root.getAbsolutePath(), false); verifier.setAutoclean(false); verifier.displayStreamBuffers(); @SuppressWarnings("unchecked") List<String> cli = verifier.getCliOptions(); cli.add("-DarchetypeArtifactId=android-with-test"); cli.add("-DarchetypeGroupId=de.akquinet.android.archetypes"); cli.add("-DarchetypeVersion=" + System.getProperty("archetype.version")); cli.add("-DgroupId=" + Constants.TEST_GROUP_ID); cli.add("-DartifactId=" + Constants.TEST_ARTIFACT_ID); cli.add("-DinteractiveMode=false"); cli.add("-Dplatform=7"); cli.add("-DarchetypeCatalog=local"); cli.add("-DarchetypeRepository=local"); verifier.executeGoal("org.apache.maven.plugins:maven-archetype-plugin:2.0:generate"); // Check folder create. verifier.assertFilePresent("android-test/" + Constants.TEST_ARTIFACT_ID); verifier.assertFilePresent("android-test/" + Constants.TEST_ARTIFACT_ID + "-it"); verifier.assertFilePresent( "android-test/" + Constants.TEST_ARTIFACT_ID + "/AndroidManifest.xml"); verifier.assertFilePresent( "android-test/" + Constants.TEST_ARTIFACT_ID + "-it/AndroidManifest.xml"); verifier.assertFilePresent("android-test/pom.xml"); verifier.assertFilePresent("android-test/" + Constants.TEST_ARTIFACT_ID + "/pom.xml"); verifier.assertFilePresent("android-test/" + Constants.TEST_ARTIFACT_ID + "-it/pom.xml"); verifier.assertFilePresent( "android-test/" + Constants.TEST_ARTIFACT_ID + "/res/values/strings.xml"); verifier.assertFilePresent( "android-test/" + Constants.TEST_ARTIFACT_ID + "/res/layout/main.xml"); verifier.assertFilePresent("android-test/" + Constants.TEST_ARTIFACT_ID + "/assets"); verifier.assertFilePresent( "android-test/" + Constants.TEST_ARTIFACT_ID + "/src/main/java/android/archetypes/test/HelloAndroidActivity.java"); verifier.assertFilePresent( "android-test/" + Constants.TEST_ARTIFACT_ID + "-it/src/main/java/android/archetypes/test/test/HelloAndroidActivityTest.java"); Helper.assertContains( new File( "target/it/with-test-with-platform/android-test/" + Constants.TEST_ARTIFACT_ID + "/pom.xml"), "<artifactId>android-maven-plugin</artifactId>"); Helper.assertContains( new File( "target/it/with-test-with-platform/android-test/" + Constants.TEST_ARTIFACT_ID + "/pom.xml"), "<platform>7</platform>"); Helper.assertContains( new File( "target/it/with-test-with-platform/android-test/" + Constants.TEST_ARTIFACT_ID + "/AndroidManifest.xml"), "<activity android:name=\".HelloAndroidActivity\">"); Helper.assertContains( new File( "target/it/with-test-with-platform/android-test/" + Constants.TEST_ARTIFACT_ID + "/AndroidManifest.xml"), "package=\"android.archetypes.test\""); Helper.assertContains( new File( "target/it/with-test-with-platform/android-test/" + Constants.TEST_ARTIFACT_ID + "-it/pom.xml"), "<artifactId>android-maven-plugin</artifactId>"); Helper.assertContains( new File( "target/it/with-test-with-platform/android-test/" + Constants.TEST_ARTIFACT_ID + "-it/pom.xml"), "<platform>7</platform>"); Helper.assertContains( new File( "target/it/with-test-with-platform/android-test/" + Constants.TEST_ARTIFACT_ID + "-it/AndroidManifest.xml"), "<uses-library android:name=\"android.test.runner\" />"); Helper.assertContains( new File( "target/it/with-test-with-platform/android-test/" + Constants.TEST_ARTIFACT_ID + "-it/AndroidManifest.xml"), "<instrumentation android:targetPackage=\"android.archetypes.test\""); Helper.assertContains( new File( "target/it/with-test-with-platform/android-test/" + Constants.TEST_ARTIFACT_ID + "-it/src/main/java/android/archetypes/test/test/HelloAndroidActivityTest.java"), "super(\"android.archetypes.test\", HelloAndroidActivity.class);"); }