[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: koffice/plugins/chartshape/tests
From: Johannes Simon <johannes.simon () gmail ! com>
Date: 2010-09-20 19:38:42
Message-ID: 20100920193842.DC456AC88C () svn ! kde ! org
[Download RAW message or body]
SVN commit 1177641 by jsimon:
Provide two more test cases for two and three data dimensions, resp.
M +68 -1 TestProxyModel.cpp
M +3 -1 TestProxyModel.h
--- trunk/koffice/plugins/chartshape/tests/TestProxyModel.cpp #1177640:1177641
@@ -52,8 +52,9 @@
{
}
-void TestProxyModel::initTestCase()
+void TestProxyModel::init()
{
+ m_source.clear();
m_table = m_source.add( "Table1", &m_sourceModel );
m_sourceModel.setRowCount( 4 );
@@ -535,4 +536,70 @@
QCOMPARE( dataSets[2]->categoryDataRegion(), CellRegion());
}
+void TestProxyModel::testTwoDimensions()
+{
+ QList<DataSet*> dataSets;
+
+ // Horizontal data direction
+ m_proxyModel.setDataDirection( Qt::Horizontal );
+ m_proxyModel.setFirstColumnIsLabel( false );
+ m_proxyModel.setFirstRowIsLabel( false );
+ m_proxyModel.setDataDimensions( 2 );
+
+ dataSets = m_proxyModel.dataSets();
+
+ QCOMPARE( dataSets.size(), 3 );
+ QCOMPARE( dataSets[0]->size(), 5 );
+ QCOMPARE( dataSets[1]->size(), 5 );
+ QCOMPARE( dataSets[2]->size(), 5 );
+
+ QCOMPARE( dataSets[0]->xDataRegion(), CellRegion( m_table, QRect( 1, 1, 5, 1 ) ) );
+ QCOMPARE( dataSets[0]->yDataRegion(), CellRegion( m_table, QRect( 1, 2, 5, 1 ) ) );
+ QCOMPARE( dataSets[0]->customDataRegion(), CellRegion() );
+ QCOMPARE( dataSets[0]->labelDataRegion(), CellRegion() );
+ QCOMPARE( dataSets[0]->categoryDataRegion(), CellRegion() );
+
+ QCOMPARE( dataSets[1]->xDataRegion(), CellRegion( m_table, QRect( 1, 1, 5, 1 ) ) );
+ QCOMPARE( dataSets[1]->yDataRegion(), CellRegion( m_table, QRect( 1, 3, 5, 1 ) ) );
+ QCOMPARE( dataSets[1]->customDataRegion(), CellRegion() );
+ QCOMPARE( dataSets[1]->labelDataRegion(), CellRegion() );
+ QCOMPARE( dataSets[1]->categoryDataRegion(), CellRegion() );
+
+ QCOMPARE( dataSets[2]->xDataRegion(), CellRegion( m_table, QRect( 1, 1, 5, 1 ) ) );
+ QCOMPARE( dataSets[2]->yDataRegion(), CellRegion( m_table, QRect( 1, 4, 5, 1 ) ) );
+ QCOMPARE( dataSets[2]->customDataRegion(), CellRegion() );
+ QCOMPARE( dataSets[2]->labelDataRegion(), CellRegion() );
+ QCOMPARE( dataSets[2]->categoryDataRegion(), CellRegion() );
+}
+
+void TestProxyModel::testThreeDimensions()
+{
+ QList<DataSet*> dataSets;
+
+ // Horizontal data direction
+ m_proxyModel.setDataDirection( Qt::Horizontal );
+ m_proxyModel.setFirstColumnIsLabel( false );
+ m_proxyModel.setFirstRowIsLabel( false );
+ m_proxyModel.setDataDimensions( 3 );
+
+ dataSets = m_proxyModel.dataSets();
+
+ QCOMPARE( dataSets.size(), 2 );
+ QCOMPARE( dataSets[0]->size(), 5 );
+ QCOMPARE( dataSets[1]->size(), 5 );
+
+ QCOMPARE( dataSets[0]->xDataRegion(), CellRegion( m_table, QRect( 1, 1, 5, 1 ) ) );
+ QCOMPARE( dataSets[0]->yDataRegion(), CellRegion( m_table, QRect( 1, 2, 5, 1 ) ) );
+ QCOMPARE( dataSets[0]->customDataRegion(), CellRegion( m_table, QRect( 1, 3, 5, 1 ) ) );
+ QCOMPARE( dataSets[0]->labelDataRegion(), CellRegion() );
+ QCOMPARE( dataSets[0]->categoryDataRegion(), CellRegion() );
+
+ QCOMPARE( dataSets[1]->xDataRegion(), CellRegion( m_table, QRect( 1, 1, 5, 1 ) ) );
+ QCOMPARE( dataSets[1]->yDataRegion(), CellRegion( m_table, QRect( 1, 4, 5, 1 ) ) );
+ // Since there's only four rows, not the necessary five, this region must be empty
+ QCOMPARE( dataSets[1]->customDataRegion(), CellRegion() );
+ QCOMPARE( dataSets[1]->labelDataRegion(), CellRegion() );
+ QCOMPARE( dataSets[1]->categoryDataRegion(), CellRegion() );
+}
+
QTEST_MAIN( TestProxyModel )
--- trunk/koffice/plugins/chartshape/tests/TestProxyModel.h #1177640:1177641
@@ -39,7 +39,7 @@
TestProxyModel();
private slots:
- void initTestCase();
+ void init();
void testWithoutLabels();
void testFirstRowAsLabel();
@@ -47,6 +47,8 @@
void testFirstRowAndColumnAsLabels();
void testRegionOrder();
void testComplexRegions();
+ void testTwoDimensions();
+ void testThreeDimensions();
private:
// m_source must be initialized before m_proxyModel
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic