You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by am...@apache.org on 2007/02/15 07:52:57 UTC

svn commit: r507836 - in /webservices/axis2/trunk/java/modules/adb-codegen: src/org/apache/axis2/schema/template/ADBBeanTemplate.xsl test/org/apache/axis2/schema/testsuite/IntElementsTest.java test/org/apache/axis2/schema/testsuite/OuterElementsTest.java

Author: amilas
Date: Wed Feb 14 22:52:56 2007
New Revision: 507836

URL: http://svn.apache.org/viewvc?view=rev&rev=507836
Log:
fixed the issue AXIS2-1272. set the MIN_VALUE as the null value for int,long,short and byte. and set the NaN as the 
null value for float and double.

Modified:
    webservices/axis2/trunk/java/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate.xsl
    webservices/axis2/trunk/java/modules/adb-codegen/test/org/apache/axis2/schema/testsuite/IntElementsTest.java
    webservices/axis2/trunk/java/modules/adb-codegen/test/org/apache/axis2/schema/testsuite/OuterElementsTest.java

Modified: webservices/axis2/trunk/java/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate.xsl
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate.xsl?view=diff&rev=507836&r1=507835&r2=507836
==============================================================================
--- webservices/axis2/trunk/java/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate.xsl (original)
+++ webservices/axis2/trunk/java/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate.xsl Wed Feb 14 22:52:56 2007
@@ -436,7 +436,40 @@
                                 <xsl:choose>
                                    <xsl:when test="@primitive and not(@array)">
                                        // setting primitive attribute tracker to true
