git commit: WICKET-4679 XmlPullParser doesn't parse correctly attributes with complex namespace

2012-07-27 Thread mgrigorov
Updated Branches:
  refs/heads/master b23289746 - f3ec15032


WICKET-4679 XmlPullParser doesn't parse correctly attributes with complex 
namespace


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

Branch: refs/heads/master
Commit: f3ec1503219bd01f3ba4d7ca7b52186f33d2cabf
Parents: b232897
Author: Martin Tzvetanov Grigorov mgrigo...@apache.org
Authored: Fri Jul 27 11:29:31 2012 +0300
Committer: Martin Tzvetanov Grigorov mgrigo...@apache.org
Committed: Fri Jul 27 11:29:31 2012 +0300

--
 .../parsers/VariableAssignmentParser.java  |6 +-
 .../parsers/VariableAssignmentParserTest.java  |   55 +++
 2 files changed, 58 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/wicket/blob/f3ec1503/wicket-util/src/main/java/org/apache/wicket/util/parse/metapattern/parsers/VariableAssignmentParser.java
--
diff --git 
a/wicket-util/src/main/java/org/apache/wicket/util/parse/metapattern/parsers/VariableAssignmentParser.java
 
b/wicket-util/src/main/java/org/apache/wicket/util/parse/metapattern/parsers/VariableAssignmentParser.java
index dc49c17..ee4f443 100644
--- 
a/wicket-util/src/main/java/org/apache/wicket/util/parse/metapattern/parsers/VariableAssignmentParser.java
+++ 
b/wicket-util/src/main/java/org/apache/wicket/util/parse/metapattern/parsers/VariableAssignmentParser.java
@@ -29,11 +29,11 @@ import 
org.apache.wicket.util.parse.metapattern.OptionalMetaPattern;
  */
 public final class VariableAssignmentParser extends MetaPatternParser
 {
-   /** The optional namespace like namespace:* */
+   /** The optional namespace like namespace:*[:*] */
private static final MetaPattern namespace = new 
OptionalMetaPattern(new MetaPattern[] {
-   MetaPattern.VARIABLE_NAME, MetaPattern.COLON });
+   MetaPattern.VARIABLE_NAME, MetaPattern.COLON, new 
OptionalMetaPattern(new MetaPattern[] {MetaPattern.VARIABLE_NAME, 
MetaPattern.COLON })});
 
-   /** The key (lvalue) like name or namespace:name */
+   /** The key (lvalue) like name or namespace:name or 
namespace:name:subname */
private final Group key = new Group(new MetaPattern(namespace, 
MetaPattern.XML_ATTRIBUTE_NAME));
 
/** The rvalue of the assignment */

http://git-wip-us.apache.org/repos/asf/wicket/blob/f3ec1503/wicket-util/src/test/java/org/apache/wicket/util/parse/metapattern/parsers/VariableAssignmentParserTest.java
--
diff --git 
a/wicket-util/src/test/java/org/apache/wicket/util/parse/metapattern/parsers/VariableAssignmentParserTest.java
 
