You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ch...@apache.org on 2013/07/03 15:35:21 UTC

git commit: updated refs/heads/master to 141fbc7

Updated Branches:
  refs/heads/master 90a15bfff -> 141fbc7ef


cidr compare fixme addressed


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

Branch: refs/heads/master
Commit: 141fbc7ef7a89ee1e046366f1e2e6dffbe4e5be7
Parents: 90a15bf
Author: Daan Hoogland <da...@onecht.net>
Authored: Wed Jul 3 14:03:30 2013 +0200
Committer: Chip Childers <ch...@apache.org>
Committed: Wed Jul 3 09:28:49 2013 -0400

----------------------------------------------------------------------
 .../security/SecurityGroupManagerImpl.java      | 13 +++-
 .../security/SecurityGroupManagerImplTest.java  | 62 ++++++++++++++++++++
 2 files changed, 74 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cloudstack/blob/141fbc7e/server/src/com/cloud/network/security/SecurityGroupManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/security/SecurityGroupManagerImpl.java b/server/src/com/cloud/network/security/SecurityGroupManagerImpl.java
index 1c189c4..ce6f8ac 100755
--- a/server/src/com/cloud/network/security/SecurityGroupManagerImpl.java
+++ b/server/src/com/cloud/network/security/SecurityGroupManagerImpl.java
@@ -322,7 +322,18 @@ public class SecurityGroupManagerImpl extends ManagerBase implements SecurityGro
 
         @Override
         public int compare(String cidr1, String cidr2) {
-            return cidr1.compareTo(cidr2); // FIXME
+           // parse both to find significance first (low number of bits is high)
+           // if equal then just do a string compare
+           if(significance(cidr1) == significance(cidr2)) {
+                return cidr1.compareTo(cidr2);
+           }
+           else {
+                return significance(cidr2) - significance(cidr1);
+           }
+        }
+        private int significance(String cidr)
+        {
+           return Integer.parseInt(cidr.substring(cidr.indexOf('/')+1));
         }
 
     }

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/141fbc7e/server/test/com/cloud/network/security/SecurityGroupManagerImplTest.java
----------------------------------------------------------------------
diff --git a/server/test/com/cloud/network/security/SecurityGroupManagerImplTest.java b/server/test/com/cloud/network/security/SecurityGroupManagerImplTest.java
new file mode 100644
index 0000000..8a6b95b
--- /dev/null
+++ b/server/test/com/cloud/network/security/SecurityGroupManagerImplTest.java
@@ -0,0 +1,62 @@
+/**
+ * 
+ */
+package com.cloud.network.security;
+
+import java.util.Set;
+import java.util.TreeSet;
+
+import javax.inject.Inject;
+
+import junit.framework.TestCase;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.springframework.test.context.ContextConfiguration;
+import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
+
+import com.cloud.network.security.SecurityGroupManagerImpl.CidrComparator;
+
+/**
+ * @author daan
+ *
+ */
+@RunWith(SpringJUnit4ClassRunner.class)
+@ContextConfiguration(locations = "classpath:/SecurityGroupManagerTestContext.xml")
+public class SecurityGroupManagerImplTest extends TestCase {
+    @Inject
+    SecurityGroupManagerImpl2 _sgMgr = null;
+    Set<String> cidrs;
+    @Before
+    public void setup() throws Exception {
+        cidrs =  new TreeSet<String>(new CidrComparator());
+    }
+    @Test (expected=NumberFormatException.class)
+    public void emptyCidrCompareTest() {
+        cidrs.add("");
+        cidrs.add("");
+    }
+    @Test (expected=NumberFormatException.class)
+    public void faultyCidrCompareTest() {
+        cidrs.add("111.222.333.444");
+        cidrs.add("111.222.333.444");
+    }
+    @Test
+    public void sameCidrCompareTest() {
+        cidrs.add("1.2.3.4/5");
+        cidrs.add("1.2.3.4/5");
+        assertEquals("only one element expected",1,cidrs.size());
+        CidrComparator cmp = new CidrComparator();
+        assertEquals("should be 0",0,cmp.compare("1.2.3.4/5","1.2.3.4/5"));
+    }
+    @Test
+    public void CidrCompareTest() {
+        cidrs.add("1.2.3.4/5");
+        cidrs.add("1.2.3.4/6");
+        assertEquals("two element expected",2,cidrs.size());
+        CidrComparator cmp = new CidrComparator();
+        assertEquals("should be 1",1,cmp.compare("1.2.3.4/5","1.2.3.4/6"));
+        assertEquals("should be -2",-2,cmp.compare("1.2.3.4/5","1.2.3.4/3"));
+    }
+}


