Kaydet (Commit) 5a0acced authored tarafından Jens Carl's avatar Jens Carl

tdf#45904: Move _SheetFilterDescriptor Java tests to C++

Change-Id: I894b2e2534efeb5369c491053caf56f67dc56618
Reviewed-on: https://gerrit.libreoffice.org/50411Tested-by: 's avatarJenkins <ci@libreoffice.org>
Reviewed-by: 's avatarJens Carl <j.carl43@gmx.de>
üst 0b49701f
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; fill-column: 100 -*- */
/*
* This file is part of the LibreOffice project.
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*/
#ifndef INCLUDED_TEST_SHEET_SHEETFILTERDESCRIPTOR_HXX
#define INCLUDED_TEST_SHEET_SHEETFILTERDESCRIPTOR_HXX
#include <com/sun/star/uno/XInterface.hpp>
#include <com/sun/star/uno/Reference.hxx>
#include <test/testdllapi.hxx>
namespace apitest
{
class OOO_DLLPUBLIC_TEST SheetFilterDescriptor
{
public:
virtual css::uno::Reference<css::uno::XInterface> init() = 0;
void testSheetFilterDescriptorProperties();
protected:
~SheetFilterDescriptor() {}
};
}
#endif // INCLUDED_TEST_SHEET_SHEETFILTERDESCRIPTOR_HXX
/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */
......@@ -565,7 +565,6 @@ $(eval $(call gb_Jar_add_sourcefiles,OOoRunner,\
qadevOOo/tests/java/ifc/sdb/_XSQLErrorBroadcaster \
qadevOOo/tests/java/ifc/sheet/_FunctionDescription \
qadevOOo/tests/java/ifc/sheet/_Shape \
qadevOOo/tests/java/ifc/sheet/_SheetFilterDescriptor \
qadevOOo/tests/java/ifc/sheet/_SheetLink \
qadevOOo/tests/java/ifc/sheet/_SheetSortDescriptor \
qadevOOo/tests/java/ifc/sheet/_Spreadsheet \
......
"ScFilterDescriptorBase";"com::sun::star::sheet::SheetFilterDescriptor";"IsCaseSensitive"
"ScFilterDescriptorBase";"com::sun::star::sheet::SheetFilterDescriptor";"SkipDuplicates"
"ScFilterDescriptorBase";"com::sun::star::sheet::SheetFilterDescriptor";"UseRegularExpressions"
"ScFilterDescriptorBase";"com::sun::star::sheet::SheetFilterDescriptor";"SaveOutputPosition"
"ScFilterDescriptorBase";"com::sun::star::sheet::SheetFilterDescriptor";"Orientation"
"ScFilterDescriptorBase";"com::sun::star::sheet::SheetFilterDescriptor";"ContainsHeader"
"ScFilterDescriptorBase";"com::sun::star::sheet::SheetFilterDescriptor";"CopyOutputData"
"ScFilterDescriptorBase";"com::sun::star::sheet::SheetFilterDescriptor";"OutputPosition"
"ScFilterDescriptorBase";"com::sun::star::sheet::SheetFilterDescriptor";"MaxFieldCount"
"ScFilterDescriptorBase";"com::sun::star::beans::XPropertySet";"getPropertySetInfo()"
"ScFilterDescriptorBase";"com::sun::star::beans::XPropertySet";"setPropertyValue()"
"ScFilterDescriptorBase";"com::sun::star::beans::XPropertySet";"getPropertyValue()"
......
/*
* This file is part of the LibreOffice project.
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* This file incorporates work covered by the following license notice:
*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed
* with this work for additional information regarding copyright
* ownership. The ASF licenses this file to you under the Apache
* License, Version 2.0 (the "License"); you may not use this file
* except in compliance with the License. You may obtain a copy of
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
package ifc.sheet;
import lib.MultiPropertyTest;
/**
* Testing <code>com.sun.star.sheet.SheetFilterDescriptor</code>
* service properties :
* <ul>
* <li><code> IsCaseSensitive</code></li>
* <li><code> SkipDuplicates</code></li>
* <li><code> UseRegularExpressions</code></li>
* <li><code> SaveOutputPosition</code></li>
* <li><code> Orientation</code></li>
* <li><code> ContainsHeader</code></li>
* <li><code> CopyOutputData</code></li>
* <li><code> OutputPosition</code></li>
* <li><code> MaxFieldCount</code></li>
* </ul> <p>
* Properties testing is automated by <code>lib.MultiPropertyTest</code>.
* @see com.sun.star.sheet.SheetFilterDescriptor
*/
public class _SheetFilterDescriptor extends MultiPropertyTest {
} // finish class _SheetFilterDescriptor
......@@ -8,6 +8,7 @@
*/
#include <test/calc_unoapi_test.hxx>
#include <test/sheet/sheetfilterdescriptor.hxx>
#include <test/sheet/xsheetfilterdescriptor.hxx>
#include <com/sun/star/container/XIndexAccess.hpp>
......@@ -22,7 +23,9 @@ using namespace css::uno;
namespace sc_apitest {
class ScFilterDescriptorBaseObj : public CalcUnoApiTest, public apitest::XSheetFilterDescriptor
class ScFilterDescriptorBaseObj : public CalcUnoApiTest,
public apitest::SheetFilterDescriptor,
public apitest::XSheetFilterDescriptor
{
public:
ScFilterDescriptorBaseObj();
......@@ -34,6 +37,9 @@ public:
CPPUNIT_TEST_SUITE(ScFilterDescriptorBaseObj);
// SheetFilterDescriptor
CPPUNIT_TEST(testSheetFilterDescriptorProperties);
// XSheetFilterDescriptor
CPPUNIT_TEST(testGetSetFilterFields);
......
......@@ -56,6 +56,7 @@ $(eval $(call gb_Library_add_exception_objects,subsequenttest,\
test/source/sheet/sheetcell \
test/source/sheet/sheetcellrange \
test/source/sheet/sheetcellranges \
test/source/sheet/sheetfilterdescriptor \
test/source/sheet/tableautoformat \
test/source/sheet/tablevalidation \
test/source/sheet/xarealink \
......
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; fill-column: 100 -*- */
/*
* This file is part of the LibreOffice project.
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*/
#include <test/cppunitasserthelper.hxx>
#include <test/sheet/sheetfilterdescriptor.hxx>
#include <com/sun/star/beans/XPropertySet.hpp>
#include <com/sun/star/table/CellAddress.hpp>
#include <com/sun/star/table/TableOrientation.hpp>
#include <com/sun/star/uno/Any.hxx>
#include <com/sun/star/uno/Reference.hxx>
#include <cppunit/extensions/HelperMacros.h>
using namespace com::sun::star;
using namespace com::sun::star::uno;
namespace apitest
{
void SheetFilterDescriptor::testSheetFilterDescriptorProperties()
{
uno::Reference<beans::XPropertySet> xSheetFilterDescriptor(init(), UNO_QUERY_THROW);
OUString propName;
uno::Any aNewValue;
propName = "IsCaseSensitive";
bool bIsCaseSensitiveGet = false;
bool bIsCaseSensitiveSet = false;
CPPUNIT_ASSERT_MESSAGE("Unable to get PropertyValue IsCaseSensitive",
xSheetFilterDescriptor->getPropertyValue(propName)
>>= bIsCaseSensitiveGet);
aNewValue <<= !bIsCaseSensitiveGet;
xSheetFilterDescriptor->setPropertyValue(propName, aNewValue);
CPPUNIT_ASSERT(xSheetFilterDescriptor->getPropertyValue(propName) >>= bIsCaseSensitiveSet);
CPPUNIT_ASSERT_EQUAL_MESSAGE("Unable to set PropertyValue IsCaseSensitive",
!bIsCaseSensitiveGet, bIsCaseSensitiveSet);
propName = "SkipDuplicates";
bool bSkipDuplicatesGet = false;
bool bSkipDuplicatesSet = false;
CPPUNIT_ASSERT_MESSAGE("Unable to get PropertyValue SkipDuplicates",
xSheetFilterDescriptor->getPropertyValue(propName)
>>= bSkipDuplicatesGet);
aNewValue <<= !bSkipDuplicatesGet;
xSheetFilterDescriptor->setPropertyValue(propName, aNewValue);
CPPUNIT_ASSERT(xSheetFilterDescriptor->getPropertyValue(propName) >>= bSkipDuplicatesSet);
CPPUNIT_ASSERT_EQUAL_MESSAGE("Unable to set PropertyValue SkipDuplicates", !bSkipDuplicatesGet,
bSkipDuplicatesSet);
propName = "UseRegularExpressions";
bool bUseRegularExpressionsGet = false;
bool bUseRegularExpressionsSet = false;
CPPUNIT_ASSERT_MESSAGE("Unable to get PropertyValue UseRegularExpressions",
xSheetFilterDescriptor->getPropertyValue(propName)
>>= bUseRegularExpressionsGet);
aNewValue <<= !bUseRegularExpressionsGet;
xSheetFilterDescriptor->setPropertyValue(propName, aNewValue);
CPPUNIT_ASSERT(xSheetFilterDescriptor->getPropertyValue(propName)
>>= bUseRegularExpressionsSet);
CPPUNIT_ASSERT_EQUAL_MESSAGE("Unable to set PropertyValue UseRegularExpressions",
!bUseRegularExpressionsGet, bUseRegularExpressionsSet);
propName = "SaveOutputPosition";
bool bSaveOutputPositionGet = false;
bool bSaveOutputPositionSet = false;
CPPUNIT_ASSERT_MESSAGE("Unable to get PropertyValue SaveOutputPosition",
xSheetFilterDescriptor->getPropertyValue(propName)
>>= bSaveOutputPositionGet);
aNewValue <<= !bSaveOutputPositionGet;
xSheetFilterDescriptor->setPropertyValue(propName, aNewValue);
CPPUNIT_ASSERT(xSheetFilterDescriptor->getPropertyValue(propName) >>= bSaveOutputPositionSet);
CPPUNIT_ASSERT_EQUAL_MESSAGE("Unable to set PropertyValue SaveOutputPosition",
!bSaveOutputPositionGet, bSaveOutputPositionSet);
propName = "Orientation";
table::TableOrientation aOrientationGet;
table::TableOrientation aOrientationSet;
CPPUNIT_ASSERT_MESSAGE("Unable to get PropertyValue Orientation",
xSheetFilterDescriptor->getPropertyValue(propName) >>= aOrientationGet);
aNewValue <<= table::TableOrientation_COLUMNS;
xSheetFilterDescriptor->setPropertyValue(propName, aNewValue);
CPPUNIT_ASSERT(xSheetFilterDescriptor->getPropertyValue(propName) >>= aOrientationSet);
CPPUNIT_ASSERT_EQUAL_MESSAGE("Unable to set PropertyValue Orientation",
table::TableOrientation_COLUMNS, aOrientationSet);
propName = "ContainsHeader";
bool bContainsHeaderGet = false;
bool bContainsHeaderSet = false;
CPPUNIT_ASSERT_MESSAGE("Unable to get PropertyValue ContainsHeader",
xSheetFilterDescriptor->getPropertyValue(propName)
>>= bContainsHeaderGet);
aNewValue <<= !bContainsHeaderGet;
xSheetFilterDescriptor->setPropertyValue(propName, aNewValue);
CPPUNIT_ASSERT(xSheetFilterDescriptor->getPropertyValue(propName) >>= bContainsHeaderSet);
CPPUNIT_ASSERT_EQUAL_MESSAGE("Unable to set PropertyValue ContainsHeader", !bContainsHeaderGet,
bContainsHeaderSet);
propName = "CopyOutputData";
bool bCopyOutputDataGet = false;
bool bCopyOutputDataSet = false;
CPPUNIT_ASSERT_MESSAGE("Unable to get PropertyValue CopyOutputData",
xSheetFilterDescriptor->getPropertyValue(propName)
>>= bCopyOutputDataGet);
aNewValue <<= !bCopyOutputDataGet;
xSheetFilterDescriptor->setPropertyValue(propName, aNewValue);
CPPUNIT_ASSERT(xSheetFilterDescriptor->getPropertyValue(propName) >>= bCopyOutputDataSet);
CPPUNIT_ASSERT_EQUAL_MESSAGE("Unable to set PropertyValue CopyOutputData", !bCopyOutputDataGet,
bCopyOutputDataSet);
propName = "OutputPosition";
table::CellAddress aCellAddressGet;
table::CellAddress aCellAddressSet;
CPPUNIT_ASSERT_MESSAGE("Unable to get PropertyValue OutputPosition",
xSheetFilterDescriptor->getPropertyValue(propName) >>= aCellAddressGet);
aCellAddressGet = table::CellAddress(0, 42, 42);
aNewValue <<= aCellAddressGet;
xSheetFilterDescriptor->setPropertyValue(propName, aNewValue);
CPPUNIT_ASSERT(xSheetFilterDescriptor->getPropertyValue(propName) >>= aCellAddressSet);
CPPUNIT_ASSERT_EQUAL_MESSAGE("Unable to set PropertyValue OutputPosition", aCellAddressGet,
aCellAddressSet);
propName = "MaxFieldCount";
sal_Int32 nMaxFieldCountGet = 0;
sal_Int32 nMaxFieldCountSet = 0;
CPPUNIT_ASSERT_MESSAGE("Unable to get PropertyValue MaxFieldCount",
xSheetFilterDescriptor->getPropertyValue(propName)
>>= nMaxFieldCountGet);
aNewValue <<= nMaxFieldCountGet + 42;
xSheetFilterDescriptor->setPropertyValue(propName, aNewValue);
CPPUNIT_ASSERT(xSheetFilterDescriptor->getPropertyValue(propName) >>= nMaxFieldCountSet);
CPPUNIT_ASSERT_EQUAL_MESSAGE("Able to set PropertyValue MaxFieldCount", nMaxFieldCountGet,
nMaxFieldCountSet);
}
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment