You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by da...@apache.org on 2018/05/29 11:42:02 UTC

[sling-org-apache-sling-feature-modelconverter] 02/02: SLING-7683 Support runmode in separate feature files

This is an automated email from the ASF dual-hosted git repository.

davidb pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-feature-modelconverter.git

commit 18f4c746fddb7d47a3fc7dc872f0b4bb2473894f
Author: David Bosschaert <bo...@adobe.com>
AuthorDate: Tue May 29 12:41:41 2018 +0100

    SLING-7683 Support runmode in separate feature files
---
 .../sling/feature/modelconverter/FeatureToProvisioning.java    |  4 ++--
 .../sling/feature/modelconverter/ModelConverterTest.java       | 10 ++++++++--
 src/test/resources/runmodeseparation/oak_mongo.json            |  2 +-
 src/test/resources/runmodeseparation/oak_tar.json              |  2 +-
 4 files changed, 12 insertions(+), 6 deletions(-)

diff --git a/src/main/java/org/apache/sling/feature/modelconverter/FeatureToProvisioning.java b/src/main/java/org/apache/sling/feature/modelconverter/FeatureToProvisioning.java
index afaa2e2..9b92ad8 100644
--- a/src/main/java/org/apache/sling/feature/modelconverter/FeatureToProvisioning.java
+++ b/src/main/java/org/apache/sling/feature/modelconverter/FeatureToProvisioning.java
@@ -59,7 +59,7 @@ import javax.json.JsonValue;
 public class FeatureToProvisioning {
     private static final Logger LOGGER = LoggerFactory.getLogger(FeatureToProvisioning.class);
     static final String PROVISIONING_MODEL_NAME_VARIABLE = "provisioning.model.name";
-    static final String PROVISIONING_RUNMODE = "provisioning.runmode";
+    static final String PROVISIONING_RUNMODES = "provisioning.runmodes";
 
     public static void convert(File inputFile, File outputFile, ArtifactManager am) throws IOException {
         if (outputFile.exists()) {
@@ -79,7 +79,7 @@ public class FeatureToProvisioning {
             featureName = feature.getId().getArtifactId();
         }
 
-        String runMode = (String) feature.getVariables().remove(PROVISIONING_RUNMODE);
+        String runMode = (String) feature.getVariables().remove(PROVISIONING_RUNMODES);
         String[] runModes = null;
         if (runMode != null) {
             runModes = runMode.split(",");
diff --git a/src/test/java/org/apache/sling/feature/modelconverter/ModelConverterTest.java b/src/test/java/org/apache/sling/feature/modelconverter/ModelConverterTest.java
index 8526fa8..263d479 100644
--- a/src/test/java/org/apache/sling/feature/modelconverter/ModelConverterTest.java
+++ b/src/test/java/org/apache/sling/feature/modelconverter/ModelConverterTest.java
@@ -140,7 +140,7 @@ public class ModelConverterTest {
             files2 = new File[] {getFile("/oak.json")};
         }
 
-        testConvertToProvisioningModel(files1, files2);
+        testConvertToProvisioningModel(files2, files1);
     }
 
     private File getFile(String f) throws URISyntaxException {
@@ -345,6 +345,7 @@ public class ModelConverterTest {
         Model expected = readProvisioningModel(expectedFile);
         Model actual = readProvisioningModel(generatedFiles);
         assertModelsEqual(expected, actual);
+        assertModelsEqual(actual, expected);
     }
 
     public void testConvertToProvisioningModel(File[] jsonFiles1, File[] jsonFiles2) throws URISyntaxException, IOException {
@@ -354,12 +355,17 @@ public class ModelConverterTest {
         Model actual1 = readProvisioningModel(generatedFiles1);
         Model actual2 = readProvisioningModel(generatedFiles2);
         assertModelsEqual(actual1, actual2);
+        assertModelsEqual(actual2, actual1);
     }
 
     private List<File> convertFeatureFilesToProvisioningModel(File[] jsonFiles) throws URISyntaxException, IOException {
         List<File> generatedFiles = new ArrayList<>();
         for (File inFile : jsonFiles) {
-            File outFile = new File(tempDir.toFile(), inFile.getName() + ".txt.generated");
+            File outFile;
+            int counter = 0;
+            do {
+                outFile = new File(tempDir.toFile(), inFile.getName() + (counter++) + ".txt.generated");
+            } while (outFile.exists());
 
             FeatureToProvisioning.convert(inFile, outFile, artifactManager);
             generatedFiles.add(outFile);
diff --git a/src/test/resources/runmodeseparation/oak_mongo.json b/src/test/resources/runmodeseparation/oak_mongo.json
index 9ed9a8e..989f3aa 100644
--- a/src/test/resources/runmodeseparation/oak_mongo.json
+++ b/src/test/resources/runmodeseparation/oak_mongo.json
@@ -4,7 +4,7 @@
     "variables": {
         "oak.version": "1.6.8",
         "provisioning.model.name": "oak",
-        "provisioning.runmode": "oak_mongo"
+        "provisioning.runmodes": "oak_mongo"
     },
 
     "bundles": [
diff --git a/src/test/resources/runmodeseparation/oak_tar.json b/src/test/resources/runmodeseparation/oak_tar.json
index 71ade48..75011d5 100644
--- a/src/test/resources/runmodeseparation/oak_tar.json
+++ b/src/test/resources/runmodeseparation/oak_tar.json
@@ -4,7 +4,7 @@
     "variables": {
         "oak.version": "1.6.8",
         "provisioning.model.name": "oak",
-        "provisioning.runmode": "oak_tar"
+        "provisioning.runmodes": "oak_tar"
     },
     
     "bundles": [

-- 
To stop receiving notification emails like this one, please contact
davidb@apache.org.