Re: git commit: updated refs/heads/master to 141fbc7

Posted by Daan Hoogland <da...@gmail.com>.
should that be a new patch?


On Wed, Jul 3, 2013 at 4:29 PM, Daan Hoogland <da...@gmail.com>wrote:

> ai,
>
> will fix
>
>
> On Wed, Jul 3, 2013 at 3:49 PM, David Nalley <da...@gnsa.us> wrote:
>
>> License header missing in the test
>>
>> --David
>>
>> On Wed, Jul 3, 2013 at 9:35 AM,  <ch...@apache.org> wrote:
>> > Updated Branches:
>> >   refs/heads/master 90a15bfff -> 141fbc7ef
>> >
>> >
>> > cidr compare fixme addressed
>> >
>> >
>> > Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
>> > Commit:
>> http://git-wip-us.apache.org/repos/asf/cloudstack/commit/141fbc7e
>> > Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/141fbc7e
>> > Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/141fbc7e
>> >
>> > Branch: refs/heads/master
>> > Commit: 141fbc7ef7a89ee1e046366f1e2e6dffbe4e5be7
>> > Parents: 90a15bf
>> > Author: Daan Hoogland <da...@onecht.net>
>> > Authored: Wed Jul 3 14:03:30 2013 +0200
>> > Committer: Chip Childers <ch...@apache.org>
>> > Committed: Wed Jul 3 09:28:49 2013 -0400
>> >
>> > ----------------------------------------------------------------------
>> >  .../security/SecurityGroupManagerImpl.java      | 13 +++-
>> >  .../security/SecurityGroupManagerImplTest.java  | 62
>> ++++++++++++++++++++
>> >  2 files changed, 74 insertions(+), 1 deletion(-)
>> > ----------------------------------------------------------------------
>> >
>> >
>> >
>> http://git-wip-us.apache.org/repos/asf/cloudstack/blob/141fbc7e/server/src/com/cloud/network/security/SecurityGroupManagerImpl.java
>> > ----------------------------------------------------------------------
>> > diff --git
>> a/server/src/com/cloud/network/security/SecurityGroupManagerImpl.java
>> b/server/src/com/cloud/network/security/SecurityGroupManagerImpl.java
>> > index 1c189c4..ce6f8ac 100755
>> > ---
>> a/server/src/com/cloud/network/security/SecurityGroupManagerImpl.java
>> > +++
>> b/server/src/com/cloud/network/security/SecurityGroupManagerImpl.java
>> > @@ -322,7 +322,18 @@ public class SecurityGroupManagerImpl extends
>> ManagerBase implements SecurityGro
>> >
>> >          @Override
>> >          public int compare(String cidr1, String cidr2) {
>> > -            return cidr1.compareTo(cidr2); // FIXME
>> > +           // parse both to find significance first (low number of
>> bits is high)
>> > +           // if equal then just do a string compare
>> > +           if(significance(cidr1) == significance(cidr2)) {
>> > +                return cidr1.compareTo(cidr2);
>> > +           }
>> > +           else {
>> > +                return significance(cidr2) - significance(cidr1);
>> > +           }
>> > +        }
>> > +        private int significance(String cidr)
>> > +        {
>> > +           return
>> Integer.parseInt(cidr.substring(cidr.indexOf('/')+1));
>> >          }
>> >
>> >      }
>> >
>> >
>> http://git-wip-us.apache.org/repos/asf/cloudstack/blob/141fbc7e/server/test/com/cloud/network/security/SecurityGroupManagerImplTest.java
>> > ----------------------------------------------------------------------
>> > diff --git
>> a/server/test/com/cloud/network/security/SecurityGroupManagerImplTest.java
>> b/server/test/com/cloud/network/security/SecurityGroupManagerImplTest.java
>> > new file mode 100644
>> > index 0000000..8a6b95b
>> > --- /dev/null
>> > +++
>> b/server/test/com/cloud/network/security/SecurityGroupManagerImplTest.java
>> > @@ -0,0 +1,62 @@
>> > +/**
>> > + *
>> > + */
>> > +package com.cloud.network.security;
>> > +
>> > +import java.util.Set;
>> > +import java.util.TreeSet;
>> > +
>> > +import javax.inject.Inject;
>> > +
>> > +import junit.framework.TestCase;
>> > +
>> > +import org.junit.Before;
>> > +import org.junit.Test;
>> > +import org.junit.runner.RunWith;
>> > +import org.springframework.test.context.ContextConfiguration;
>> > +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
>> > +
>> > +import
>> com.cloud.network.security.SecurityGroupManagerImpl.CidrComparator;
>> > +
>> > +/**
>> > + * @author daan
>> > + *
>> > + */
>> > +@RunWith(SpringJUnit4ClassRunner.class)
>> > +@ContextConfiguration(locations =
>> "classpath:/SecurityGroupManagerTestContext.xml")
>> > +public class SecurityGroupManagerImplTest extends TestCase {
>> > +    @Inject
>> > +    SecurityGroupManagerImpl2 _sgMgr = null;
>> > +    Set<String> cidrs;
>> > +    @Before
>> > +    public void setup() throws Exception {
>> > +        cidrs =  new TreeSet<String>(new CidrComparator());
>> > +    }
>> > +    @Test (expected=NumberFormatException.class)
>> > +    public void emptyCidrCompareTest() {
>> > +        cidrs.add("");
>> > +        cidrs.add("");
>> > +    }
>> > +    @Test (expected=NumberFormatException.class)
>> > +    public void faultyCidrCompareTest() {
>> > +        cidrs.add("111.222.333.444");
>> > +        cidrs.add("111.222.333.444");
>> > +    }
>> > +    @Test
>> > +    public void sameCidrCompareTest() {
>> > +        cidrs.add("1.2.3.4/5");
>> > +        cidrs.add("1.2.3.4/5");
>> > +        assertEquals("only one element expected",1,cidrs.size());
>> > +        CidrComparator cmp = new CidrComparator();
>> > +        assertEquals("should be 0",0,cmp.compare("1.2.3.4/5","
>> 1.2.3.4/5"));
>> > +    }
>> > +    @Test
>> > +    public void CidrCompareTest() {
>> > +        cidrs.add("1.2.3.4/5");
>> > +        cidrs.add("1.2.3.4/6");
>> > +        assertEquals("two element expected",2,cidrs.size());
>> > +        CidrComparator cmp = new CidrComparator();
>> > +        assertEquals("should be 1",1,cmp.compare("1.2.3.4/5","
>> 1.2.3.4/6"));
>> > +        assertEquals("should be -2",-2,cmp.compare("1.2.3.4/5","
>> 1.2.3.4/3"));
>> > +    }
>> > +}
>> >
>>
>
>

Re: git commit: updated refs/heads/master to 141fbc7

Posted by Daan Hoogland <da...@gmail.com>.
ai,

will fix


On Wed, Jul 3, 2013 at 3:49 PM, David Nalley <da...@gnsa.us> wrote:

> License header missing in the test
>
> --David
>
> On Wed, Jul 3, 2013 at 9:35 AM,  <ch...@apache.org> wrote:
> > Updated Branches:
> >   refs/heads/master 90a15bfff -> 141fbc7ef
> >
> >
> > cidr compare fixme addressed
> >
> >
> > Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
> > Commit:
> http://git-wip-us.apache.org/repos/asf/cloudstack/commit/141fbc7e
> > Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/141fbc7e
> > Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/141fbc7e
> >
> > Branch: refs/heads/master
> > Commit: 141fbc7ef7a89ee1e046366f1e2e6dffbe4e5be7
> > Parents: 90a15bf
> > Author: Daan Hoogland <da...@onecht.net>
> > Authored: Wed Jul 3 14:03:30 2013 +0200
> > Committer: Chip Childers <ch...@apache.org>
> > Committed: Wed Jul 3 09:28:49 2013 -0400
> >
> > ----------------------------------------------------------------------
> >  .../security/SecurityGroupManagerImpl.java      | 13 +++-
> >  .../security/SecurityGroupManagerImplTest.java  | 62
> ++++++++++++++++++++
> >  2 files changed, 74 insertions(+), 1 deletion(-)
> > ----------------------------------------------------------------------
> >
> >
> >
> http://git-wip-us.apache.org/repos/asf/cloudstack/blob/141fbc7e/server/src/com/cloud/network/security/SecurityGroupManagerImpl.java
> > ----------------------------------------------------------------------
> > diff --git
> a/server/src/com/cloud/network/security/SecurityGroupManagerImpl.java
> b/server/src/com/cloud/network/security/SecurityGroupManagerImpl.java
> > index 1c189c4..ce6f8ac 100755
> > --- a/server/src/com/cloud/network/security/SecurityGroupManagerImpl.java
> > +++ b/server/src/com/cloud/network/security/SecurityGroupManagerImpl.java
> > @@ -322,7 +322,18 @@ public class SecurityGroupManagerImpl extends
> ManagerBase implements SecurityGro
> >
> >          @Override
> >          public int compare(String cidr1, String cidr2) {
> > -            return cidr1.compareTo(cidr2); // FIXME
> > +           // parse both to find significance first (low number of bits
> is high)
> > +           // if equal then just do a string compare
> > +           if(significance(cidr1) == significance(cidr2)) {
> > +                return cidr1.compareTo(cidr2);
> > +           }
> > +           else {
> > +                return significance(cidr2) - significance(cidr1);
> > +           }
> > +        }
> > +        private int significance(String cidr)
> > +        {
> > +           return Integer.parseInt(cidr.substring(cidr.indexOf('/')+1));
> >          }
> >
> >      }
> >
> >
> http://git-wip-us.apache.org/repos/asf/cloudstack/blob/141fbc7e/server/test/com/cloud/network/security/SecurityGroupManagerImplTest.java
> > ----------------------------------------------------------------------
> > diff --git
> a/server/test/com/cloud/network/security/SecurityGroupManagerImplTest.java
> b/server/test/com/cloud/network/security/SecurityGroupManagerImplTest.java
> > new file mode 100644
> > index 0000000..8a6b95b
> > --- /dev/null
> > +++
> b/server/test/com/cloud/network/security/SecurityGroupManagerImplTest.java
> > @@ -0,0 +1,62 @@
> > +/**
> > + *
> > + */
> > +package com.cloud.network.security;
> > +
> > +import java.util.Set;
> > +import java.util.TreeSet;
> > +
> > +import javax.inject.Inject;
> > +
> > +import junit.framework.TestCase;
> > +
> > +import org.junit.Before;
> > +import org.junit.Test;
> > +import org.junit.runner.RunWith;
> > +import org.springframework.test.context.ContextConfiguration;
> > +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
> > +
> > +import
> com.cloud.network.security.SecurityGroupManagerImpl.CidrComparator;
> > +
> > +/**
> > + * @author daan
> > + *
> > + */
> > +@RunWith(SpringJUnit4ClassRunner.class)
> > +@ContextConfiguration(locations =
> "classpath:/SecurityGroupManagerTestContext.xml")
> > +public class SecurityGroupManagerImplTest extends TestCase {
> > +    @Inject
> > +    SecurityGroupManagerImpl2 _sgMgr = null;
> > +    Set<String> cidrs;
> > +    @Before
> > +    public void setup() throws Exception {
> > +        cidrs =  new TreeSet<String>(new CidrComparator());
> > +    }
> > +    @Test (expected=NumberFormatException.class)
> > +    public void emptyCidrCompareTest() {
> > +        cidrs.add("");
> > +        cidrs.add("");
> > +    }
> > +    @Test (expected=NumberFormatException.class)
> > +    public void faultyCidrCompareTest() {
> > +        cidrs.add("111.222.333.444");
> > +        cidrs.add("111.222.333.444");
> > +    }
> > +    @Test
> > +    public void sameCidrCompareTest() {
> > +        cidrs.add("1.2.3.4/5");
> > +        cidrs.add("1.2.3.4/5");
> > +        assertEquals("only one element expected",1,cidrs.size());
> > +        CidrComparator cmp = new CidrComparator();
> > +        assertEquals("should be 0",0,cmp.compare("1.2.3.4/5","1.2.3.4/5
> "));
> > +    }
> > +    @Test
> > +    public void CidrCompareTest() {
> > +        cidrs.add("1.2.3.4/5");
> > +        cidrs.add("1.2.3.4/6");
> > +        assertEquals("two element expected",2,cidrs.size());
> > +        CidrComparator cmp = new CidrComparator();
> > +        assertEquals("should be 1",1,cmp.compare("1.2.3.4/5","1.2.3.4/6
> "));
> > +        assertEquals("should be -2",-2,cmp.compare("1.2.3.4/5","
> 1.2.3.4/3"));
> > +    }
> > +}
> >
>

Re: git commit: updated refs/heads/master to 141fbc7

Posted by David Nalley <da...@gnsa.us>.
License header missing in the test

--David

On Wed, Jul 3, 2013 at 9:35 AM,  <ch...@apache.org> wrote:
> Updated Branches:
>   refs/heads/master 90a15bfff -> 141fbc7ef
>
>
> cidr compare fixme addressed
>
>
> Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
> Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/141fbc7e
> Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/141fbc7e
> Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/141fbc7e
>
> Branch: refs/heads/master
> Commit: 141fbc7ef7a89ee1e046366f1e2e6dffbe4e5be7
> Parents: 90a15bf
> Author: Daan Hoogland <da...@onecht.net>
> Authored: Wed Jul 3 14:03:30 2013 +0200
> Committer: Chip Childers <ch...@apache.org>
> Committed: Wed Jul 3 09:28:49 2013 -0400
>
> ----------------------------------------------------------------------
>  .../security/SecurityGroupManagerImpl.java      | 13 +++-
>  .../security/SecurityGroupManagerImplTest.java  | 62 ++++++++++++++++++++
>  2 files changed, 74 insertions(+), 1 deletion(-)
> ----------------------------------------------------------------------
>
>
> http://git-wip-us.apache.org/repos/asf/cloudstack/blob/141fbc7e/server/src/com/cloud/network/security/SecurityGroupManagerImpl.java
> ----------------------------------------------------------------------
> diff --git a/server/src/com/cloud/network/security/SecurityGroupManagerImpl.java b/server/src/com/cloud/network/security/SecurityGroupManagerImpl.java
> index 1c189c4..ce6f8ac 100755
> --- a/server/src/com/cloud/network/security/SecurityGroupManagerImpl.java
> +++ b/server/src/com/cloud/network/security/SecurityGroupManagerImpl.java
> @@ -322,7 +322,18 @@ public class SecurityGroupManagerImpl extends ManagerBase implements SecurityGro
>
>          @Override
>          public int compare(String cidr1, String cidr2) {
> -            return cidr1.compareTo(cidr2); // FIXME
> +           // parse both to find significance first (low number of bits is high)
> +           // if equal then just do a string compare
> +           if(significance(cidr1) == significance(cidr2)) {
> +                return cidr1.compareTo(cidr2);
> +           }
> +           else {
> +                return significance(cidr2) - significance(cidr1);
> +           }
> +        }
> +        private int significance(String cidr)
> +        {
> +           return Integer.parseInt(cidr.substring(cidr.indexOf('/')+1));
>          }
>
>      }
>
> http://git-wip-us.apache.org/repos/asf/cloudstack/blob/141fbc7e/server/test/com/cloud/network/security/SecurityGroupManagerImplTest.java
> ----------------------------------------------------------------------
> diff --git a/server/test/com/cloud/network/security/SecurityGroupManagerImplTest.java b/server/test/com/cloud/network/security/SecurityGroupManagerImplTest.java
> new file mode 100644
> index 0000000..8a6b95b
> --- /dev/null
> +++ b/server/test/com/cloud/network/security/SecurityGroupManagerImplTest.java
> @@ -0,0 +1,62 @@
> +/**
> + *
> + */
> +package com.cloud.network.security;
> +
> +import java.util.Set;
> +import java.util.TreeSet;
> +
> +import javax.inject.Inject;
> +
> +import junit.framework.TestCase;
> +
> +import org.junit.Before;
> +import org.junit.Test;
> +import org.junit.runner.RunWith;
> +import org.springframework.test.context.ContextConfiguration;
> +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
> +
> +import com.cloud.network.security.SecurityGroupManagerImpl.CidrComparator;
> +
> +/**
> + * @author daan
> + *
> + */
> +@RunWith(SpringJUnit4ClassRunner.class)
> +@ContextConfiguration(locations = "classpath:/SecurityGroupManagerTestContext.xml")
> +public class SecurityGroupManagerImplTest extends TestCase {
> +    @Inject
> +    SecurityGroupManagerImpl2 _sgMgr = null;
> +    Set<String> cidrs;
> +    @Before
> +    public void setup() throws Exception {
> +        cidrs =  new TreeSet<String>(new CidrComparator());
> +    }
> +    @Test (expected=NumberFormatException.class)
> +    public void emptyCidrCompareTest() {
> +        cidrs.add("");
> +        cidrs.add("");
> +    }
> +    @Test (expected=NumberFormatException.class)
> +    public void faultyCidrCompareTest() {
> +        cidrs.add("111.222.333.444");
> +        cidrs.add("111.222.333.444");
> +    }
> +    @Test
> +    public void sameCidrCompareTest() {
> +        cidrs.add("1.2.3.4/5");
> +        cidrs.add("1.2.3.4/5");
> +        assertEquals("only one element expected",1,cidrs.size());
> +        CidrComparator cmp = new CidrComparator();
> +        assertEquals("should be 0",0,cmp.compare("1.2.3.4/5","1.2.3.4/5"));
> +    }
> +    @Test
> +    public void CidrCompareTest() {
> +        cidrs.add("1.2.3.4/5");
> +        cidrs.add("1.2.3.4/6");
> +        assertEquals("two element expected",2,cidrs.size());
> +        CidrComparator cmp = new CidrComparator();
> +        assertEquals("should be 1",1,cmp.compare("1.2.3.4/5","1.2.3.4/6"));
> +        assertEquals("should be -2",-2,cmp.compare("1.2.3.4/5","1.2.3.4/3"));
> +    }
> +}
>