summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2012-02-17 09:03:36 +0000
committerCaolán McNamara <caolanm@redhat.com>2012-02-17 12:21:36 +0000
commit99bf0c318b89c7d6acee364161b34b13d348a3bb (patch)
tree28f9038d04e29553a74aaeb83a15ff0ae5c41a58
parent13de41eaaf5291199d1344092c1077e651da3448 (diff)
add a uno test api with more than 8 floating point args
I'm a cruel person, i.e. this targets the TODO of dab11f7fe2a2fa4155e4c4feaa5fc54e57cfbd37 in bridges/source/cpp_uno/gcc3_linux_arm/cpp2uno.cx
-rw-r--r--testtools/com/sun/star/comp/bridge/TestComponent.java4
-rw-r--r--testtools/source/bridgetest/bridgetest.cxx5
-rw-r--r--testtools/source/bridgetest/cli/cli_cs_testobj.cs5
-rw-r--r--testtools/source/bridgetest/cppobj.cxx3
-rw-r--r--testtools/source/bridgetest/idl/bridgetest.idl5
5 files changed, 21 insertions, 1 deletions
diff --git a/testtools/com/sun/star/comp/bridge/TestComponent.java b/testtools/com/sun/star/comp/bridge/TestComponent.java
index c63ff7fe2293..757139a2ce3c 100644
--- a/testtools/com/sun/star/comp/bridge/TestComponent.java
+++ b/testtools/com/sun/star/comp/bridge/TestComponent.java
@@ -511,6 +511,10 @@ public class TestComponent {
return i2;
}
+ public double testTenDoubles( double d1, double d2, double d3, double d4, double d5, double d6, double d7, double d8, double d9, double d10 ) {
+ return d1 + d2 + d3 + d4 + d5 + d6 + d7 + d8 + d9 + d10;
+ }
+
// Attributes
public boolean getBool() throws com.sun.star.uno.RuntimeException {
return _bool;
diff --git a/testtools/source/bridgetest/bridgetest.cxx b/testtools/source/bridgetest/bridgetest.cxx
index 968c5f1f216b..5e611da1e4ea 100644
--- a/testtools/source/bridgetest/bridgetest.cxx
+++ b/testtools/source/bridgetest/bridgetest.cxx
@@ -541,6 +541,11 @@ static sal_Bool performTest(
sal_Int32 i2 = xLBT->testPPCAlignment(0, 0, 0, 0, 0xBEAF);
bRet &= check(i2 == 0xBEAF, "ppc-style alignment test");
}
+ {
+ double d1 = xLBT->testTenDoubles(0.1, 0.2, 0.3, 0.4, 0.5,
+ 0.6, 0.7, 0.8, 0.9, 1.0);
+ bRet &= check(d1 == 5.5, "armhf doubles test");
+ }
// Test extended attributes that raise exceptions:
try {
xLBT->getRaiseAttr1();
diff --git a/testtools/source/bridgetest/cli/cli_cs_testobj.cs b/testtools/source/bridgetest/cli/cli_cs_testobj.cs
index 246d3e1898a6..f89241b1251c 100644
--- a/testtools/source/bridgetest/cli/cli_cs_testobj.cs
+++ b/testtools/source/bridgetest/cli/cli_cs_testobj.cs
@@ -264,6 +264,11 @@ public class BridgeTestObject : WeakBase, XRecursiveCall, XBridgeTest2
return i2;
}
+ double testTenDoubles( double d1, double d2, double d3, double d4, double d5, double d6, double d7, double d8, double d9, double d10 )
+ {
+ return d1 + d2 + d3 + d4 + d5 + d6 + d7 + d8 + d9 + d10;
+ }
+
// Attributes
public bool Bool
{
diff --git a/testtools/source/bridgetest/cppobj.cxx b/testtools/source/bridgetest/cppobj.cxx
index 0df13f51ca26..def69d93af37 100644
--- a/testtools/source/bridgetest/cppobj.cxx
+++ b/testtools/source/bridgetest/cppobj.cxx
@@ -230,7 +230,8 @@ public:
{ return rStruct; }
virtual sal_Int32 SAL_CALL testPPCAlignment( sal_Int64, sal_Int64, sal_Int32, sal_Int64, sal_Int32 i2 ) throw(com::sun::star::uno::RuntimeException)
{ return i2; }
-
+ virtual double SAL_CALL testTenDoubles( double d1, double d2, double d3, double d4, double d5, double d6, double d7, double d8, double d9, double d10 ) throw(com::sun::star::uno::RuntimeException)
+ { return d1 + d2 + d3 + d4 + d5 + d6 + d7 + d8 + d9 + d10; }
virtual sal_Bool SAL_CALL getBool() throw(com::sun::star::uno::RuntimeException)
{ return _aData.Bool; }
virtual sal_Int8 SAL_CALL getByte() throw(com::sun::star::uno::RuntimeException)
diff --git a/testtools/source/bridgetest/idl/bridgetest.idl b/testtools/source/bridgetest/idl/bridgetest.idl
index 82db3207cfd3..1e6f6aa1af57 100644
--- a/testtools/source/bridgetest/idl/bridgetest.idl
+++ b/testtools/source/bridgetest/idl/bridgetest.idl
@@ -314,6 +314,11 @@ interface XBridgeTestBase : com::sun::star::uno::XInterface
*/
long testPPCAlignment( [in] hyper l1, [in] hyper l2, [in] long i1, [in] hyper l3, [in] long i2 );
+ /**
+ * VFP ABI (armhf) doubles test
+ */
+ double testTenDoubles( [in] double d1, [in] double d2, [in] double d3, [in] double d4, [in] double d5, [in] double d6, [in] double d7, [in] double d8, [in] double d9, [in] double d10 );
+
[attribute] boolean Bool;
[attribute] byte Byte;
[attribute] char Char;