Safe state.

Project: http://git-wip-us.apache.org/repos/asf/maven/repo
Commit: http://git-wip-us.apache.org/repos/asf/maven/commit/fd0a6b34
Tree: http://git-wip-us.apache.org/repos/asf/maven/tree/fd0a6b34
Diff: http://git-wip-us.apache.org/repos/asf/maven/diff/fd0a6b34

Branch: refs/heads/MNG-6056-feature-toggle
Commit: fd0a6b34bd529e0b1df0d211b7fb964b7cae4427
Parents: c4e94a2
Author: Karl Heinz Marbaise <[email protected]>
Authored: Sat Aug 13 20:41:22 2016 +0200
Committer: Karl Heinz Marbaise <[email protected]>
Committed: Sat Aug 13 20:41:22 2016 +0200

----------------------------------------------------------------------
 maven-feature/pom.xml                           |  6 +++
 .../maven/feature/DefaultFeatureToggles.java    |  2 +-
 .../org/apache/maven/feature/FeatureKnob.java   | 45 ++++++++++++++++++++
 .../apache/maven/feature/FeatureKnobTest.java   | 33 ++++++++++++++
 4 files changed, 85 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/fd0a6b34/maven-feature/pom.xml
----------------------------------------------------------------------
diff --git a/maven-feature/pom.xml b/maven-feature/pom.xml
index 0ddd5fc..f631bb9 100644
--- a/maven-feature/pom.xml
+++ b/maven-feature/pom.xml
@@ -49,6 +49,12 @@
       <groupId>org.apache.commons</groupId>
       <artifactId>commons-lang3</artifactId>
     </dependency>
+    <dependency>
+      <groupId>org.assertj</groupId>
+      <artifactId>assertj-core</artifactId>
+      <version>1.7.1</version>
+      <scope>test</scope>
+    </dependency>
   </dependencies>
   <build>
     <plugins>

http://git-wip-us.apache.org/repos/asf/maven/blob/fd0a6b34/maven-feature/src/main/java/org/apache/maven/feature/DefaultFeatureToggles.java
----------------------------------------------------------------------
diff --git 
a/maven-feature/src/main/java/org/apache/maven/feature/DefaultFeatureToggles.java
 
b/maven-feature/src/main/java/org/apache/maven/feature/DefaultFeatureToggles.java
index a47dc8c..c969449 100644
--- 
a/maven-feature/src/main/java/org/apache/maven/feature/DefaultFeatureToggles.java
+++ 
b/maven-feature/src/main/java/org/apache/maven/feature/DefaultFeatureToggles.java
@@ -52,7 +52,7 @@ public class DefaultFeatureToggles
         {
             this.activatedFeatureToggles = new ArrayList<>();
             List<ActivatedFeatureToggles> asList = Arrays.asList( 
ActivatedFeatureToggles.getActivatedFeatureToggles());
-            this.activatedFeatureToggles.addAll( asList );
+//            this.activatedFeatureToggles.addAll( asList );
         }
         else
         {

http://git-wip-us.apache.org/repos/asf/maven/blob/fd0a6b34/maven-feature/src/test/java/org/apache/maven/feature/FeatureKnob.java
----------------------------------------------------------------------
diff --git 
a/maven-feature/src/test/java/org/apache/maven/feature/FeatureKnob.java 
b/maven-feature/src/test/java/org/apache/maven/feature/FeatureKnob.java
new file mode 100644
index 0000000..39a76bf
--- /dev/null
+++ b/maven-feature/src/test/java/org/apache/maven/feature/FeatureKnob.java
@@ -0,0 +1,45 @@
+package org.apache.maven.feature;
+
+import org.apache.commons.lang3.StringUtils;
+
+public class FeatureKnob
+{
+
+    public enum FeatureKnobNames
+    {
+        FIRST,
+        SECOND
+    }
+    
+    public static class FeatureNobFirst {
+        public enum FeatureNobValues {
+            First,
+            Second,
+            Third
+        }
+    }
+
+    boolean doesFeatureKnobExist( FeatureKnobNames name )
+    {
+        String property = System.getProperty( name.toString() );
+        if ( StringUtils.isEmpty( property ) )
+        {
+            return false;
+        }
+        else
+        {
+            return true;
+        }
+    }
+
+    public String getFeatureKnob( FeatureKnobNames first )
+    {
+        if (doesFeatureKnobExist( first )) {
+            return StringUtils.EMPTY;
+        } else 
+        {
+            //Good Idea?
+            return StringUtils.EMPTY;
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/maven/blob/fd0a6b34/maven-feature/src/test/java/org/apache/maven/feature/FeatureKnobTest.java
----------------------------------------------------------------------
diff --git 
a/maven-feature/src/test/java/org/apache/maven/feature/FeatureKnobTest.java 
b/maven-feature/src/test/java/org/apache/maven/feature/FeatureKnobTest.java
new file mode 100644
index 0000000..4ad4879
--- /dev/null
+++ b/maven-feature/src/test/java/org/apache/maven/feature/FeatureKnobTest.java
@@ -0,0 +1,33 @@
+package org.apache.maven.feature;
+
+import static org.assertj.core.api.Assertions.assertThat;
+
+import org.apache.maven.feature.FeatureKnob.FeatureKnobNames;
+import org.junit.Before;
+import org.junit.Test;
+
+/**
+ * @author Karl Heinz Marbaise <a 
href="mailto:[email protected]";>[email protected]</a>
+ * @since 3.4.0
+ */
+public class FeatureKnobTest
+{
+
+    private FeatureKnob fn;
+
+    @Before
+    public void before()
+    {
+        fn = new FeatureKnob();
+    }
+
+    @Test
+    public void getActiveFeaturesShouldNotReturnNotNullAndSizeOfListZero()
+    {
+        // mvn -DfeatureKnob1=behaviour1
+        // mvn .. => featureKnob1=defaultBehaviour
+        //
+        assertThat( fn.getFeatureKnob( FeatureKnobNames.FIRST ) ).isEqualTo( 
"XX" );
+    }
+
+}

Reply via email to