b/wicket-util/src/test/java/org/apache/wicket/util/parse/metapattern/parsers/VariableAssignmentParserTest.java
new file mode 100644
index 000..9ff73b9
--- /dev/null
+++ 
b/wicket-util/src/test/java/org/apache/wicket/util/parse/metapattern/parsers/VariableAssignmentParserTest.java
@@ -0,0 +1,55 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the License); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *  http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an AS IS BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.wicket.util.parse.metapattern.parsers;
+
+import org.junit.Assert;
+import org.junit.Test;
+
+/**
+ * @since 1.5.8
+ */
+public class VariableAssignmentParserTest extends Assert
+{
+   /**
+* Tests parsing of attribute names with and without namespaces
+*
+* https://issues.apache.org/jira/browse/WICKET-4679
+*/
+   @Test
+   public void parseAttributeName()
+   {
+   String tagName = tagName;
+
+   VariableAssignmentParser parser = new 
VariableAssignmentParser(tagName +  name='value');
+
+   parser.matcher().find(tagName.length());
+   assertEquals(name, parser.getKey());
+   assertEquals('value', parser.getValue());
+
+   parser = new VariableAssignmentParser(tagName +  

git commit: WICKET-4679 XmlPullParser doesn't parse correctly attributes with complex namespace

2012-07-27 Thread mgrigorov
Updated Branches:
  refs/heads/wicket-1.5.x 4e335440c - e2bca1091


WICKET-4679 XmlPullParser doesn't parse correctly attributes with complex 
namespace


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

Branch: refs/heads/wicket-1.5.x
Commit: e2bca109178febae81c74f976c213b34a83a42bd
Parents: 4e33544
Author: Martin Tzvetanov Grigorov mgrigo...@apache.org
Authored: Fri Jul 27 11:29:31 2012 +0300
Committer: Martin Tzvetanov Grigorov mgrigo...@apache.org
Committed: Fri Jul 27 11:30:34 2012 +0300

--
 .../parsers/VariableAssignmentParser.java  |6 +-
 .../parsers/VariableAssignmentParserTest.java  |   55 +++
 2 files changed, 58 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/wicket/blob/e2bca109/wicket-util/src/main/java/org/apache/wicket/util/parse/metapattern/parsers/VariableAssignmentParser.java
--
diff --git 
a/wicket-util/src/main/java/org/apache/wicket/util/parse/metapattern/parsers/VariableAssignmentParser.java
 
b/wicket-util/src/main/java/org/apache/wicket/util/parse/metapattern/parsers/VariableAssignmentParser.java
index dc49c17..ee4f443 100644
--- 
a/wicket-util/src/main/java/org/apache/wicket/util/parse/metapattern/parsers/VariableAssignmentParser.java
+++ 
b/wicket-util/src/main/java/org/apache/wicket/util/parse/metapattern/parsers/VariableAssignmentParser.java
@@ -29,11 +29,11 @@ import 
org.apache.wicket.util.parse.metapattern.OptionalMetaPattern;
  */
 public final class VariableAssignmentParser extends MetaPatternParser
 {
-   /** The optional namespace like namespace:* */
+   /** The optional namespace like namespace:*[:*] */
private static final MetaPattern namespace = new 
OptionalMetaPattern(new MetaPattern[] {
-   MetaPattern.VARIABLE_NAME, MetaPattern.COLON });
+   MetaPattern.VARIABLE_NAME, MetaPattern.COLON, new 
OptionalMetaPattern(new MetaPattern[] {MetaPattern.VARIABLE_NAME, 
MetaPattern.COLON })});
 
-   /** The key (lvalue) like name or namespace:name */
+   /** The key (lvalue) like name or namespace:name or 
namespace:name:subname */
private final Group key = new Group(new MetaPattern(namespace, 
MetaPattern.XML_ATTRIBUTE_NAME));
 
/** The rvalue of the assignment */

http://git-wip-us.apache.org/repos/asf/wicket/blob/e2bca109/wicket-util/src/test/java/org/apache/wicket/util/parse/metapattern/parsers/VariableAssignmentParserTest.java
--
diff --git 
a/wicket-util/src/test/java/org/apache/wicket/util/parse/metapattern/parsers/VariableAssignmentParserTest.java
 
b/wicket-util/src/test/java/org/apache/wicket/util/parse/metapattern/parsers/VariableAssignmentParserTest.java
new file mode 100644
index 000..9ff73b9
--- /dev/null
+++ 
b/wicket-util/src/test/java/org/apache/wicket/util/parse/metapattern/parsers/VariableAssignmentParserTest.java
@@ -0,0 +1,55 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the License); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *  http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an AS IS BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.wicket.util.parse.metapattern.parsers;
+
+import org.junit.Assert;
+import org.junit.Test;
+
+/**
+ * @since 1.5.8
+ */
+public class VariableAssignmentParserTest extends Assert
+{
+   /**
+* Tests parsing of attribute names with and without namespaces
+*
+* https://issues.apache.org/jira/browse/WICKET-4679
+*/
+   @Test
+   public void parseAttributeName()
+   {
+   String tagName = tagName;
+
+   VariableAssignmentParser parser = new 
VariableAssignmentParser(tagName +  name='value');
+
+   parser.matcher().find(tagName.length());
+   assertEquals(name, parser.getKey());
+   assertEquals('value', parser.getValue());
+
+   parser = new VariableAssignmentParser(tagName +