Author: brett Date: Wed Mar 6 10:14:35 2013 New Revision: 1453264 URL: http://svn.apache.org/r1453264 Log: [NPANDAY-254] add integration test for satellite assemblies
This is currently using MSBuild to generate them, but when a new technique is available then it can be adjusted. Added: incubator/npanday/npanday-its/trunk/src/test/java/npanday/its/NPANDAY_254_WebAppWithCultureResTest.java incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/ incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Default.aspx incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Default.aspx.cs incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Default.aspx.designer.cs incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Properties/ incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Properties/AssemblyInfo.cs incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Resource1.en-GB.resx incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Resource1.es-ES.resx incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Scripts/ incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Scripts/jquery-1.4.1-vsdoc.js incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Scripts/jquery-1.4.1.js incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Scripts/jquery-1.4.1.min.js incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Web.Debug.config incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Web.Release.config incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Web.config incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/WebAppWithCultureRes.csproj incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/pom.xml Modified: incubator/npanday/npanday-its/trunk/src/test/java/npanday/its/IntegrationTestSuite.java Modified: incubator/npanday/npanday-its/trunk/src/test/java/npanday/its/IntegrationTestSuite.java URL: http://svn.apache.org/viewvc/incubator/npanday/npanday-its/trunk/src/test/java/npanday/its/IntegrationTestSuite.java?rev=1453264&r1=1453263&r2=1453264&view=diff ============================================================================== --- incubator/npanday/npanday-its/trunk/src/test/java/npanday/its/IntegrationTestSuite.java (original) +++ incubator/npanday/npanday-its/trunk/src/test/java/npanday/its/IntegrationTestSuite.java Wed Mar 6 10:14:35 2013 @@ -48,6 +48,7 @@ public class IntegrationTestSuite // suite.addTestSuite( NPandayIT0002NetModuleDependencyTest.class ); // issue #11729 // suite.addTestSuite( NPandayIT0003NetModuleTransitiveDependencyTest.class ); // issue #11729 + suite.addTestSuite( NPANDAY_254_WebAppWithCultureResTest.class ); suite.addTestSuite( NPANDAY_571_AzureSDKVersionTest.class ); suite.addTestSuite( NPANDAY_537_WindowsExecutableTest.class ); suite.addTestSuite( NPANDAY_538_COMReferenceTest.class ); Added: incubator/npanday/npanday-its/trunk/src/test/java/npanday/its/NPANDAY_254_WebAppWithCultureResTest.java URL: http://svn.apache.org/viewvc/incubator/npanday/npanday-its/trunk/src/test/java/npanday/its/NPANDAY_254_WebAppWithCultureResTest.java?rev=1453264&view=auto ============================================================================== --- incubator/npanday/npanday-its/trunk/src/test/java/npanday/its/NPANDAY_254_WebAppWithCultureResTest.java (added) +++ incubator/npanday/npanday-its/trunk/src/test/java/npanday/its/NPANDAY_254_WebAppWithCultureResTest.java Wed Mar 6 10:14:35 2013 @@ -0,0 +1,62 @@ +package npanday.its; + +/* + * 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. + */ + +import org.apache.maven.it.Verifier; + +import java.io.File; +import java.util.Arrays; +import java.util.List; + +public class NPANDAY_254_WebAppWithCultureResTest + extends AbstractNPandayIntegrationTestCase +{ + public NPANDAY_254_WebAppWithCultureResTest() + { + super( "[1.5.0-incubating,)", "[v4.0.30319,)" ); + + skipIfMissingProgramFilesDirectory( "IIS/Microsoft Web Deploy V2", "Web Deploy 2.0 not installed" ); + assertXdtPresent(); + } + + public void test() + throws Exception + { + NPandayIntegrationTestContext context = createDefaultTestContext(); + Verifier verifier = context.getPreparedVerifier(); + + verifier.executeGoal( "install" ); + + verifier.assertArtifactPresent(context.getGroupId(), "WebAppWithCultureRes", "1.0.0-SNAPSHOT", "msdeploy.zip" ); + + String binDir = translateMsDeployPath(verifier.getBasedir(), "WebAppWithCultureRes/bin"); + List<String> entries = Arrays.asList( + binDir + "/en-GB/WebAppWithCultureRes.resources.dll", + binDir + "/es-ES/WebAppWithCultureRes.resources.dll" + ); + File zipFile = new File(verifier.getArtifactPath(context.getGroupId(), "WebAppWithCultureRes", "1.0.0-SNAPSHOT", "msdeploy.zip")); + assertZipEntries(zipFile, entries); + + verifier.verifyErrorFreeLog(); + verifier.resetStreams(); + } + +} + Added: incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Default.aspx URL: http://svn.apache.org/viewvc/incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Default.aspx?rev=1453264&view=auto ============================================================================== --- incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Default.aspx (added) +++ incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Default.aspx Wed Mar 6 10:14:35 2013 @@ -0,0 +1,16 @@ +<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="WebAppWithCultureRes._Default" %> + +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> + +<html xmlns="http://www.w3.org/1999/xhtml"> +<head runat="server"> + <title></title> +</head> +<body> + <form id="form1" runat="server"> + <div> + + </div> + </form> +</body> +</html> Added: incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Default.aspx.cs URL: http://svn.apache.org/viewvc/incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Default.aspx.cs?rev=1453264&view=auto ============================================================================== --- incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Default.aspx.cs (added) +++ incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Default.aspx.cs Wed Mar 6 10:14:35 2013 @@ -0,0 +1,16 @@ +using System; +using System.Collections.Generic; +using System.Web; +using System.Web.UI; +using System.Web.UI.WebControls; + +namespace WebAppWithCultureRes +{ + public partial class _Default : System.Web.UI.Page + { + protected void Page_Load(object sender, EventArgs e) + { + + } + } +} \ No newline at end of file Added: incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Default.aspx.designer.cs URL: http://svn.apache.org/viewvc/incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Default.aspx.designer.cs?rev=1453264&view=auto ============================================================================== --- incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Default.aspx.designer.cs (added) +++ incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Default.aspx.designer.cs Wed Mar 6 10:14:35 2013 @@ -0,0 +1,26 @@ +//------------------------------------------------------------------------------ +// <auto-generated> +// This code was generated by a tool. +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// </auto-generated> +//------------------------------------------------------------------------------ + +namespace WebAppWithCultureRes +{ + + + public partial class _Default + { + + /// <summary> + /// form1 control. + /// </summary> + /// <remarks> + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// </remarks> + protected global::System.Web.UI.HtmlControls.HtmlForm form1; + } +} Added: incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Properties/AssemblyInfo.cs URL: http://svn.apache.org/viewvc/incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Properties/AssemblyInfo.cs?rev=1453264&view=auto ============================================================================== --- incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Properties/AssemblyInfo.cs (added) +++ incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Properties/AssemblyInfo.cs Wed Mar 6 10:14:35 2013 @@ -0,0 +1,35 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("WebAppWithCultureRes")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("WebAppWithCultureRes")] +[assembly: AssemblyCopyright("Copyright © 2013")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("a3ffae50-438e-4a19-b507-4ebd1e787f80")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Revision and Build Numbers +// by using the '*' as shown below: +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] Added: incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Resource1.en-GB.resx URL: http://svn.apache.org/viewvc/incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Resource1.en-GB.resx?rev=1453264&view=auto ============================================================================== --- incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Resource1.en-GB.resx (added) +++ incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Resource1.en-GB.resx Wed Mar 6 10:14:35 2013 @@ -0,0 +1,123 @@ +<?xml version="1.0" encoding="utf-8"?> +<root> + <!-- + Microsoft ResX Schema + + Version 2.0 + + The primary goals of this format is to allow a simple XML format + that is mostly human readable. The generation and parsing of the + various data types are done through the TypeConverter classes + associated with the data types. + + Example: + + ... ado.net/XML headers & schema ... + <resheader name="resmimetype">text/microsoft-resx</resheader> + <resheader name="version">2.0</resheader> + <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> + <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> + <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> + <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> + <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> + <value>[base64 mime encoded serialized .NET Framework object]</value> + </data> + <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> + <comment>This is a comment</comment> + </data> + + There are any number of "resheader" rows that contain simple + name/value pairs. + + Each data row contains a name, and value. The row also contains a + type or mimetype. Type corresponds to a .NET class that support + text/value conversion through the TypeConverter architecture. + Classes that don't support this are serialized and stored with the + mimetype set. + + The mimetype is used for serialized objects, and tells the + ResXResourceReader how to depersist the object. This is currently not + extensible. For a given mimetype the value must be set accordingly: + + Note - application/x-microsoft.net.object.binary.base64 is the format + that the ResXResourceWriter will generate, however the reader can + read any of the formats listed below. + + mimetype: application/x-microsoft.net.object.binary.base64 + value : The object must be serialized with + : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter + : and then encoded with base64 encoding. + + mimetype: application/x-microsoft.net.object.soap.base64 + value : The object must be serialized with + : System.Runtime.Serialization.Formatters.Soap.SoapFormatter + : and then encoded with base64 encoding. + + mimetype: application/x-microsoft.net.object.bytearray.base64 + value : The object must be serialized into a byte array + : using a System.ComponentModel.TypeConverter + : and then encoded with base64 encoding. + --> + <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> + <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> + <xsd:element name="root" msdata:IsDataSet="true"> + <xsd:complexType> + <xsd:choice maxOccurs="unbounded"> + <xsd:element name="metadata"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" /> + </xsd:sequence> + <xsd:attribute name="name" use="required" type="xsd:string" /> + <xsd:attribute name="type" type="xsd:string" /> + <xsd:attribute name="mimetype" type="xsd:string" /> + <xsd:attribute ref="xml:space" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="assembly"> + <xsd:complexType> + <xsd:attribute name="alias" type="xsd:string" /> + <xsd:attribute name="name" type="xsd:string" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="data"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> + <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> + <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> + <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> + <xsd:attribute ref="xml:space" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="resheader"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required" /> + </xsd:complexType> + </xsd:element> + </xsd:choice> + </xsd:complexType> + </xsd:element> + </xsd:schema> + <resheader name="resmimetype"> + <value>text/microsoft-resx</value> + </resheader> + <resheader name="version"> + <value>2.0</value> + </resheader> + <resheader name="reader"> + <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </resheader> + <resheader name="writer"> + <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </resheader> + <data name="Greeting" xml:space="preserve"> + <value>Hello</value> + </data> +</root> \ No newline at end of file Added: incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Resource1.es-ES.resx URL: http://svn.apache.org/viewvc/incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Resource1.es-ES.resx?rev=1453264&view=auto ============================================================================== --- incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Resource1.es-ES.resx (added) +++ incubator/npanday/npanday-its/trunk/src/test/resources/NPANDAY_254_WebappWithCultureResTest/Resource1.es-ES.resx Wed Mar 6 10:14:35 2013 @@ -0,0 +1,123 @@ +<?xml version="1.0" encoding="utf-8"?> +<root> + <!-- + Microsoft ResX Schema + + Version 2.0 + + The primary goals of this format is to allow a simple XML format + that is mostly human readable. The generation and parsing of the + various data types are done through the TypeConverter classes + associated with the data types. + + Example: + + ... ado.net/XML headers & schema ... + <resheader name="resmimetype">text/microsoft-resx</resheader> + <resheader name="version">2.0</resheader> + <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> + <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> + <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> + <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> + <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> + <value>[base64 mime encoded serialized .NET Framework object]</value> + </data> + <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> + <comment>This is a comment</comment> + </data> + + There are any number of "resheader" rows that contain simple + name/value pairs. + + Each data row contains a name, and value. The row also contains a + type or mimetype. Type corresponds to a .NET class that support + text/value conversion through the TypeConverter architecture. + Classes that don't support this are serialized and stored with the + mimetype set. + + The mimetype is used for serialized objects, and tells the + ResXResourceReader how to depersist the object. This is currently not + extensible. For a given mimetype the value must be set accordingly: + + Note - application/x-microsoft.net.object.binary.base64 is the format + that the ResXResourceWriter will generate, however the reader can + read any of the formats listed below. + + mimetype: application/x-microsoft.net.object.binary.base64 + value : The object must be serialized with + : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter + : and then encoded with base64 encoding. + + mimetype: application/x-microsoft.net.object.soap.base64 + value : The object must be serialized with + : System.Runtime.Serialization.Formatters.Soap.SoapFormatter + : and then encoded with base64 encoding. + + mimetype: application/x-microsoft.net.object.bytearray.base64 + value : The object must be serialized into a byte array + : using a System.ComponentModel.TypeConverter + : and then encoded with base64 encoding. + --> + <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> + <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> + <xsd:element name="root" msdata:IsDataSet="true"> + <xsd:complexType> + <xsd:choice maxOccurs="unbounded"> + <xsd:element name="metadata"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" /> + </xsd:sequence> + <xsd:attribute name="name" use="required" type="xsd:string" /> + <xsd:attribute name="type" type="xsd:string" /> + <xsd:attribute name="mimetype" type="xsd:string" /> + <xsd:attribute ref="xml:space" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="assembly"> + <xsd:complexType> + <xsd:attribute name="alias" type="xsd:string" /> + <xsd:attribute name="name" type="xsd:string" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="data"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> + <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> + <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> + <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> + <xsd:attribute ref="xml:space" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="resheader"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required" /> + </xsd:complexType> + </xsd:element> + </xsd:choice> + </xsd:complexType> + </xsd:element> + </xsd:schema> + <resheader name="resmimetype"> + <value>text/microsoft-resx</value> + </resheader> + <resheader name="version"> + <value>2.0</value> + </resheader> + <resheader name="reader"> + <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </resheader> + <resheader name="writer"> + <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </resheader> + <data name="Greeting" xml:space="preserve"> + <value>Hola</value> + </data> +</root> \ No newline at end of file