2010-05-25 Jb Evain <jbevain@novell.com>
[mcs.git] / class / System.Runtime.Remoting / Test / SyncCalls.cs
blob4fdc3be11b67443337179b4354c9f3336cb76bb6
1 //
2 // MonoTests.Remoting.SyncCalls.cs
3 //
4 // Author: Lluis Sanchez Gual (lluis@ximian.com)
5 //
6 // 2003 (C) Copyright, Ximian, Inc.
7 //
9 using System;
10 using System.Collections;
11 using NUnit.Framework;
12 using System.Text;
13 using System.Runtime.InteropServices;
15 namespace MonoTests.Remoting
17 public abstract class SyncCallTest : BaseCallTest
19 public override InstanceSurrogate GetInstanceSurrogate () { return new SyncInstanceSurrogate (); }
20 public override AbstractSurrogate GetAbstractSurrogate () { return new SyncAbstractSurrogate (); }
21 public override InterfaceSurrogate GetInterfaceSurrogate () { return new SyncInterfaceSurrogate (); }
24 public class SyncInstanceSurrogate : InstanceSurrogate
26 public override int Simple ()
28 return RemoteObject.Simple ();
31 public override string PrimitiveParams (int a, uint b, char c, string d)
33 return RemoteObject.PrimitiveParams (a, b, c, d);
36 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)
38 return RemoteObject.PrimitiveParamsInOut (ref a1, out a2, ref b1, out b2, filler, ref c1, out c2, ref d1, out d2);
41 public override Complex ComplexParams (ArrayList a, Complex b, string c)
43 return RemoteObject.ComplexParams (a, b, c);
46 public override Complex ComplexParamsInOut (ref ArrayList a, out Complex b, [In,Out] byte[] bytes, [In,Out] StringBuilder sb, string c)
48 return RemoteObject.ComplexParamsInOut (ref a, out b, bytes, sb, c);
51 public override void ProcessContextData ()
53 RemoteObject.ProcessContextData ();
57 public class SyncAbstractSurrogate : AbstractSurrogate
59 public override int Simple ()
61 return RemoteObject.Simple ();
64 public override string PrimitiveParams (int a, uint b, char c, string d)
66 return RemoteObject.PrimitiveParams (a, b, c, d);
69 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)
71 return RemoteObject.PrimitiveParamsInOut (ref a1, out a2, ref b1, out b2, filler, ref c1, out c2, ref d1, out d2);
74 public override Complex ComplexParams (ArrayList a, Complex b, string c)
76 return RemoteObject.ComplexParams (a, b, c);
79 public override Complex ComplexParamsInOut (ref ArrayList a, out Complex b, [In,Out] byte[] bytes, [In,Out] StringBuilder sb, string c)
81 return RemoteObject.ComplexParamsInOut (ref a, out b, bytes, sb, c);
84 public override void ProcessContextData ()
86 RemoteObject.ProcessContextData ();
90 public class SyncInterfaceSurrogate : InterfaceSurrogate
92 public override int Simple ()
94 return RemoteObject.Simple ();
97 public override string PrimitiveParams (int a, uint b, char c, string d)
99 return RemoteObject.PrimitiveParams (a, b, c, d);
102 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)
104 return RemoteObject.PrimitiveParamsInOut (ref a1, out a2, ref b1, out b2, filler, ref c1, out c2, ref d1, out d2);
107 public override Complex ComplexParams (ArrayList a, Complex b, string c)
109 return RemoteObject.ComplexParams (a, b, c);
112 public override Complex ComplexParamsInOut (ref ArrayList a, out Complex b, [In,Out] byte[] bytes, [In,Out] StringBuilder sb, string c)
114 return RemoteObject.ComplexParamsInOut (ref a, out b, bytes, sb, c);
117 public override void ProcessContextData ()
119 RemoteObject.ProcessContextData ();