Author: gert
Date: 2007-08-22 07:57:20 -0400 (Wed, 22 Aug 2007)
New Revision: 84610
Added:
trunk/gert/standalone/bug77040/
trunk/gert/standalone/bug77040/default.build
trunk/gert/standalone/bug77040/test.cs
trunk/gert/standalone/bug77736/
trunk/gert/standalone/bug77736/default.build
trunk/gert/standalone/bug77736/test1.cs
trunk/gert/standalone/bug77736/test2.cs
trunk/gert/standalone/bug78776/
trunk/gert/standalone/bug78776/default.build
trunk/gert/standalone/bug78776/test.cs
trunk/gert/standalone/bug80913/
trunk/gert/standalone/bug80913/Index1.aspx
trunk/gert/standalone/bug80913/Index2.aspx
trunk/gert/standalone/bug80913/Web1.config
trunk/gert/standalone/bug80913/Web2.config
trunk/gert/standalone/bug80913/Web3.config
trunk/gert/standalone/bug80913/Web4.config
trunk/gert/standalone/bug80913/default.build
trunk/gert/standalone/bug80913/test.cs
trunk/gert/standalone/bug82046/
trunk/gert/standalone/bug82046/default.build
trunk/gert/standalone/bug82046/test.cs
trunk/gert/standalone/bug82046/test.il
trunk/gert/standalone/bug82479/
trunk/gert/standalone/bug82479/default.build
trunk/gert/standalone/bug82479/test.cs
trunk/gert/standalone/bug82479/web/
trunk/gert/standalone/bug82479/web/Default.aspx
trunk/gert/standalone/bug82479/web/Global.asax
trunk/gert/standalone/longrunning-tests
Modified:
trunk/gert/standalone/default.build
trunk/gert/standalone/known-issues
trunk/gert/standalone/local-tests
Log:
More tests.
Added: trunk/gert/standalone/bug77040/default.build
===================================================================
--- trunk/gert/standalone/bug77040/default.build 2007-08-22 11:54:02 UTC
(rev 84609)
+++ trunk/gert/standalone/bug77040/default.build 2007-08-22 11:57:20 UTC
(rev 84610)
@@ -0,0 +1,58 @@
+<project name="bug77040" default="rebuild">
+ <target name="mono-1.0">
+ <property name="csc.defines"
value="NET_1_0,NET_1_1,ONLY_1_1,MONO" />
+ </target>
+
+ <target name="mono-2.0">
+ <property name="csc.defines"
value="NET_1_0,NET_1_1,NET_2_0,ONLY_2_0,MONO" />
+ </target>
+
+ <target name="net-1.1">
+ <property name="csc.defines" value="NET_1_0,NET_1_1,ONLY_1_1" />
+ </target>
+
+ <target name="net-2.0">
+ <property name="csc.defines"
value="NET_1_0,NET_1_1,NET_2_0,ONLY_2_0" />
+ </target>
+
+ <property name="frameworks" value="mono-1.0,mono-2.0,net-1.1,net-2.0" />
+
+ <target name="clean">
+ <delete>
+ <fileset>
+ <include name="out" />
+ <include name="test.exe" />
+ </fileset>
+ </delete>
+ </target>
+
+ <target name="build">
+ <property name="original.targetframework"
value="${nant.settings.currentframework}" />
+
+ <foreach property="framework" item="String" in="${frameworks}"
delim=",">
+ <if test="${framework::exists(framework)}">
+ <property name="nant.settings.currentframework"
value="${framework}" />
+ <call
target="${nant.settings.currentframework}" />
+ <call target="run" />
+ <call target="clean" />
+ </if>
+ </foreach>
+
+ <property name="nant.settings.currentframework"
value="${original.targetframework}" />
+ </target>
+
+ <target name="compile">
+ <csc target="exe" define="${csc.defines}" output="test.exe"
warnaserror="true" warninglevel="4">
+ <sources>
+ <include name="test.cs" />
+ </sources>
+ </csc>
+ </target>
+
+ <target name="run" depends="compile">
+ <exec program="test.exe" managed="true" output="out" />
+ <fail if="${file::exists('out')}" />
+ </target>
+
+ <target name="rebuild" depends="clean, build" />
+</project>
Property changes on: trunk/gert/standalone/bug77040/default.build
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/gert/standalone/bug77040/test.cs
===================================================================
--- trunk/gert/standalone/bug77040/test.cs 2007-08-22 11:54:02 UTC (rev
84609)
+++ trunk/gert/standalone/bug77040/test.cs 2007-08-22 11:57:20 UTC (rev
84610)
@@ -0,0 +1,74 @@
+using System;
+using System.Reflection;
+using System.Reflection.Emit;
+
+class Program
+{
+ static int Main ()
+ {
+ string t = "Test";
+ AssemblyName name = new AssemblyName ();
+ name.Name = t;
+
+ AssemblyBuilder asm =
AppDomain.CurrentDomain.DefineDynamicAssembly (name,
+ AssemblyBuilderAccess.RunAndSave);
+ ModuleBuilder mod = asm.DefineDynamicModule ("Test.dll");
+
+ TypeBuilder type = mod.DefineType ("C", TypeAttributes.Public,
typeof (B));
+
+ PropertyBuilder pb = type.DefineProperty ("S",
+ PropertyAttributes.None, typeof (string), new Type [0]);
+
+ MethodBuilder mb = type.DefineMethod ("get_S",
MethodAttributes.Public |
+ MethodAttributes.Virtual | MethodAttributes.HideBySig |
+ MethodAttributes.SpecialName |
MethodAttributes.ReuseSlot,
+ typeof (string), new Type [0]);
+ ILGenerator ilg = mb.GetILGenerator ();
+ ilg.Emit (OpCodes.Ret);
+
+ pb.SetSetMethod (mb);
+
+ Type emittedType = type.CreateType ();
+
+ PropertyInfo [] properties = emittedType.GetProperties ();
+ if (properties.Length != 2)
+ return 1;
+
+ PropertyInfo property = properties [0];
+ if (property.Name != "S")
+ return 2;
+ if (property.DeclaringType != emittedType)
+ return 3;
+
+ property = properties [1];
+ if (property.Name != "S")
+ return 4;
+ if (property.DeclaringType != typeof (B))
+ return 5;
+
+ return 0;
+ }
+}
+
+public class A
+{
+ string _s = "A";
+
+ public virtual string S
+ {
+ get { return _s; }
+ }
+
+ public static string V
+ {
+ get { return null; }
+ }
+}
+
+public class B : A
+{
+ public override string S
+ {
+ get { return ""; }
+ }
+}
Property changes on: trunk/gert/standalone/bug77040/test.cs
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/gert/standalone/bug77736/default.build
===================================================================
--- trunk/gert/standalone/bug77736/default.build 2007-08-22 11:54:02 UTC
(rev 84609)
+++ trunk/gert/standalone/bug77736/default.build 2007-08-22 11:57:20 UTC
(rev 84610)
@@ -0,0 +1,62 @@
+<project name="bug77736" default="rebuild">
+ <target name="mono-1.0">
+ <property name="csc.defines"
value="NET_1_0,NET_1_1,ONLY_1_1,MONO" />
+ </target>
+
+ <target name="mono-2.0">
+ <property name="csc.defines"
value="NET_1_0,NET_1_1,NET_2_0,ONLY_2_0,MONO" />
+ </target>
+
+ <target name="net-1.1">
+ <property name="csc.defines" value="NET_1_0,NET_1_1,ONLY_1_1" />
+ </target>
+
+ <target name="net-2.0">
+ <property name="csc.defines"
value="NET_1_0,NET_1_1,NET_2_0,ONLY_2_0" />
+ </target>
+
+ <property name="mono.frameworks" value="mono-1.0,mono-2.0"/>
+ <property name="net.frameworks" value="net-1.1,net-2.0"/>
+
+ <target name="clean">
+ <delete>
+ <fileset>
+ <include name="test1.exe" />
+ <include name="test2.exe" />
+ </fileset>
+ </delete>
+ </target>
+
+ <target name="build">
+ <property name="original.targetframework"
value="${nant.settings.currentframework}" />
+
+ <foreach property="framework" item="String"
in="${property::get-value(framework::get-family(framework::get-target-framework())
+ '.frameworks')}" delim=",">
+ <property name="nant.settings.currentframework"
value="${framework}" />
+ <call target="${nant.settings.currentframework}" />
+ <call target="run" />
+ <call target="clean" />
+ </foreach>
+
+ <property name="nant.settings.currentframework"
value="${original.targetframework}" />
+ </target>
+
+ <target name="compile">
+ <csc target="exe" define="${csc.defines}" output="test1.exe"
warnaserror="true">
+ <sources>
+ <include name="test1.cs" />
+ </sources>
+ </csc>
+ <csc target="exe" define="${csc.defines}" output="test2.exe"
warnaserror="true">
+ <sources>
+ <include name="test2.cs" />
+ </sources>
+ </csc>
+ </target>
+
+ <target name="run" depends="compile">
+ <exec program="test1.exe" managed="true" />
+ <exec program="test2.exe" managed="true" />
+ </target>
+
+ <target name="rebuild" depends="clean, build" />
+</project>
Property changes on: trunk/gert/standalone/bug77736/default.build
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/gert/standalone/bug77736/test1.cs
===================================================================
--- trunk/gert/standalone/bug77736/test1.cs 2007-08-22 11:54:02 UTC (rev
84609)
+++ trunk/gert/standalone/bug77736/test1.cs 2007-08-22 11:57:20 UTC (rev
84610)
@@ -0,0 +1,23 @@
+using System;
+using System.Diagnostics;
+
+class Foo
+{
+ public static int Main ()
+ {
+ for (int i = 0; i < 10000; i++) {
+ Console.WriteLine (i.ToString ());
+ Process p = new Process ();
+ p.StartInfo.FileName = "true";
+
+ p.Start ();
+
+ bool ret = p.WaitForExit (60000);
+
+ if (!ret && p.HasExited) {
+ return 1;
+ }
+ }
+ return 0;
+ }
+}
Property changes on: trunk/gert/standalone/bug77736/test1.cs
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/gert/standalone/bug77736/test2.cs
===================================================================
--- trunk/gert/standalone/bug77736/test2.cs 2007-08-22 11:54:02 UTC (rev
84609)
+++ trunk/gert/standalone/bug77736/test2.cs 2007-08-22 11:57:20 UTC (rev
84610)
@@ -0,0 +1,19 @@
+using System;
+using System.Diagnostics;
+
+public class MyClass
+{
+ public static int Main ()
+ {
+ Process p = Process.GetCurrentProcess ();
+
+ DateTime t1 = DateTime.Now;
+ p.WaitForExit (2000);
+ DateTime t2 = DateTime.Now;
+
+ TimeSpan waitTime = t2 - t1;
+ if (waitTime < new TimeSpan(0, 0, 2) || waitTime > new
TimeSpan(0, 0, 3))
+ return 1;
+ return 0;
+ }
+}
Property changes on: trunk/gert/standalone/bug77736/test2.cs
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/gert/standalone/bug78776/default.build
===================================================================
--- trunk/gert/standalone/bug78776/default.build 2007-08-22 11:54:02 UTC
(rev 84609)
+++ trunk/gert/standalone/bug78776/default.build 2007-08-22 11:57:20 UTC
(rev 84610)
@@ -0,0 +1,58 @@
+<project name="bug78776" default="rebuild">
+ <target name="mono-1.0">
+ <property name="csc.defines"
value="NET_1_0,NET_1_1,ONLY_1_1,MONO" />
+ </target>
+
+ <target name="mono-2.0">
+ <property name="csc.defines"
value="NET_1_0,NET_1_1,NET_2_0,ONLY_2_0,MONO" />
+ </target>
+
+ <target name="net-1.1">
+ <property name="csc.defines" value="NET_1_0,NET_1_1,ONLY_1_1" />
+ </target>
+
+ <target name="net-2.0">
+ <property name="csc.defines"
value="NET_1_0,NET_1_1,NET_2_0,ONLY_2_0" />
+ </target>
+
+ <property name="frameworks" value="mono-1.0,mono-2.0,net-1.1,net-2.0" />
+
+ <target name="clean">
+ <delete>
+ <fileset>
+ <include name="out" />
+ <include name="test.exe" />
+ </fileset>
+ </delete>
+ </target>
+
+ <target name="build">
+ <property name="original.targetframework"
value="${nant.settings.currentframework}" />
+
+ <foreach property="framework" item="String" in="${frameworks}"
delim=",">
+ <if test="${framework::exists(framework)}">
+ <property name="nant.settings.currentframework"
value="${framework}" />
+ <call
target="${nant.settings.currentframework}" />
+ <call target="run" />
+ <call target="clean" />
+ </if>
+ </foreach>
+
+ <property name="nant.settings.currentframework"
value="${original.targetframework}" />
+ </target>
+
+ <target name="compile">
+ <csc target="exe" define="${csc.defines}" output="test.exe"
warnaserror="true" warninglevel="4">
+ <sources>
+ <include name="test.cs" />
+ </sources>
+ </csc>
+ </target>
+
+ <target name="run" depends="compile">
+ <exec program="test.exe" managed="true" output="out" />
+ <fail if="${file::exists('out')}" />
+ </target>
+
+ <target name="rebuild" depends="clean, build" />
+</project>
Property changes on: trunk/gert/standalone/bug78776/default.build
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/gert/standalone/bug78776/test.cs
===================================================================
--- trunk/gert/standalone/bug78776/test.cs 2007-08-22 11:54:02 UTC (rev
84609)
+++ trunk/gert/standalone/bug78776/test.cs 2007-08-22 11:57:20 UTC (rev
84610)
@@ -0,0 +1,77 @@
+using System;
+
+class Program
+{
+ public struct Vector
+ {
+ public double X, Y, Z;
+
+ public Vector (double x, double y, double z)
+ {
+ X = x; Y = y; Z = z;
+ }
+
+ public static Vector Min (Vector a, Vector b)
+ {
+ return new Vector (
+ Math.Min (a.X, b.X),
+ Math.Min (a.Y, b.Y),
+ Math.Min (a.Z, b.Z));
+ }
+
+ public static Vector Max (Vector a, Vector b)
+ {
+ return new Vector (
+ Math.Max (a.X, b.X),
+ Math.Max (a.Y, b.Y),
+ Math.Max (a.Z, b.Z));
+ }
+
+ public static Vector operator - (Vector a, Vector b)
+ {
+ return new Vector (a.X - b.X, a.Y - b.Y, a.Z - b.Z);
+ }
+ }
+
+ public struct Box
+ {
+ public Vector Position;
+ public Vector Size;
+
+ public Box (Vector position, Vector size)
+ {
+ Position = position;
+ Size = size;
+ }
+ }
+
+ public struct Face
+ {
+ private Vector u, v, w;
+
+ public Face (Vector u, Vector v, Vector w)
+ {
+ this.u = u; this.v = v; this.w = w;
+ }
+
+ public Box BoundingBox {
+ get {
+ Vector pos = Vector.Min (u, Vector.Min (v, w));
+ return new Box (pos, Vector.Max (u - pos,
Vector.Max (v - pos, w - pos)));
+ }
+ }
+ }
+
+ static int Main ()
+ {
+ Vector a, b, c;
+ a = new Vector (0, 0, 0);
+ b = new Vector (0, 1, 0);
+ c = new Vector (1, 1, 0);
+ Face f = new Face (a, b, c);
+ if (f.BoundingBox.ToString () != "Program+Box")
+ return 1;
+ return 0;
+ }
+}
+
Property changes on: trunk/gert/standalone/bug78776/test.cs
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/gert/standalone/bug80913/Index1.aspx
===================================================================
--- trunk/gert/standalone/bug80913/Index1.aspx 2007-08-22 11:54:02 UTC (rev
84609)
+++ trunk/gert/standalone/bug80913/Index1.aspx 2007-08-22 11:57:20 UTC (rev
84610)
@@ -0,0 +1 @@
+<%@ Page EnableSessionState="TRuE" language="c#"%><html></html>
\ No newline at end of file
Property changes on: trunk/gert/standalone/bug80913/Index1.aspx
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/gert/standalone/bug80913/Index2.aspx
===================================================================
--- trunk/gert/standalone/bug80913/Index2.aspx 2007-08-22 11:54:02 UTC (rev
84609)
+++ trunk/gert/standalone/bug80913/Index2.aspx 2007-08-22 11:57:20 UTC (rev
84610)
@@ -0,0 +1 @@
+<%@ Page EnableSEssIonState="Truee" language="c#"%><html></html>
\ No newline at end of file
Property changes on: trunk/gert/standalone/bug80913/Index2.aspx
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/gert/standalone/bug80913/Web1.config
===================================================================
--- trunk/gert/standalone/bug80913/Web1.config 2007-08-22 11:54:02 UTC (rev
84609)
+++ trunk/gert/standalone/bug80913/Web1.config 2007-08-22 11:57:20 UTC (rev
84610)
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<configuration>
+ <system.web>
+ <pages enableSessionState="false" />
+ </system.web>
+</configuration>
Property changes on: trunk/gert/standalone/bug80913/Web1.config
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/gert/standalone/bug80913/Web2.config
===================================================================
--- trunk/gert/standalone/bug80913/Web2.config 2007-08-22 11:54:02 UTC (rev
84609)
+++ trunk/gert/standalone/bug80913/Web2.config 2007-08-22 11:57:20 UTC (rev
84610)
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<configuration>
+ <system.web>
+ <pages enableSessionState="false" />
+ </system.web>
+</configuration>
Property changes on: trunk/gert/standalone/bug80913/Web2.config
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/gert/standalone/bug80913/Web3.config
===================================================================
--- trunk/gert/standalone/bug80913/Web3.config 2007-08-22 11:54:02 UTC (rev
84609)
+++ trunk/gert/standalone/bug80913/Web3.config 2007-08-22 11:57:20 UTC (rev
84610)
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<configuration>
+ <system.web>
+ <pages enableSessionState="ReadOnly" />
+ </system.web>
+</configuration>
Property changes on: trunk/gert/standalone/bug80913/Web3.config
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/gert/standalone/bug80913/Web4.config
===================================================================
--- trunk/gert/standalone/bug80913/Web4.config 2007-08-22 11:54:02 UTC (rev
84609)
+++ trunk/gert/standalone/bug80913/Web4.config 2007-08-22 11:57:20 UTC (rev
84610)
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<configuration>
+ <system.web>
+ <pages enableSessionState="False" />
+ </system.web>
+</configuration>
Property changes on: trunk/gert/standalone/bug80913/Web4.config
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/gert/standalone/bug80913/default.build
===================================================================
--- trunk/gert/standalone/bug80913/default.build 2007-08-22 11:54:02 UTC
(rev 84609)
+++ trunk/gert/standalone/bug80913/default.build 2007-08-22 11:57:20 UTC
(rev 84610)
@@ -0,0 +1,64 @@
+<project name="bug80913" default="rebuild">
+ <target name="mono-1.0">
+ <property name="csc.defines"
value="NET_1_0,NET_1_1,ONLY_1_1,MONO" />
+ </target>
+
+ <target name="mono-2.0">
+ <property name="csc.defines"
value="NET_1_0,NET_1_1,NET_2_0,ONLY_2_0,MONO" />
+ </target>
+
+ <target name="net-1.1">
+ <property name="csc.defines" value="NET_1_0,NET_1_1,ONLY_1_1" />
+ </target>
+
+ <target name="net-2.0">
+ <property name="csc.defines"
value="NET_1_0,NET_1_1,NET_2_0,ONLY_2_0" />
+ </target>
+
+ <property name="frameworks" value="mono-1.0,mono-2.0,net-1.1,net-2.0" />
+
+ <target name="clean">
+ <delete>
+ <fileset>
+ <include name="bin/**" />
+ <include name="out" />
+ <include name="test.exe" />
+ <include name="Web.config" />
+ </fileset>
+ </delete>
+ </target>
+
+ <target name="build">
+ <property name="original.targetframework"
value="${nant.settings.currentframework}" />
+
+ <foreach property="framework" item="String" in="${frameworks}"
delim=",">
+ <if test="${framework::exists(framework)}">
+ <property name="nant.settings.currentframework"
value="${framework}" />
+ <call
target="${nant.settings.currentframework}" />
+ <call target="run" />
+ <call target="clean" />
+ </if>
+ </foreach>
+
+ <property name="nant.settings.currentframework"
value="${original.targetframework}" />
+ </target>
+
+ <target name="compile">
+ <csc target="exe" define="${csc.defines}" output="test.exe"
warnaserror="true" warninglevel="4">
+ <sources>
+ <include name="test.cs" />
+ </sources>
+ <references>
+ <include name="System.Web.dll" />
+ </references>
+ </csc>
+ </target>
+
+ <target name="run" depends="compile">
+ <exec program="test.exe" managed="true" output="out" />
+ <fail if="${file::exists('out')}" />
+ </target>
+
+ <target name="rebuild" depends="clean, build" />
+</project>
+
Property changes on: trunk/gert/standalone/bug80913/default.build
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/gert/standalone/bug80913/test.cs
===================================================================
--- trunk/gert/standalone/bug80913/test.cs 2007-08-22 11:54:02 UTC (rev
84609)
+++ trunk/gert/standalone/bug80913/test.cs 2007-08-22 11:57:20 UTC (rev
84610)
@@ -0,0 +1,107 @@
+using System;
+using System.Globalization;
+using System.IO;
+using System.Threading;
+using System.Web;
+using System.Web.Hosting;
+
+class TinyHost : MarshalByRefObject
+{
+ static TinyHost CreateHost ()
+ {
+ string path = AppDomain.CurrentDomain.BaseDirectory;
+ string bin = Path.Combine (path, "bin");
+ string asm = Path.GetFileName (typeof
(TinyHost).Assembly.Location);
+
+ Directory.CreateDirectory (bin);
+ File.Copy (asm, Path.Combine (bin, asm), true);
+
+ return (TinyHost) ApplicationHost.CreateApplicationHost (
+ typeof (TinyHost), "/", path);
+ }
+
+ public void Execute (string page, TextWriter tw)
+ {
+ SimpleWorkerRequest req = new SimpleWorkerRequest (
+ page, "", tw);
+ HttpRuntime.ProcessRequest (req);
+ }
+
+ static int Main ()
+ {
+ string result = null;
+
+ result = ExecuteRequest ("Web1.config", "Index1.aspx");
+ if (result != "<html></html>") {
+ Console.WriteLine (result);
+ return 1;
+ }
+
+ result = ExecuteRequest ("Web2.config", "Index1.aspx");
+ if (result != "<html></html>") {
+ Console.WriteLine (result);
+ return 2;
+ }
+
+ result = ExecuteRequest ("Web3.config", "Index1.aspx");
+ if (result != "<html></html>") {
+ Console.WriteLine (result);
+ return 3;
+ }
+
+ result = ExecuteRequest ("Web4.config", "Index1.aspx");
+#if NET_2_0
+ if (result.IndexOf ("ConfigurationErrorsException") == -1 ||
result.IndexOf ("enableSessionState") == -1) {
+#else
+ if (result.IndexOf ("ConfigurationException") == -1 ||
result.IndexOf ("enableSessionState") == -1) {
+#endif
+ Console.WriteLine (result);
+ return 4;
+ }
+
+ result = ExecuteRequest ("Web1.config", "Index2.aspx");
+ if (result.IndexOf ("Parser Error") == -1 || result.IndexOf
("enableSessionState") == -1) {
+ Console.WriteLine (result);
+ return 5;
+ }
+
+ result = ExecuteRequest ("Web2.config", "Index2.aspx");
+ if (result.IndexOf ("Parser Error") == -1 || result.IndexOf
("enableSessionState") == -1) {
+ Console.WriteLine (result);
+ return 6;
+ }
+
+ result = ExecuteRequest ("Web3.config", "Index2.aspx");
+ if (result.IndexOf ("Parser Error") == -1 || result.IndexOf
("enableSessionState") == -1) {
+ Console.WriteLine (result);
+ return 7;
+ }
+
+ result = ExecuteRequest ("Web4.config", "Index2.aspx");
+#if NET_2_0
+ if (result.IndexOf ("ConfigurationErrorsException") == -1 ||
result.IndexOf ("enableSessionState") == -1) {
+#else
+ if (result.IndexOf ("ConfigurationException") == -1 ||
result.IndexOf ("enableSessionState") == -1) {
+#endif
+ Console.WriteLine (result);
+ return 8;
+ }
+
+ return 0;
+ }
+
+ static string ExecuteRequest (string config, string page)
+ {
+ File.Copy (Path.Combine (AppDomain.CurrentDomain.BaseDirectory,
config),
+ _webConfig, true);
+
+ TinyHost h = CreateHost ();
+ StringWriter sw = new StringWriter ();
+ h.Execute (page, sw);
+ return sw.ToString ();
+ }
+
+ static string _webConfig = Path.Combine
(AppDomain.CurrentDomain.BaseDirectory,
+ "Web.config");
+
+}
Property changes on: trunk/gert/standalone/bug80913/test.cs
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/gert/standalone/bug82046/default.build
===================================================================
--- trunk/gert/standalone/bug82046/default.build 2007-08-22 11:54:02 UTC
(rev 84609)
+++ trunk/gert/standalone/bug82046/default.build 2007-08-22 11:57:20 UTC
(rev 84610)
@@ -0,0 +1,50 @@
+<project name="bug82046" default="rebuild">
+ <target name="mono-2.0">
+ <property name="csc.defines"
value="NET_1_0,NET_1_1,NET_2_0,ONLY_2_0,MONO" />
+ </target>
+
+ <target name="net-2.0">
+ <property name="csc.defines"
value="NET_1_0,NET_1_1,NET_2_0,ONLY_2_0" />
+ </target>
+
+ <property name="frameworks" value="mono-2.0,net-2.0" />
+
+ <target name="clean">
+ <delete>
+ <fileset>
+ <include name="out" />
+ <include name="test.exe" />
+ </fileset>
+ </delete>
+ </target>
+
+ <target name="build">
+ <property name="original.targetframework"
value="${nant.settings.currentframework}" />
+
+ <foreach property="framework" item="String" in="${frameworks}"
delim=",">
+ <if test="${framework::exists(framework)}">
+ <property name="nant.settings.currentframework"
value="${framework}" />
+ <call
target="${nant.settings.currentframework}" />
+ <call target="run" />
+ <call target="clean" />
+ </if>
+ </foreach>
+
+ <property name="nant.settings.currentframework"
value="${original.targetframework}" />
+ </target>
+
+ <target name="compile">
+ <ilasm target="exe" output="test.exe">
+ <sources>
+ <include name="test.il" />
+ </sources>
+ </ilasm>
+ </target>
+
+ <target name="run" depends="compile">
+ <exec program="test.exe" managed="true" output="out" />
+ <fail if="${file::exists('out')}" />
+ </target>
+
+ <target name="rebuild" depends="clean, build" />
+</project>
Property changes on: trunk/gert/standalone/bug82046/default.build
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/gert/standalone/bug82046/test.cs
===================================================================
--- trunk/gert/standalone/bug82046/test.cs 2007-08-22 11:54:02 UTC (rev
84609)
+++ trunk/gert/standalone/bug82046/test.cs 2007-08-22 11:57:20 UTC (rev
84610)
@@ -0,0 +1,55 @@
+using System;
+using System.Collections.Generic;
+using System.Reflection;
+
+class Program
+{
+ [MyAttribute (typeof (IList<string>))]
+ public IList<string> MyField1 = new List <string> ();
+
+ [MyAttribute (typeof (IList<Program>))]
+ public IList<Program> MyField2 = new List <Program> ();
+
+ static int Main ()
+ {
+ FieldInfo fi;
+ object [] attrs;
+ MyAttribute myAttr;
+
+ fi = typeof (Program).GetField ("MyField1");
+ attrs = fi.GetCustomAttributes (true);
+
+ if (attrs.Length != 1)
+ return 1;
+
+ myAttr = (MyAttribute) attrs [0];
+ if (myAttr.Type != typeof (IList<string>))
+ return 2;
+
+ fi = typeof (Program).GetField ("MyField2");
+ attrs = fi.GetCustomAttributes (true);
+
+ if (attrs.Length != 1)
+ return 3;
+
+ myAttr = (MyAttribute) attrs [0];
+ if (myAttr.Type != typeof (IList<Program>))
+ return 4;
+
+ return 0;
+ }
+}
+
+public class MyAttribute : Attribute
+{
+ public MyAttribute (Type type)
+ {
+ _type = type;
+ }
+
+ public Type Type {
+ get { return _type; }
+ }
+
+ private Type _type;
+}
Property changes on: trunk/gert/standalone/bug82046/test.cs
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/gert/standalone/bug82046/test.il
===================================================================
--- trunk/gert/standalone/bug82046/test.il 2007-08-22 11:54:02 UTC (rev
84609)
+++ trunk/gert/standalone/bug82046/test.il 2007-08-22 11:57:20 UTC (rev
84610)
@@ -0,0 +1,196 @@
+.assembly extern mscorlib
+{
+ .publickeytoken = (B7 7A 5C 56 19 34 E0 89 )
+ .ver 2:0:0:0
+}
+.assembly test
+{
+ .custom instance void
[mscorlib]System.Runtime.CompilerServices.RuntimeCompatibilityAttribute::.ctor()
= ( 01 00 01 00 54 02 16 57 72 61 70 4E 6F 6E 45 78
+
63 65 70 74 69
6F 6E 54 68 72 6F 77 73 01 )
+ .custom instance void
[mscorlib]System.Runtime.CompilerServices.CompilationRelaxationsAttribute::.ctor(int32)
= ( 01 00 08 00 00 00 00 00 )
+ .hash algorithm 0x00008004
+ .ver 0:0:0:0
+}
+.module test.exe
+.imagebase 0x00400000
+.file alignment 0x00000200
+.stackreserve 0x00100000
+.subsystem 0x0003
+.corflags 0x00000001
+
+.class private auto ansi beforefieldinit Program extends
[mscorlib]System.Object
+{
+ .field public class
[mscorlib]System.Collections.Generic.IList`1<string> MyField1
+ .custom instance void MyAttribute::.ctor(class [mscorlib]System.Type) =
( 01 00 80 CD 53 79 73 74 65 6D 2E 43 6F 6C 6C 65
+
63 74
69 6F 6E 73 2E 47 65 6E 65 72 69 63 2E 49
+
4C 69
73 74 60 31 5B 5B 53 79 73 74 65 6D 2E 53
+
74 72
69 6E 67 2C 20 6D 73 63 6F 72 6C 69 62 2C
+
20 56
65 72 73 69 6F 6E 3D 32 2E 30 2E 30 2E 30
+
2C 20
43 75 6C 74 75 72 65 3D 6E 65 75 74 72 61
+
6C 2C
20 50 75 62 6C 69 63 4B 65 79 54 6F 6B 65
+
6E 3D
62 37 37 61 35 63 35 36 31 39 33 34 65 30
+
38 39
5D 5D 2C 20 6D 73 63 6F 72 6C 69 62 2C 20
+
56 65
72 73 69 6F 6E 3D 32 2E 30 2E 30 2E 30 2C
+
20 43
75 6C 74 75 72 65 3D 6E 65 75 74 72 61 6C
+
2C 20
50 75 62 6C 69 63 4B 65 79 54 6F 6B 65 6E
+
3D 62
37 37 61 35 63 35 36 31 39 33 34 65 30 38
+
39 00
00 )
+ .field public class [mscorlib]System.Collections.Generic.IList`1<class
Program> MyField2
+ .custom instance void MyAttribute::.ctor(class [mscorlib]System.Type) =
( 01 00 78 53 79 73 74 65 6D 2E 43 6F 6C 6C 65 63
+
74 69
6F 6E 73 2E 47 65 6E 65 72 69 63 2E 49 4C
+
69 73
74 60 31 5B 50 72 6F 67 72 61 6D 5D 2C 20
+
6D 73
63 6F 72 6C 69 62 2C 20 56 65 72 73 69 6F
+
6E 3D
32 2E 30 2E 30 2E 30 2C 20 43 75 6C 74 75
+
72 65
3D 6E 65 75 74 72 61 6C 2C 20 50 75 62 6C
+
69 63
4B 65 79 54 6F 6B 65 6E 3D 62 37 37 61 35
+
63 35
36 31 39 33 34 65 30 38 39 00 00 )
+ .method private hidebysig static int32 Main() cil managed
+ {
+ .entrypoint
+ .maxstack 2
+ .locals init (class [mscorlib]System.Reflection.FieldInfo V_0,
+ object[] V_1,
+ class MyAttribute V_2,
+ int32 V_3,
+ bool V_4)
+ IL_0000: nop
+ IL_0001: ldtoken Program
+ IL_0006: call class [mscorlib]System.Type
[mscorlib]System.Type::GetTypeFromHandle(valuetype
[mscorlib]System.RuntimeTypeHandle)
+ IL_000b: ldstr "MyField1"
+ IL_0010: call instance class
[mscorlib]System.Reflection.FieldInfo [mscorlib]System.Type::GetField(string)
+ IL_0015: stloc.0
+ IL_0016: ldloc.0
+ IL_0017: ldc.i4.1
+ IL_0018: callvirt instance object[]
[mscorlib]System.Reflection.MemberInfo::GetCustomAttributes(bool)
+ IL_001d: stloc.1
+ IL_001e: ldloc.1
+ IL_001f: ldlen
+ IL_0020: conv.i4
+ IL_0021: ldc.i4.1
+ IL_0022: ceq
+ IL_0024: stloc.s V_4
+ IL_0026: ldloc.s V_4
+ IL_0028: brtrue.s IL_002e
+
+ IL_002a: ldc.i4.1
+ IL_002b: stloc.3
+ IL_002c: br.s IL_00a9
+
+ IL_002e: ldloc.1
+ IL_002f: ldc.i4.0
+ IL_0030: ldelem.ref
+ IL_0031: castclass MyAttribute
+ IL_0036: stloc.2
+ IL_0037: ldloc.2
+ IL_0038: callvirt instance class [mscorlib]System.Type
MyAttribute::get_Type()
+ IL_003d: ldtoken class
[mscorlib]System.Collections.Generic.IList`1<string>
+ IL_0042: call class [mscorlib]System.Type
[mscorlib]System.Type::GetTypeFromHandle(valuetype
[mscorlib]System.RuntimeTypeHandle)
+ IL_0047: ceq
+ IL_0049: stloc.s V_4
+ IL_004b: ldloc.s V_4
+ IL_004d: brtrue.s IL_0053
+
+ IL_004f: ldc.i4.2
+ IL_0050: stloc.3
+ IL_0051: br.s IL_00a9
+
+ IL_0053: ldtoken Program
+ IL_0058: call class [mscorlib]System.Type
[mscorlib]System.Type::GetTypeFromHandle(valuetype
[mscorlib]System.RuntimeTypeHandle)
+ IL_005d: ldstr "MyField2"
+ IL_0062: call instance class
[mscorlib]System.Reflection.FieldInfo [mscorlib]System.Type::GetField(string)
+ IL_0067: stloc.0
+ IL_0068: ldloc.0
+ IL_0069: ldc.i4.1
+ IL_006a: callvirt instance object[]
[mscorlib]System.Reflection.MemberInfo::GetCustomAttributes(bool)
+ IL_006f: stloc.1
+ IL_0070: ldloc.1
+ IL_0071: ldlen
+ IL_0072: conv.i4
+ IL_0073: ldc.i4.1
+ IL_0074: ceq
+ IL_0076: stloc.s V_4
+ IL_0078: ldloc.s V_4
+ IL_007a: brtrue.s IL_0080
+
+ IL_007c: ldc.i4.3
+ IL_007d: stloc.3
+ IL_007e: br.s IL_00a9
+
+ IL_0080: ldloc.1
+ IL_0081: ldc.i4.0
+ IL_0082: ldelem.ref
+ IL_0083: castclass MyAttribute
+ IL_0088: stloc.2
+ IL_0089: ldloc.2
+ IL_008a: callvirt instance class [mscorlib]System.Type
MyAttribute::get_Type()
+ IL_008f: ldtoken class
[mscorlib]System.Collections.Generic.IList`1<class Program>
+ IL_0094: call class [mscorlib]System.Type
[mscorlib]System.Type::GetTypeFromHandle(valuetype
[mscorlib]System.RuntimeTypeHandle)
+ IL_0099: ceq
+ IL_009b: stloc.s V_4
+ IL_009d: ldloc.s V_4
+ IL_009f: brtrue.s IL_00a5
+
+ IL_00a1: ldc.i4.4
+ IL_00a2: stloc.3
+ IL_00a3: br.s IL_00a9
+
+ IL_00a5: ldc.i4.0
+ IL_00a6: stloc.3
+ IL_00a7: br.s IL_00a9
+
+ IL_00a9: ldloc.3
+ IL_00aa: ret
+ }
+
+ .method public hidebysig specialname rtspecialname instance void
.ctor() cil managed
+ {
+ .maxstack 8
+ IL_0000: ldarg.0
+ IL_0001: newobj instance void class
[mscorlib]System.Collections.Generic.List`1<string>::.ctor()
+ IL_0006: stfld class
[mscorlib]System.Collections.Generic.IList`1<string> Program::MyField1
+ IL_000b: ldarg.0
+ IL_000c: newobj instance void class
[mscorlib]System.Collections.Generic.List`1<class Program>::.ctor()
+ IL_0011: stfld class
[mscorlib]System.Collections.Generic.IList`1<class Program> Program::MyField2
+ IL_0016: ldarg.0
+ IL_0017: call instance void
[mscorlib]System.Object::.ctor()
+ IL_001c: nop
+ IL_001d: ret
+ }
+}
+
+.class public auto ansi beforefieldinit MyAttribute extends
[mscorlib]System.Attribute
+{
+ .field private class [mscorlib]System.Type _type
+ .method public hidebysig specialname rtspecialname instance void
.ctor(class [mscorlib]System.Type 'type') cil managed
+ {
+ .maxstack 8
+ IL_0000: ldarg.0
+ IL_0001: call instance void
[mscorlib]System.Attribute::.ctor()
+ IL_0006: nop
+ IL_0007: nop
+ IL_0008: ldarg.0
+ IL_0009: ldarg.1
+ IL_000a: stfld class [mscorlib]System.Type
MyAttribute::_type
+ IL_000f: nop
+ IL_0010: ret
+ }
+
+ .method public hidebysig specialname instance class
[mscorlib]System.Type get_Type() cil managed
+ {
+ .maxstack 1
+ .locals init (class [mscorlib]System.Type V_0)
+ IL_0000: nop
+ IL_0001: ldarg.0
+ IL_0002: ldfld class [mscorlib]System.Type
MyAttribute::_type
+ IL_0007: stloc.0
+ IL_0008: br.s IL_000a
+
+ IL_000a: ldloc.0
+ IL_000b: ret
+ }
+
+ .property instance class [mscorlib]System.Type Type()
+ {
+ .get instance class [mscorlib]System.Type
MyAttribute::get_Type()
+ }
+}
Property changes on: trunk/gert/standalone/bug82046/test.il
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/gert/standalone/bug82479/default.build
===================================================================
--- trunk/gert/standalone/bug82479/default.build 2007-08-22 11:54:02 UTC
(rev 84609)
+++ trunk/gert/standalone/bug82479/default.build 2007-08-22 11:57:20 UTC
(rev 84610)
@@ -0,0 +1,62 @@
+<project name="bug82479" default="rebuild">
+ <target name="mono-1.0">
+ <property name="csc.defines"
value="NET_1_0,NET_1_1,ONLY_1_1,MONO" />
+ </target>
+
+ <target name="mono-2.0">
+ <property name="csc.defines"
value="NET_1_0,NET_1_1,NET_2_0,ONLY_2_0,MONO" />
+ </target>
+
+ <target name="net-1.1">
+ <property name="csc.defines" value="NET_1_0,NET_1_1,ONLY_1_1" />
+ </target>
+
+ <target name="net-2.0">
+ <property name="csc.defines"
value="NET_1_0,NET_1_1,NET_2_0,ONLY_2_0" />
+ </target>
+
+ <property name="frameworks" value="mono-1.0,mono-2.0,net-1.1,net-2.0" />
+
+ <target name="clean">
+ <delete>
+ <fileset>
+ <include name="web/bin/**" />
+ <include name="out" />
+ <include name="test.exe" />
+ </fileset>
+ </delete>
+ </target>
+
+ <target name="build">
+ <property name="original.targetframework"
value="${nant.settings.currentframework}" />
+
+ <foreach property="framework" item="String" in="${frameworks}"
delim=",">
+ <if test="${framework::exists(framework)}">
+ <property name="nant.settings.currentframework"
value="${framework}" />
+ <call
target="${nant.settings.currentframework}" />
+ <call target="run" />
+ <call target="clean" />
+ </if>
+ </foreach>
+
+ <property name="nant.settings.currentframework"
value="${original.targetframework}" />
+ </target>
+
+ <target name="compile">
+ <csc target="exe" define="${csc.defines}" output="test.exe"
warnaserror="true" warninglevel="4">
+ <sources>
+ <include name="test.cs" />
+ </sources>
+ <references>
+ <include name="System.Web.dll" />
+ </references>
+ </csc>
+ </target>
+
+ <target name="run" depends="compile">
+ <exec program="test.exe" managed="true" output="out" />
+ <fail if="${file::exists('out')}" />
+ </target>
+
+ <target name="rebuild" depends="clean, build" />
+</project>
Property changes on: trunk/gert/standalone/bug82479/default.build
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/gert/standalone/bug82479/test.cs
===================================================================
--- trunk/gert/standalone/bug82479/test.cs 2007-08-22 11:54:02 UTC (rev
84609)
+++ trunk/gert/standalone/bug82479/test.cs 2007-08-22 11:57:20 UTC (rev
84610)
@@ -0,0 +1,41 @@
+using System;
+using System.IO;
+using System.Web;
+using System.Web.Hosting;
+
+class TinyHost : MarshalByRefObject
+{
+ static TinyHost CreateHost ()
+ {
+ string path = Path.Combine
(AppDomain.CurrentDomain.BaseDirectory, "web");
+ string bin = Path.Combine (path, "bin");
+ string asm = Path.GetFileName (typeof
(TinyHost).Assembly.Location);
+
+ Directory.CreateDirectory (bin);
+ File.Copy (asm, Path.Combine (bin, asm), true);
+
+ return (TinyHost) ApplicationHost.CreateApplicationHost (
+ typeof (TinyHost), "/", path);
+ }
+
+ public void Execute (string page, TextWriter tw)
+ {
+ SimpleWorkerRequest req = new SimpleWorkerRequest (
+ page, "", tw);
+ HttpRuntime.ProcessRequest (req);
+ }
+
+ static int Main ()
+ {
+ TinyHost h = CreateHost ();
+ StringWriter sw = new StringWriter ();
+ h.Execute ("Default.aspx", sw);
+ string result = sw.ToString ();
+ if (result.IndexOf ("Hello World.") == -1) {
+ Console.WriteLine (result);
+ return 1;
+ }
+
+ return 0;
+ }
+}
Property changes on: trunk/gert/standalone/bug82479/test.cs
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/gert/standalone/bug82479/web/Default.aspx
===================================================================
--- trunk/gert/standalone/bug82479/web/Default.aspx 2007-08-22 11:54:02 UTC
(rev 84609)
+++ trunk/gert/standalone/bug82479/web/Default.aspx 2007-08-22 11:57:20 UTC
(rev 84610)
@@ -0,0 +1,13 @@
+<%@ Page Language="C#"%>
+<script runat="server">
+ void Page_Load(object o, EventArgs e)
+ {
+ Basket.ToString ();
+ Holder.ToString ();
+ }
+</script>
+<html>
+ <body>
+ Hello World.
+ </body>
+</html>
Property changes on: trunk/gert/standalone/bug82479/web/Default.aspx
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/gert/standalone/bug82479/web/Global.asax
===================================================================
--- trunk/gert/standalone/bug82479/web/Global.asax 2007-08-22 11:54:02 UTC
(rev 84609)
+++ trunk/gert/standalone/bug82479/web/Global.asax 2007-08-22 11:57:20 UTC
(rev 84610)
@@ -0,0 +1,3 @@
+<% @Application Language="C#" %>
+<object id='Basket' class='System.Collections.Hashtable' scope='sEsSION'
runat='server' />
+<object id="Holder" scope="ApplicatioN" class="System.Object" runat="server" />
Modified: trunk/gert/standalone/default.build
===================================================================
--- trunk/gert/standalone/default.build 2007-08-22 11:54:02 UTC (rev 84609)
+++ trunk/gert/standalone/default.build 2007-08-22 11:57:20 UTC (rev 84610)
@@ -10,6 +10,8 @@
<excludesfile name="known-issues" />
<!-- exclude local tests -->
<excludesfile name="local-tests" />
+ <!-- exclude longrunning tests -->
+ <excludesfile name="longrunning-tests" />
</buildfiles>
</nant>
</target>
@@ -23,4 +25,14 @@
</buildfiles>
</nant>
</target>
+
+ <target name="longrunning-tests">
+ <nant target="rebuild">
+ <buildfiles>
+ <includesfile name="longrunning-tests" />
+ <!-- exclude known issues -->
+ <excludesfile name="known-issues" />
+ </buildfiles>
+ </nant>
+ </target>
</project>
Modified: trunk/gert/standalone/known-issues
===================================================================
--- trunk/gert/standalone/known-issues 2007-08-22 11:54:02 UTC (rev 84609)
+++ trunk/gert/standalone/known-issues 2007-08-22 11:57:20 UTC (rev 84610)
@@ -5,6 +5,7 @@
bug75823/**
bug76295/**
bug76678/**
+bug77040/**
bug77208/**
bug78455/**
bug78882/**
@@ -48,7 +49,6 @@
bug82038/**
bug82049/**
bug82053/**
-bug82071/**
bug82076/**
bug82080/**
bug82087/**
Property changes on: trunk/gert/standalone/known-issues
___________________________________________________________________
Name: svn:eol-style
+ native
Property changes on: trunk/gert/standalone/local-tests
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/gert/standalone/longrunning-tests
===================================================================
--- trunk/gert/standalone/longrunning-tests 2007-08-22 11:54:02 UTC (rev
84609)
+++ trunk/gert/standalone/longrunning-tests 2007-08-22 11:57:20 UTC (rev
84610)
@@ -0,0 +1 @@
+bug77736/**
\ No newline at end of file
Property changes on: trunk/gert/standalone/longrunning-tests
___________________________________________________________________
Name: svn:eol-style
+ native
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches