diff options
Diffstat (limited to 'csharp/test/Ice/scope/AllTests.cs')
-rw-r--r-- | csharp/test/Ice/scope/AllTests.cs | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/csharp/test/Ice/scope/AllTests.cs b/csharp/test/Ice/scope/AllTests.cs index 17e4ae4ef32..73ae2a479ca 100644 --- a/csharp/test/Ice/scope/AllTests.cs +++ b/csharp/test/Ice/scope/AllTests.cs @@ -267,6 +267,89 @@ public class AllTests : Test.AllTests } { + Ice.ObjectPrx obj = communicator.stringToProxy("i4:" + helper.getTestEndpoint()); + Inner.Test.Inner2.IPrx i = Inner.Test.Inner2.IPrxHelper.checkedCast(obj); + + Test.S s1 = new Test.S(0); + Test.S s2; + Test.S s3 = i.opS(s1, out s2); + test(s2.Equals(s1)); + test(s3.Equals(s1)); + + Test.S[] sseq1 = new Test.S[] { s1 }; + Test.S[] sseq2; + Test.S[] sseq3 = i.opSSeq(sseq1, out sseq2); + test(sseq2[0].Equals(s1)); + test(sseq3[0].Equals(s1)); + + Dictionary<String, Test.S> smap1 = new Dictionary<String, Test.S>(); + smap1["a"] = s1; + Dictionary<String, Test.S> smap2; + Dictionary<String, Test.S> smap3 = i.opSMap(smap1, out smap2); + test(smap2["a"].Equals(s1)); + test(smap3["a"].Equals(s1)); + + Test.C c1 = new Test.C(s1); + Test.C c2; + Test.C c3 = i.opC(c1, out c2); + test(c2.s.Equals(c1.s)); + test(c3.s.Equals(c1.s)); + + Test.C[] cseq1 = new Test.C[] { c1 }; + Test.C[] cseq2; + Test.C[] cseq3 = i.opCSeq(cseq1, out cseq2); + test(cseq2[0].s.Equals(s1)); + test(cseq3[0].s.Equals(s1)); + + Dictionary<String, Test.C> cmap1 = new Dictionary<String, Test.C>(); + cmap1["a"] = c1; + Dictionary<String, Test.C> cmap2; + Dictionary<String, Test.C> cmap3 = i.opCMap(cmap1, out cmap2); + test(cmap2["a"].s.Equals(s1)); + test(cmap3["a"].s.Equals(s1)); + } + + { + Ice.ObjectPrx obj = communicator.stringToProxy("i4:" + helper.getTestEndpoint()); + Inner.Test.Inner2.IPrx i = Inner.Test.Inner2.IPrxHelper.checkedCast(obj); + + Task.Run(async () => + { + Test.S s1 = new Test.S(0); + Inner.Test.Inner2.I_OpSResult opSResult = await i.opSAsync(s1); + test(s1.Equals(opSResult.returnValue)); + test(s1.Equals(opSResult.s2)); + + Test.S[] sseq1 = new Test.S[] { s1 }; + Inner.Test.Inner2.I_OpSSeqResult opSSeqResult = await i.opSSeqAsync(sseq1); + test(opSSeqResult.returnValue[0].Equals(s1)); + test(opSSeqResult.s2[0].Equals(s1)); + + Dictionary<String, Test.S> smap1 = new Dictionary<String, Test.S>(); + smap1["a"] = s1; + Inner.Test.Inner2.I_OpSMapResult opSMapResult = await i.opSMapAsync(smap1); + test(opSMapResult.returnValue["a"].Equals(s1)); + test(opSMapResult.s2["a"].Equals(s1)); + + Test.C c1 = new Test.C(s1); + Inner.Test.Inner2.I_OpCResult opCResult = await i.opCAsync(c1); + test(c1.s.Equals(opCResult.returnValue.s)); + test(c1.s.Equals(opCResult.c2.s)); + + Test.C[] cseq1 = new Test.C[] { c1 }; + Inner.Test.Inner2.I_OpCSeqResult opCSeqResult = await i.opCSeqAsync(cseq1); + test(opCSeqResult.returnValue[0].s.Equals(s1)); + test(opCSeqResult.c2[0].s.Equals(s1)); + + Dictionary<String, Test.C> cmap1 = new Dictionary<String, Test.C>(); + cmap1["a"] = c1; + Inner.Test.Inner2.I_OpCMapResult opCMapResult = await i.opCMapAsync(cmap1); + test(opCMapResult.returnValue["a"].s.Equals(s1)); + test(opCMapResult.c2["a"].s.Equals(s1)); + }).Wait(); + } + + { Ice.ObjectPrx obj = communicator.stringToProxy("i1:" + helper.getTestEndpoint()); IPrx i = IPrxHelper.checkedCast(obj); i.shutdown(); |