/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ /* * 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 #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include "cppunit/extensions/HelperMacros.h" #include using namespace css; using namespace css::uno; namespace apitest { void XNamedRange::testGetContent() { OUString aTestedNamedRangeString("initial1"); uno::Reference< sheet::XNamedRange > xNamedRange = getNamedRange(aTestedNamedRangeString); OUString aExpectedContent("$Sheet1.$B$1"); CPPUNIT_ASSERT_MESSAGE("Wrong expected content for initial1 on GetContent", xNamedRange->getContent().equals(aExpectedContent)); } void XNamedRange::testSetContent() { OUString aTestedNamedRangeString("initial1"); uno::Reference< sheet::XNamedRange > xNamedRange = getNamedRange(aTestedNamedRangeString); OUString aExpectedContent; // test a cell aExpectedContent = "D1"; xNamedRange->setContent(aExpectedContent); CPPUNIT_ASSERT_MESSAGE("Wrong expected content for initial1 after SetContent a cell", xNamedRange->getContent().equals(aExpectedContent)); // test a cellrange aExpectedContent = "D1:D10"; xNamedRange->setContent(aExpectedContent); CPPUNIT_ASSERT_MESSAGE("Wrong expected content for initial1 after SetContent a cellrange", xNamedRange->getContent().equals(aExpectedContent)); // test a formula aExpectedContent = "=D10"; xNamedRange->setContent(aExpectedContent); aExpectedContent = "D10"; CPPUNIT_ASSERT_MESSAGE("Wrong expected content for initial1 after SetContent a formula", xNamedRange->getContent().equals(aExpectedContent)); } void XNamedRange::testGetType() { OUString aTestedNamedRangeString("initial1"); uno::Reference< sheet::XNamedRange > xNamedRange = getNamedRange(aTestedNamedRangeString); CPPUNIT_ASSERT_MESSAGE("Wrong expected Type", xNamedRange->getType() == 0); } void XNamedRange::testSetType() { OUString aTestedNamedRangeString("initial1"); uno::Reference< sheet::XNamedRange > xNamedRange = getNamedRange(aTestedNamedRangeString); sal_Int32 nType = ::sheet::NamedRangeFlag::ROW_HEADER; xNamedRange->setType(nType); CPPUNIT_ASSERT_MESSAGE("Wrong expected Type ROW_HEADER after setting it", xNamedRange->getType() == nType); nType = ::sheet::NamedRangeFlag::COLUMN_HEADER; xNamedRange->setType(nType); CPPUNIT_ASSERT_MESSAGE("Wrong expected Type COLUMN_HEADER after setting it", xNamedRange->getType() == nType); nType = ::sheet::NamedRangeFlag::FILTER_CRITERIA; xNamedRange->setType(nType); CPPUNIT_ASSERT_MESSAGE("Wrong expected Type FILTER_CRITERIA after setting it", xNamedRange->getType() == nType); nType = ::sheet::NamedRangeFlag::PRINT_AREA; xNamedRange->setType(nType); CPPUNIT_ASSERT_MESSAGE("Wrong expected Type PRINT_AREA after setting it", xNamedRange->getType() == nType); nType = 0; xNamedRange->setType(nType); CPPUNIT_ASSERT_MESSAGE("Wrong expected Type 0 after setting it", xNamedRange->getType() == nType); } void XNamedRange::testGetReferencePosition() { OUString aTestedNamedRangeString("initial2"); uno::Reference< sheet::XNamedRange > xNamedRange = getNamedRange(aTestedNamedRangeString); table::CellAddress aCellAddress = xNamedRange->getReferencePosition(); // the expected address is on B1, as it was the active cell when initial2 was created CPPUNIT_ASSERT_MESSAGE("Wrong SHEET reference position", aCellAddress.Sheet == 0); CPPUNIT_ASSERT_MESSAGE("Wrong COLUMN reference position", aCellAddress.Column == 1); CPPUNIT_ASSERT_MESSAGE("Wrong ROW reference position", aCellAddress.Row == 0); } void XNamedRange::testSetReferencePosition() { OUString aTestedNamedRangeString("initial1"); uno::Reference< sheet::XNamedRange > xNamedRange = getNamedRange(aTestedNamedRangeString); table::CellAddress aBaseAddress = table::CellAddress(1,2,3); xNamedRange->setReferencePosition(aBaseAddress); table::CellAddress aCellAddress = xNamedRange->getReferencePosition(); CPPUNIT_ASSERT_MESSAGE("Wrong SHEET reference position after setting it", aCellAddress.Sheet == 1); CPPUNIT_ASSERT_MESSAGE("Wrong COLUMN reference position after setting it", aCellAddress.Column == 2); CPPUNIT_ASSERT_MESSAGE("Wrong ROW reference position after setting it", aCellAddress.Row == 3); } } /* vim:set shiftwidth=4 softtabstop=4 expandtab: */