-                                       <xsl:value-of select="$settingTracker"/> = true;
+                                       <xsl:choose>
+                                           <xsl:when test="$propertyType='int'">
+                                               if (param==Integer.MIN_VALUE) {
+                                           </xsl:when>
+                                           <xsl:when test="$propertyType='long'">
+                                               if (param==Long.MIN_VALUE) {
+                                           </xsl:when>
+                                           <xsl:when test="$propertyType='byte'">
+                                               if (param==Byte.MIN_VALUE) {
+                                           </xsl:when>
+                                           <xsl:when test="$propertyType='double'">
+                                               if (param==Double.NaN) {
+                                           </xsl:when>
+                                           <xsl:when test="$propertyType='float'">
+                                               if (param==Float.NaN) {
+                                           </xsl:when>
+                                           <xsl:when test="$propertyType='short'">
+                                               if (param==Short.MIN_VALUE) {
+                                           </xsl:when>
+                                           <xsl:otherwise>
+                                               if (false) {
+                                           </xsl:otherwise>
+                                       </xsl:choose>
+                                            <xsl:choose>
+                                              <xsl:when test="@nillable">
+                                                  <xsl:value-of select="$settingTracker"/> = true;
+                                              </xsl:when>
+                                              <xsl:otherwise>
+                                                  <xsl:value-of select="$settingTracker"/> = false;
+                                              </xsl:otherwise>
+                                          </xsl:choose>
+                                       } else {
+                                          <xsl:value-of select="$settingTracker"/> = true;
+                                       }
                                    </xsl:when>
                                    <xsl:otherwise>
                                        if (param != null){
@@ -830,6 +863,7 @@
                     <xsl:variable name="settingTracker">local<xsl:value-of select="@javaname"/>Tracker</xsl:variable>
 
                     <xsl:variable name="propertyType"><xsl:value-of select="@type"/></xsl:variable>
+                    <xsl:variable name="propertyBaseType"><xsl:value-of select="@arrayBaseType"/></xsl:variable>
 
                     <xsl:if test="$min=0 or $choice"> if (<xsl:value-of select="$settingTracker"/>){</xsl:if>
                     <xsl:choose>
@@ -1120,27 +1154,33 @@
                                    prefix =  emptyNamespace ? null : xmlWriter.getPrefix(namespace);
                                    for (int i = 0;i &lt; <xsl:value-of select="$varName"/>.length;i++){
                                         <xsl:if test="@primitive">
-                                            if (!emptyNamespace) {
-                                                if (prefix == null) {
-                                                    java.lang.String prefix2 = org.apache.axis2.databinding.utils.BeanUtil.getUniquePrefix();
-
-                                                    xmlWriter.writeStartElement(prefix2,"<xsl:value-of select="$propertyName"/>", namespace);
-                                                    xmlWriter.writeNamespace(prefix2, namespace);
-                                                    xmlWriter.setPrefix(prefix2, namespace);
-
-                                                } else {
-                                                    xmlWriter.writeStartElement(namespace,"<xsl:value-of select="$propertyName"/>");
-                                                }
-
-                                            } else {
-                                                xmlWriter.writeStartElement("<xsl:value-of select="$propertyName"/>");
-                                            }
-                                            xmlWriter.writeCharacters(org.apache.axis2.databinding.utils.ConverterUtil.convertToString(<xsl:value-of select="$varName"/>[i]));
-                                            xmlWriter.writeEndElement();
-
+                                            <xsl:choose>
+                                               <xsl:when test="$propertyBaseType='int'">
+                                                   if (<xsl:value-of select="$varName"/>[i]!=Integer.MIN_VALUE) {
+                                               </xsl:when>
+                                               <xsl:when test="$propertyBaseType='long'">
+                                                   if (<xsl:value-of select="$varName"/>[i]!=Long.MIN_VALUE) {
+                                               </xsl:when>
+                                               <xsl:when test="$propertyBaseType='byte'">
+                                                   if (<xsl:value-of select="$varName"/>[i]!=Byte.MIN_VALUE) {
+                                               </xsl:when>
+                                               <xsl:when test="$propertyBaseType='double'">
+                                                   if (<xsl:value-of select="$varName"/>[i]!=Double.NaN) {
+                                               </xsl:when>
+                                               <xsl:when test="$propertyBaseType='float'">
+                                                   if (<xsl:value-of select="$varName"/>[i]!=Float.NaN) {
+                                               </xsl:when>
+                                               <xsl:when test="$propertyBaseType='short'">
+                                                   if (<xsl:value-of select="$varName"/>[i]!=Short.MIN_VALUE) {
+                                               </xsl:when>
+                                               <xsl:otherwise>
+                                                   if (true) {
+                                               </xsl:otherwise>
+                                           </xsl:choose>
                                         </xsl:if>
                                         <xsl:if test="not(@primitive)">
                                             if (<xsl:value-of select="$varName"/>[i] != null){
+                                        </xsl:if>
                                                 if (!emptyNamespace) {
                                                     if (prefix == null) {
                                                         java.lang.String prefix2 = org.apache.axis2.databinding.utils.BeanUtil.getUniquePrefix();
@@ -1156,51 +1196,58 @@
                                                 } else {
                                                     xmlWriter.writeStartElement("<xsl:value-of select="$propertyName"/>");
                                                 }
-                                            <xsl:choose>
-                                                <xsl:when test="$propertyType='java.lang.String[]'">
-                                                    xmlWriter.writeCharacters(<xsl:value-of select="$varName"/>[i]);
-                                                </xsl:when>
-                                                <xsl:otherwise>
-                                                    xmlWriter.writeCharacters(org.apache.axis2.databinding.utils.ConverterUtil.convertToString(<xsl:value-of select="$varName"/>[i]));
-                                                </xsl:otherwise>
-                                            </xsl:choose>
+
+                                            <xsl:if test="@primitive">
+                                                xmlWriter.writeCharacters(org.apache.axis2.databinding.utils.ConverterUtil.convertToString(<xsl:value-of select="$varName"/>[i]));
                                                 xmlWriter.writeEndElement();
+                                            </xsl:if>
 
-                                            } else {
-                                               <xsl:choose>
-                                                   <xsl:when test="@nillable">
-                                                       // write null attribute
-                                                        namespace = "<xsl:value-of select="$namespace"/>";
-                                                        if (! namespace.equals("")) {
-                                                            prefix = xmlWriter.getPrefix(namespace);
-
-                                                            if (prefix == null) {
-                                                                prefix = org.apache.axis2.databinding.utils.BeanUtil.getUniquePrefix();
-
-                                                                xmlWriter.writeStartElement(prefix,"<xsl:value-of select="$propertyName"/>", namespace);
-                                                                xmlWriter.writeNamespace(prefix, namespace);
-                                                                xmlWriter.setPrefix(prefix, namespace);
+                                            <xsl:if test="not(@primitive)">
+                                                <xsl:choose>
+                                                    <xsl:when test="$propertyType='java.lang.String[]'">
+                                                        xmlWriter.writeCharacters(<xsl:value-of select="$varName"/>[i]);
+                                                    </xsl:when>
+                                                    <xsl:otherwise>
+                                                        xmlWriter.writeCharacters(org.apache.axis2.databinding.utils.ConverterUtil.convertToString(<xsl:value-of select="$varName"/>[i]));
+                                                    </xsl:otherwise>
+                                                </xsl:choose>
+                                                xmlWriter.writeEndElement();
+                                              </xsl:if>
+                                                } else {
+                                                   <xsl:choose>
+                                                       <xsl:when test="@nillable">
+                                                           // write null attribute
+                                                            namespace = "<xsl:value-of select="$namespace"/>";
+                                                            if (! namespace.equals("")) {
+                                                                prefix = xmlWriter.getPrefix(namespace);
+
+                                                                if (prefix == null) {
+                                                                    prefix = org.apache.axis2.databinding.utils.BeanUtil.getUniquePrefix();
+
+                                                                    xmlWriter.writeStartElement(prefix,"<xsl:value-of select="$propertyName"/>", namespace);
+                                                                    xmlWriter.writeNamespace(prefix, namespace);
+                                                                    xmlWriter.setPrefix(prefix, namespace);
+
+                                                                } else {
+                                                                    xmlWriter.writeStartElement(namespace,"<xsl:value-of select="$propertyName"/>");
+                                                                }
 
                                                             } else {
-                                                                xmlWriter.writeStartElement(namespace,"<xsl:value-of select="$propertyName"/>");
+                                                                xmlWriter.writeStartElement("<xsl:value-of select="$propertyName"/>");
                                                             }
+                                                            writeAttribute("xsi","http://www.w3.org/2001/XMLSchema-instance","nil","1",xmlWriter);
+                                                            xmlWriter.writeEndElement();
+                                                       </xsl:when>
+                                                       <xsl:when test="$min=0">
+                                                           // we have to do nothing since minOccurs is zero
+                                                       </xsl:when>
+                                                       <xsl:otherwise>
+                                                           throw new RuntimeException("<xsl:value-of select="$propertyName"/> cannot be null!!");
+                                                       </xsl:otherwise>
 
-                                                        } else {
-                                                            xmlWriter.writeStartElement("<xsl:value-of select="$propertyName"/>");
-                                                        }
-                                                        writeAttribute("xsi","http://www.w3.org/2001/XMLSchema-instance","nil","1",xmlWriter);
-                                                        xmlWriter.writeEndElement();
-                                                   </xsl:when>
-                                                   <xsl:when test="$min=0">
-                                                       // we have to do nothing since minOccurs is zero
-                                                   </xsl:when>
-                                                   <xsl:otherwise>
-                                                       throw new RuntimeException("<xsl:value-of select="$propertyName"/> cannot be null!!");
-                                                   </xsl:otherwise>
+                                                   </xsl:choose>
+                                                }
 
-                                               </xsl:choose>
-                                            }
-                                        </xsl:if>
                                    }
                              } else {
                                  <xsl:choose>
@@ -1336,7 +1383,41 @@
                                           }
                                     </xsl:if>
                                     <xsl:if test="@primitive">
-                                       xmlWriter.writeCharacters(org.apache.axis2.databinding.utils.ConverterUtil.convertToString(<xsl:value-of select="$varName"/>));
+                                       <!-- we have to check for nillability with min value -->
+                                       <xsl:choose>
+                                           <xsl:when test="$propertyType='int'">
+                                               if (<xsl:value-of select="$varName"/>==Integer.MIN_VALUE) {
+                                           </xsl:when>
+                                           <xsl:when test="$propertyType='long'">
+                                               if (<xsl:value-of select="$varName"/>==Long.MIN_VALUE) {
+                                           </xsl:when>
+                                           <xsl:when test="$propertyType='byte'">
+                                               if (<xsl:value-of select="$varName"/>==Byte.MIN_VALUE) {
+                                           </xsl:when>
+                                           <xsl:when test="$propertyType='double'">
+                                               if (<xsl:value-of select="$varName"/>==Double.NaN) {
+                                           </xsl:when>
+                                           <xsl:when test="$propertyType='float'">
+                                               if (<xsl:value-of select="$varName"/>==Float.NaN) {
+                                           </xsl:when>
+                                           <xsl:when test="$propertyType='short'">
+                                               if (<xsl:value-of select="$varName"/>==Short.MIN_VALUE) {
+                                           </xsl:when>
+                                           <xsl:otherwise>
+                                               if (false) {
+                                           </xsl:otherwise>
+                                       </xsl:choose>
+                                                <xsl:choose>
+                                                      <xsl:when test="@nillable">
+                                                         writeAttribute("xsi","http://www.w3.org/2001/XMLSchema-instance","nil","1",xmlWriter);
+                                                      </xsl:when>
+                                                      <xsl:otherwise>
+                                                         throw new RuntimeException("<xsl:value-of select="$propertyName"/> cannot be null!!");
+                                                      </xsl:otherwise>
+                                                  </xsl:choose>
+                                               } else {
+                                                    xmlWriter.writeCharacters(org.apache.axis2.databinding.utils.ConverterUtil.convertToString(<xsl:value-of select="$varName"/>));
+                                               }
                                     </xsl:if>
                                  </xsl:otherwise>
                              </xsl:choose>
@@ -1463,7 +1544,42 @@
                                          }
                                     </xsl:if>
                             <xsl:if test="$primitive">
-                               xmlWriter.writeCharacters(org.apache.axis2.databinding.utils.ConverterUtil.convertToString(<xsl:value-of select="$varName"/>));
+
+                               <!-- we have to check for nillability with min value -->
+                                       <xsl:choose>
+                                           <xsl:when test="$propertyType='int'">
+                                               if (<xsl:value-of select="$varName"/>==Integer.MIN_VALUE) {
+                                           </xsl:when>
+                                           <xsl:when test="$propertyType='long'">
+                                               if (<xsl:value-of select="$varName"/>==Long.MIN_VALUE) {
+                                           </xsl:when>
+                                           <xsl:when test="$propertyType='byte'">
+                                               if (<xsl:value-of select="$varName"/>==Byte.MIN_VALUE) {
+                                           </xsl:when>
+                                           <xsl:when test="$propertyType='double'">
+                                               if (<xsl:value-of select="$varName"/>==Double.NaN) {
+                                           </xsl:when>
+                                           <xsl:when test="$propertyType='float'">
+                                               if (<xsl:value-of select="$varName"/>==Float.NaN) {
+                                           </xsl:when>
+                                           <xsl:when test="$propertyType='short'">
+                                               if (<xsl:value-of select="$varName"/>==Short.MIN_VALUE) {
+                                           </xsl:when>
+                                           <xsl:otherwise>
+                                               if (false) {
+                                           </xsl:otherwise>
+                                       </xsl:choose>
+                                                <xsl:choose>
+                                                      <xsl:when test="@nillable">
+                                                         writeAttribute("xsi","http://www.w3.org/2001/XMLSchema-instance","nil","1",xmlWriter);
+                                                      </xsl:when>
+                                                      <xsl:otherwise>
+                                                         throw new RuntimeException("property value cannot be null!!");
+                                                      </xsl:otherwise>
+                                                  </xsl:choose>
+                                               } else {
+                                                    xmlWriter.writeCharacters(org.apache.axis2.databinding.utils.ConverterUtil.convertToString(<xsl:value-of select="$varName"/>));
+                                               }
                             </xsl:if>
 
                        xmlWriter.writeEndElement();
@@ -2086,6 +2202,29 @@
                                  return null;
                              </xsl:when>
                              <xsl:otherwise>
+                                 <!-- this class can have only one property -->
+                                 <xsl:variable name="propertyType"><xsl:value-of select="property/@type"/></xsl:variable>
+                                 <xsl:variable name="javaName"><xsl:value-of select="property/@javaname"/></xsl:variable>
+                                  <xsl:choose>
+                                       <xsl:when test="$propertyType='int'">
+                                           object.set<xsl:value-of select="$javaName"/>(Integer.MIN_VALUE);
+                                       </xsl:when>
+                                       <xsl:when test="$propertyType='long'">
+                                           object.set<xsl:value-of select="$javaName"/>(Long.MIN_VALUE);
+                                       </xsl:when>
+                                       <xsl:when test="$propertyType='byte'">
+                                           object.set<xsl:value-of select="$javaName"/>(Byte.MIN_VALUE);
+                                       </xsl:when>
+                                       <xsl:when test="$propertyType='double'">
+                                           object.set<xsl:value-of select="$javaName"/>(Double.NaN);
+                                       </xsl:when>
+                                       <xsl:when test="$propertyType='float'">
+                                           object.set<xsl:value-of select="$javaName"/>(Float.NaN);
+                                       </xsl:when>
+                                       <xsl:when test="$propertyType='short'">
+                                           object.set<xsl:value-of select="$javaName"/>(Short.MIN_VALUE);
+                                       </xsl:when>
+                                   </xsl:choose>
                                  return object;
                              </xsl:otherwise>
                          </xsl:choose>
@@ -2627,7 +2766,29 @@
                                              <xsl:if test="@nillable">
                                               nillableValue = reader.getAttributeValue("http://www.w3.org/2001/XMLSchema-instance","nil");
                                               if ("true".equals(nillableValue) || "1".equals(nillableValue)){
-                                                  <xsl:value-of select="$listName"/>.add(null);
+                                                  <xsl:choose>
+                                                       <xsl:when test="$basePropertyType='int'">
+                                                           <xsl:value-of select="$listName"/>.add(String.valueOf(Integer.MIN_VALUE));
+                                                       </xsl:when>
+                                                       <xsl:when test="$basePropertyType='long'">
+                                                           <xsl:value-of select="$listName"/>.add(String.valueOf(Long.MIN_VALUE));
+                                                       </xsl:when>
+                                                       <xsl:when test="$basePropertyType='byte'">
+                                                           <xsl:value-of select="$listName"/>.add(String.valueOf(Byte.MIN_VALUE));
+                                                       </xsl:when>
+                                                       <xsl:when test="$basePropertyType='double'">
+                                                           <xsl:value-of select="$listName"/>.add(String.valueOf(Double.NaN));
+                                                       </xsl:when>
+                                                       <xsl:when test="$basePropertyType='float'">
+                                                           <xsl:value-of select="$listName"/>.add(String.valueOf(Float.NaN));
+                                                       </xsl:when>
+                                                       <xsl:when test="$basePropertyType='short'">
+                                                           <xsl:value-of select="$listName"/>.add(String.valueOf(Short.MIN_VALUE));
+                                                       </xsl:when>
+                                                       <xsl:otherwise>
+                                                           <xsl:value-of select="$listName"/>.add(null);
+                                                       </xsl:otherwise>
+                                                  </xsl:choose>
                                                   reader.next();
                                               } else {
                                             </xsl:if>
@@ -2653,7 +2814,29 @@
                                                          <xsl:if test="@nillable">
                                                           nillableValue = reader.getAttributeValue("http://www.w3.org/2001/XMLSchema-instance","nil");
                                                           if ("true".equals(nillableValue) || "1".equals(nillableValue)){
-                                                              <xsl:value-of select="$listName"/>.add(null);
+                                                              <xsl:choose>
+                                                                   <xsl:when test="$basePropertyType='int'">
+                                                                       <xsl:value-of select="$listName"/>.add(String.valueOf(Integer.MIN_VALUE));
+                                                                   </xsl:when>
+                                                                   <xsl:when test="$basePropertyType='long'">
+                                                                       <xsl:value-of select="$listName"/>.add(String.valueOf(Long.MIN_VALUE));
+                                                                   </xsl:when>
+                                                                   <xsl:when test="$basePropertyType='byte'">
+                                                                       <xsl:value-of select="$listName"/>.add(String.valueOf(Byte.MIN_VALUE));
+                                                                   </xsl:when>
+                                                                   <xsl:when test="$basePropertyType='double'">
+                                                                       <xsl:value-of select="$listName"/>.add(String.valueOf(Double.NaN));
+                                                                   </xsl:when>
+                                                                   <xsl:when test="$basePropertyType='float'">
+                                                                       <xsl:value-of select="$listName"/>.add(String.valueOf(Float.NaN));
+                                                                   </xsl:when>
+                                                                   <xsl:when test="$basePropertyType='short'">
+                                                                       <xsl:value-of select="$listName"/>.add(String.valueOf(Short.MIN_VALUE));
+                                                                   </xsl:when>
+                                                                   <xsl:otherwise>
+                                                                       <xsl:value-of select="$listName"/>.add(null);
+                                                                   </xsl:otherwise>
+                                                              </xsl:choose>
                                                               reader.next();
                                                           } else {
                                                         </xsl:if>
@@ -2805,7 +2988,7 @@
                                             </xsl:when>
                                             <xsl:otherwise>
                                               object.set<xsl:value-of select="$javaName"/>(
-                                        org.apache.axis2.databinding.utils.ConverterUtil.convertTo<xsl:value-of select="$shortTypeName"/>(content));
+                                                    org.apache.axis2.databinding.utils.ConverterUtil.convertTo<xsl:value-of select="$shortTypeName"/>(content));
                                             </xsl:otherwise>
                                         </xsl:choose>
                                     </xsl:if>
@@ -2858,6 +3041,27 @@
                                     </xsl:if>
                                     <xsl:if test="@nillable">
                                        } else {
+                                           <!-- set the variable value according to the variable type -->
+                                           <xsl:choose>
+                                               <xsl:when test="$propertyType='int'">
+                                                   object.set<xsl:value-of select="$javaName"/>(Integer.MIN_VALUE);
+                                               </xsl:when>
+                                               <xsl:when test="$propertyType='long'">
+                                                   object.set<xsl:value-of select="$javaName"/>(Long.MIN_VALUE);
+                                               </xsl:when>
+                                               <xsl:when test="$propertyType='byte'">
+                                                   object.set<xsl:value-of select="$javaName"/>(Byte.MIN_VALUE);
+                                               </xsl:when>
+                                               <xsl:when test="$propertyType='double'">
+                                                   object.set<xsl:value-of select="$javaName"/>(Double.NaN);
+                                               </xsl:when>
+                                               <xsl:when test="$propertyType='float'">
+                                                   object.set<xsl:value-of select="$javaName"/>(Float.NaN);
+                                               </xsl:when>
+                                               <xsl:when test="$propertyType='short'">
+                                                   object.set<xsl:value-of select="$javaName"/>(Short.MIN_VALUE);
+                                               </xsl:when>
+                                           </xsl:choose>
                                            reader.getElementText(); // throw away text nodes if any.
                                        }
                                     </xsl:if>
@@ -2868,6 +3072,30 @@
                             </xsl:choose>
                             <xsl:if test="not(enumFacet)">
                               }  // End of if for expected property start element
+                                <xsl:if test="$min=0 and $ordered">
+                                    else {
+                                        <xsl:choose>
+                                           <xsl:when test="$propertyType='int'">
+                                               object.set<xsl:value-of select="$javaName"/>(Integer.MIN_VALUE);
+                                           </xsl:when>
+                                           <xsl:when test="$propertyType='long'">
+                                               object.set<xsl:value-of select="$javaName"/>(Long.MIN_VALUE);
+                                           </xsl:when>
+                                           <xsl:when test="$propertyType='byte'">
+                                               object.set<xsl:value-of select="$javaName"/>(Byte.MIN_VALUE);
+                                           </xsl:when>
+                                           <xsl:when test="$propertyType='double'">
+                                               object.set<xsl:value-of select="$javaName"/>(Double.NaN);
+                                           </xsl:when>
+                                           <xsl:when test="$propertyType='float'">
+                                               object.set<xsl:value-of select="$javaName"/>(Float.NaN);
+                                           </xsl:when>
+                                           <xsl:when test="$propertyType='short'">
+                                               object.set<xsl:value-of select="$javaName"/>(Short.MIN_VALUE);
+                                           </xsl:when>
+                                       </xsl:choose>
+                                    }
+                                </xsl:if>
                             </xsl:if>
                             <xsl:if test="$ordered and $min!=0">
                                 else{

Modified: webservices/axis2/trunk/java/modules/adb-codegen/test/org/apache/axis2/schema/testsuite/IntElementsTest.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/adb-codegen/test/org/apache/axis2/schema/testsuite/IntElementsTest.java?view=diff&rev=507836&r1=507835&r2=507836
==============================================================================
--- webservices/axis2/trunk/java/modules/adb-codegen/test/org/apache/axis2/schema/testsuite/IntElementsTest.java (original)
+++ webservices/axis2/trunk/java/modules/adb-codegen/test/org/apache/axis2/schema/testsuite/IntElementsTest.java Wed Feb 14 22:52:56 2007
@@ -37,9 +37,13 @@
         System.out.println("minOccurs = 0 nillable true");
         try {
             returnObject = testIntArray(null, MIN_EQUALS_ZERO_NILLABLE_TRUE_TEST);
-            assertTrue(Arrays.equals(returnObject, new int[]{0}));
+            assertTrue(Arrays.equals(returnObject, new int[]{Integer.MIN_VALUE}));
             returnObject = testIntArray(new int[]{5}, MIN_EQUALS_ZERO_NILLABLE_TRUE_TEST);
             assertTrue(Arrays.equals(returnObject, new int[]{5}));
+            returnObject = testIntArray(new int[]{Integer.MIN_VALUE}, MIN_EQUALS_ZERO_NILLABLE_TRUE_TEST);
+            assertTrue(Arrays.equals(returnObject, new int[]{Integer.MIN_VALUE}));
+            returnObject = testIntArray(new int[]{Integer.MIN_VALUE,5}, MIN_EQUALS_ZERO_NILLABLE_TRUE_TEST);
+            assertTrue(Arrays.equals(returnObject, new int[]{Integer.MIN_VALUE,5}));
         } catch (Exception e) {
             fail();
         }
@@ -49,15 +53,19 @@
             assertTrue(Arrays.equals(returnObject, null));
             returnObject = testIntArray(new int[]{5}, MIN_EQUALS_ZERO_NILLABLE_FALSE_TEST);
             assertTrue(Arrays.equals(returnObject, new int[]{5}));
+            returnObject = testIntArray(new int[]{Integer.MIN_VALUE}, MIN_EQUALS_ZERO_NILLABLE_FALSE_TEST);
+            assertTrue(Arrays.equals(returnObject, null));
         } catch (Exception e) {
             fail();
         }
         System.out.println("minOccurs = 1 nillable true");
         try {
             returnObject = testIntArray(null, MIN_EQUALS_ONE_NILLABLE_TRUE_TEST);
-            assertTrue(Arrays.equals(returnObject, new int[]{0}));
+            assertTrue(Arrays.equals(returnObject, new int[]{Integer.MIN_VALUE}));
             returnObject = testIntArray(new int[]{5}, MIN_EQUALS_ONE_NILLABLE_TRUE_TEST);
             assertTrue(Arrays.equals(returnObject, new int[]{5}));
+            returnObject = testIntArray(new int[]{Integer.MIN_VALUE}, MIN_EQUALS_ONE_NILLABLE_TRUE_TEST);
+            assertTrue(Arrays.equals(returnObject, new int[]{Integer.MIN_VALUE}));
         } catch (Exception e) {
             e.printStackTrace();
             fail();
@@ -70,6 +78,14 @@
         } catch (Exception e) {
             assertTrue(true);
         }
+
+        try {
+            returnObject = testIntArray(new int[]{Integer.MIN_VALUE}, MIN_EQUALS_ONE_NILLABLE_FALSE_TEST);
+            fail();
+        } catch (Exception e) {
+            assertTrue(true);
+        }
+
         try {
             returnObject = testIntArray(new int[]{5}, MIN_EQUALS_ONE_NILLABLE_FALSE_TEST);
             assertTrue(Arrays.equals(returnObject, new int[]{5}));
@@ -133,13 +149,41 @@
 
 
     public void testInt() {
+
+        System.out.println("min =0 and nillable true test");
         try {
             assertEquals(testInt(1, MIN_EQUALS_ZERO_NILLABLE_TRUE_TEST), 1);
+            assertEquals(testInt(Integer.MIN_VALUE, MIN_EQUALS_ZERO_NILLABLE_TRUE_TEST), Integer.MIN_VALUE);
+        } catch (Exception e) {
+            fail();
+        }
+
+        try {
             assertEquals(testInt(1, MIN_EQUALS_ZERO_NILLABLE_FALSE_TEST), 1);
+            assertEquals(testInt(Integer.MIN_VALUE,MIN_EQUALS_ZERO_NILLABLE_FALSE_TEST),Integer.MIN_VALUE);
+        } catch (Exception e) {
+            fail();
+        }
+
+        try {
             assertEquals(testInt(1, MIN_EQUALS_ONE_NILLABLE_TRUE_TEST), 1);
+            assertEquals(testInt(Integer.MIN_VALUE,MIN_EQUALS_ONE_NILLABLE_TRUE_TEST),Integer.MIN_VALUE);
+        } catch (Exception e) {
+            fail();
+        }
+
+
+        try {
             assertEquals(testInt(1, MIN_EQUALS_ONE_NILLABLE_FALSE_TEST), 1);
         } catch (Exception e) {
             fail();
+        }
+
+        try {
+            assertEquals(testInt(Integer.MIN_VALUE, MIN_EQUALS_ONE_NILLABLE_FALSE_TEST), Integer.MIN_VALUE);
+            fail();
+        } catch (Exception e) {
+            assertTrue(true);
         }
 
     }

Modified: webservices/axis2/trunk/java/modules/adb-codegen/test/org/apache/axis2/schema/testsuite/OuterElementsTest.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/adb-codegen/test/org/apache/axis2/schema/testsuite/OuterElementsTest.java?view=diff&rev=507836&r1=507835&r2=507836
==============================================================================
--- webservices/axis2/trunk/java/modules/adb-codegen/test/org/apache/axis2/schema/testsuite/OuterElementsTest.java (original)
+++ webservices/axis2/trunk/java/modules/adb-codegen/test/org/apache/axis2/schema/testsuite/OuterElementsTest.java Wed Feb 14 22:52:56 2007
@@ -89,14 +89,25 @@
     }
 
     public void testInt() {
-        int returnInt;
+
+         try {
+            assertEquals(testInt(5, NILLABLE_TRUE), 5);
+            assertEquals(testInt(Integer.MIN_VALUE, NILLABLE_TRUE), Integer.MIN_VALUE);
+        } catch (Exception e) {
+            fail();
+        }
+
         try {
-            returnInt = testInt(5, NILLABLE_TRUE);
-            assertEquals(returnInt, 5);
-            returnInt = testInt(5, NILLABLE_FALSE);
-            assertEquals(returnInt, 5);
+            assertEquals(testInt(5, NILLABLE_FALSE), 5);
         } catch (Exception e) {
             fail();
+        }
+
+        try {
+            assertEquals(testInt(Integer.MIN_VALUE, NILLABLE_FALSE), Integer.MIN_VALUE);
+            fail();
+        } catch (Exception e) {
+            assertTrue(true);
         }
     }
 



---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org