diff options
Diffstat (limited to 'testtools')
-rw-r--r-- | testtools/com/sun/star/comp/bridge/TestComponent.java | 5 | ||||
-rw-r--r-- | testtools/source/bridgetest/bridgetest.cxx | 6 | ||||
-rw-r--r-- | testtools/source/bridgetest/cli/cli_cs_testobj.cs | 2 | ||||
-rw-r--r-- | testtools/source/bridgetest/cppobj.cxx | 1 | ||||
-rw-r--r-- | testtools/source/bridgetest/idl/bridgetest.idl | 6 |
5 files changed, 20 insertions, 0 deletions
diff --git a/testtools/com/sun/star/comp/bridge/TestComponent.java b/testtools/com/sun/star/comp/bridge/TestComponent.java index e5cb2c49a907..dcc835125219 100644 --- a/testtools/com/sun/star/comp/bridge/TestComponent.java +++ b/testtools/com/sun/star/comp/bridge/TestComponent.java @@ -42,6 +42,7 @@ import test.testtools.bridgetest.TwoFloats; import test.testtools.bridgetest.FourFloats; import test.testtools.bridgetest.MixedFloatAndInteger; import test.testtools.bridgetest.DoubleHyper; +import test.testtools.bridgetest.HyperDouble; import test.testtools.bridgetest.FloatFloatLongByte; import test.testtools.bridgetest.ThreeByteStruct; import test.testtools.bridgetest.XBridgeTest; @@ -510,6 +511,10 @@ public class TestComponent { return s; } + public HyperDouble echoHyperDouble(HyperDouble s) throws com.sun.star.uno.RuntimeException { + return s; + } + public FloatFloatLongByte echoFloatFloatLongByte(FloatFloatLongByte s) throws com.sun.star.uno.RuntimeException { diff --git a/testtools/source/bridgetest/bridgetest.cxx b/testtools/source/bridgetest/bridgetest.cxx index 2d3de2aca07f..6228d9423411 100644 --- a/testtools/source/bridgetest/bridgetest.cxx +++ b/testtools/source/bridgetest/bridgetest.cxx @@ -491,6 +491,12 @@ static bool performTest( && check(out.b == in.b, "double and hyper struct test: hyper"); } { + HyperDouble in(12, 13.0); + HyperDouble out = xLBT->echoHyperDouble(in); + bRet &= check(out.a == in.a, "hyper and double struct test: hyper") + && check(out.b == in.b, "hyper and double struct test: double"); + } + { FloatFloatLongByte in(20.0f, 21.0f, 22, '3'); FloatFloatLongByte out = xLBT->echoFloatFloatLongByte(in); bRet &= check(out.a == in.a, "double and hyper struct test: first float") diff --git a/testtools/source/bridgetest/cli/cli_cs_testobj.cs b/testtools/source/bridgetest/cli/cli_cs_testobj.cs index fb4148cc2a68..8d209ec44f01 100644 --- a/testtools/source/bridgetest/cli/cli_cs_testobj.cs +++ b/testtools/source/bridgetest/cli/cli_cs_testobj.cs @@ -261,6 +261,8 @@ public class BridgeTestObject : WeakBase, XRecursiveCall, XBridgeTest2 public DoubleHyper echoDoubleHyper(Mix s) { return s; } + public HyperDouble echoHyperDouble(Mix s) { return s; } + public FloatFloatLongByte echoFloatFloatLongByte(Mix s) { return s; } public ThreeByteStruct echoThreeByteStruct(/*[in]*/ThreeByteStruct arg) diff --git a/testtools/source/bridgetest/cppobj.cxx b/testtools/source/bridgetest/cppobj.cxx index 27b06ea7f0ad..e4666c4d22a3 100644 --- a/testtools/source/bridgetest/cppobj.cxx +++ b/testtools/source/bridgetest/cppobj.cxx @@ -246,6 +246,7 @@ public: virtual MixedFloatAndInteger SAL_CALL echoMixedFloatAndInteger(const MixedFloatAndInteger& rStruct) override { return rStruct; } virtual DoubleHyper SAL_CALL echoDoubleHyper(DoubleHyper const & s) override { return s; } + virtual HyperDouble SAL_CALL echoHyperDouble(HyperDouble const & s) override { return s; } virtual FloatFloatLongByte SAL_CALL echoFloatFloatLongByte(FloatFloatLongByte const & s) override { return s; } diff --git a/testtools/source/bridgetest/idl/bridgetest.idl b/testtools/source/bridgetest/idl/bridgetest.idl index d9732edde7a8..82d63c37e9e3 100644 --- a/testtools/source/bridgetest/idl/bridgetest.idl +++ b/testtools/source/bridgetest/idl/bridgetest.idl @@ -126,6 +126,10 @@ struct DoubleHyper { double a; hyper b; }; +struct HyperDouble { + hyper a; + double b; +}; struct FloatFloatLongByte { float a; float b; @@ -340,6 +344,8 @@ interface XBridgeTestBase : com::sun::star::uno::XInterface DoubleHyper echoDoubleHyper([in] DoubleHyper s); + HyperDouble echoHyperDouble([in] HyperDouble s); + FloatFloatLongByte echoFloatFloatLongByte([in] FloatFloatLongByte s); /** |