//
-// MonoTests.System.Runtime.Remoting.DelegateCalls.cs
+// MonoTests.Remoting.DelegateCalls.cs
//
// Author: Lluis Sanchez Gual (lluis@ximian.com)
//
using System;
using System.Collections;
using NUnit.Framework;
+using System.Text;
+using System.Runtime.InteropServices;
-namespace MonoTests.System.Runtime.Remoting
+namespace MonoTests.Remoting
{
public abstract class DelegateCallTest : BaseCallTest
{
return de (a,b,c,d);
}
- public override string PrimitiveParamsInOut (ref int a1, out int a2, ref float b1, out float b2, ref char c1, out char c2, ref string d1, out string d2)
+ public override string PrimitiveParamsInOut (ref int a1, out int a2, ref float b1, out float b2, int filler, ref char c1, out char c2, ref string d1, out string d2)
{
DelegatePrimitiveParamsInOut de = new DelegatePrimitiveParamsInOut (RemoteObject.PrimitiveParamsInOut);
- return de (ref a1, out a2, ref b1, out b2, ref c1, out c2, ref d1, out d2);
+ return de (ref a1, out a2, ref b1, out b2, filler, ref c1, out c2, ref d1, out d2);
}
public override Complex ComplexParams (ArrayList a, Complex b, string c)
return de (a,b,c);
}
- public override Complex ComplexParamsInOut (ref ArrayList a, out Complex b, string c)
+ public override Complex ComplexParamsInOut (ref ArrayList a, out Complex b, [In,Out] byte[] bytes, [In,Out] StringBuilder sb, string c)
{
DelegateComplexParamsInOut de = new DelegateComplexParamsInOut (RemoteObject.ComplexParamsInOut);
- return de (ref a, out b, c);
+ return de (ref a, out b, bytes, sb, c);
+ }
+
+ public override void ProcessContextData ()
+ {
+ DelegateProcessContextData de = new DelegateProcessContextData (RemoteObject.ProcessContextData);
+ de ();
}
}
return de (a,b,c,d);
}
- public override string PrimitiveParamsInOut (ref int a1, out int a2, ref float b1, out float b2, ref char c1, out char c2, ref string d1, out string d2)
+ public override string PrimitiveParamsInOut (ref int a1, out int a2, ref float b1, out float b2, int filler, ref char c1, out char c2, ref string d1, out string d2)
{
DelegatePrimitiveParamsInOut de = new DelegatePrimitiveParamsInOut (RemoteObject.PrimitiveParamsInOut);
- return de (ref a1, out a2, ref b1, out b2, ref c1, out c2, ref d1, out d2);
+ return de (ref a1, out a2, ref b1, out b2, filler, ref c1, out c2, ref d1, out d2);
}
public override Complex ComplexParams (ArrayList a, Complex b, string c)
return de (a,b,c);
}
- public override Complex ComplexParamsInOut (ref ArrayList a, out Complex b, string c)
+ public override Complex ComplexParamsInOut (ref ArrayList a, out Complex b, [In,Out] byte[] bytes, [In,Out] StringBuilder sb, string c)
{
DelegateComplexParamsInOut de = new DelegateComplexParamsInOut (RemoteObject.ComplexParamsInOut);
- return de (ref a, out b, c);
+ return de (ref a, out b, bytes, sb, c);
+ }
+
+ public override void ProcessContextData ()
+ {
+ DelegateProcessContextData de = new DelegateProcessContextData (RemoteObject.ProcessContextData);
+ de ();
}
}
return de (a,b,c,d);
}
- public override string PrimitiveParamsInOut (ref int a1, out int a2, ref float b1, out float b2, ref char c1, out char c2, ref string d1, out string d2)
+ public override string PrimitiveParamsInOut (ref int a1, out int a2, ref float b1, out float b2, int filler, ref char c1, out char c2, ref string d1, out string d2)
{
DelegatePrimitiveParamsInOut de = new DelegatePrimitiveParamsInOut (RemoteObject.PrimitiveParamsInOut);
- return de (ref a1, out a2, ref b1, out b2, ref c1, out c2, ref d1, out d2);
+ return de (ref a1, out a2, ref b1, out b2, filler, ref c1, out c2, ref d1, out d2);
}
public override Complex ComplexParams (ArrayList a, Complex b, string c)
return de (a,b,c);
}
- public override Complex ComplexParamsInOut (ref ArrayList a, out Complex b, string c)
+ public override Complex ComplexParamsInOut (ref ArrayList a, out Complex b, [In,Out] byte[] bytes, [In,Out] StringBuilder sb, string c)
{
DelegateComplexParamsInOut de = new DelegateComplexParamsInOut (RemoteObject.ComplexParamsInOut);
- return de (ref a, out b, c);
+ return de (ref a, out b, bytes, sb, c);
+ }
+
+ public override void ProcessContextData ()
+ {
+ DelegateProcessContextData de = new DelegateProcessContextData (RemoteObject.ProcessContextData);
+ de ();
}
}
}