File indexing completed on 2024-05-12 15:53:55
0001 /** 0002 * Copyright (C) 2001-2015 Klaralvdalens Datakonsult AB. All rights reserved. 0003 * 0004 * This file is part of the KD Chart library. 0005 * 0006 * This program is free software; you can redistribute it and/or 0007 * modify it under the terms of the GNU General Public License as 0008 * published by the Free Software Foundation; either version 2 of 0009 * the License, or (at your option) any later version. 0010 * 0011 * This program is distributed in the hope that it will be useful, 0012 * but WITHOUT ANY WARRANTY; without even the implied warranty of 0013 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 0014 * GNU General Public License for more details. 0015 * 0016 * You should have received a copy of the GNU General Public License 0017 * along with this program. If not, see <https://www.gnu.org/licenses/>. 0018 */ 0019 0020 #include <QtTest/QtTest> 0021 #include <KChartChart> 0022 #include <KChartGlobal> 0023 #include <KChartPolarDiagram> 0024 #include <KChartPolarCoordinatePlane> 0025 0026 #include <TableModel.h> 0027 0028 using namespace KChart; 0029 0030 class TestPolarDiagrams: public QObject { 0031 Q_OBJECT 0032 private Q_SLOTS: 0033 0034 void initTestCase() 0035 { 0036 m_chart = new Chart(nullptr); 0037 PolarCoordinatePlane* polarPlane = new PolarCoordinatePlane( m_chart ); 0038 m_chart->replaceCoordinatePlane( polarPlane ); 0039 m_model = new TableModel( this ); 0040 m_model->loadFromCSV( ":/data" ); 0041 m_polar = new PolarDiagram(); 0042 m_polar->setModel( m_model ); 0043 m_chart->coordinatePlane()->replaceDiagram( m_polar ); 0044 } 0045 0046 void testPolarDiagramsSettings() 0047 { 0048 QVERIFY( m_polar->rotateCircularLabels() == false ); 0049 QVERIFY( m_polar->showDelimitersAtPosition( Position::NorthWest ) == false ); 0050 QVERIFY( m_polar->showDelimitersAtPosition( Position::North ) == false ); 0051 QVERIFY( m_polar->showDelimitersAtPosition( Position::NorthEast ) == false ); 0052 QVERIFY( m_polar->showDelimitersAtPosition( Position::West ) == false ); 0053 QVERIFY( m_polar->showDelimitersAtPosition( Position::East ) == false ); 0054 QVERIFY( m_polar->showDelimitersAtPosition( Position::SouthWest ) == false ); 0055 QVERIFY( m_polar->showDelimitersAtPosition( Position::South ) == false ); 0056 QVERIFY( m_polar->showDelimitersAtPosition( Position::SouthEast ) == false ); 0057 QVERIFY( m_polar->showLabelsAtPosition( Position::NorthWest ) == false ); 0058 QVERIFY( m_polar->showLabelsAtPosition( Position::North ) == false ); 0059 QVERIFY( m_polar->showLabelsAtPosition( Position::NorthEast ) == false ); 0060 QVERIFY( m_polar->showLabelsAtPosition( Position::West ) == false ); 0061 QVERIFY( m_polar->showLabelsAtPosition( Position::East ) == false ); 0062 QVERIFY( m_polar->showLabelsAtPosition( Position::SouthWest ) == false ); 0063 QVERIFY( m_polar->showLabelsAtPosition( Position::South ) == false ); 0064 QVERIFY( m_polar->showLabelsAtPosition( Position::SouthEast ) == false ); 0065 qDebug() << "void PolarDiagram::init() is never called.....(?)"; 0066 m_polar->setRotateCircularLabels( true ); 0067 m_polar->setShowDelimitersAtPosition( Position::North, true ); 0068 m_polar->setShowDelimitersAtPosition( Position::South, true ); 0069 m_polar->setShowLabelsAtPosition( Position::North, true ); 0070 m_polar->setShowLabelsAtPosition( Position::South, true ); 0071 QVERIFY( m_polar->rotateCircularLabels() == true ); 0072 QVERIFY( m_polar->showDelimitersAtPosition( Position::North ) == true ); 0073 QVERIFY( m_polar->showDelimitersAtPosition( Position::South ) == true ); 0074 QVERIFY( m_polar->showLabelsAtPosition( Position::North ) == true ); 0075 QVERIFY( m_polar->showLabelsAtPosition( Position::South ) == true ); 0076 } 0077 0078 0079 void cleanupTestCase() 0080 { 0081 } 0082 0083 private: 0084 Chart *m_chart; 0085 PolarDiagram *m_polar; 0086 TableModel *m_model; 0087 0088 }; 0089 0090 QTEST_MAIN(TestPolarDiagrams) 0091 0092 #include "main.moc"