📄 testqgsmaplayer.cpp
字号:
/*************************************************************************** testqgsvectorfilewriter.cpp -------------------------------------- Date : Sun Sep 16 12:22:54 AKDT 2007 Copyright : (C) 2007 by Gary E. Sherman Email : sherman at mrcc dot com *************************************************************************** * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2 of the License, or * * (at your option) any later version. * * * ***************************************************************************/#include <QtTest>#include <QObject>#include <QString>#include <QStringList>#include <QObject>#include <iostream>#include <QApplication>#include <QFileInfo>#include <QDir>//qgis includes...#include <qgsmaplayer.h> #include <qgsvectorlayer.h> #include <qgsapplication.h>#include <qgsproviderregistry.h>/** \ingroup UnitTests * This is a unit test for the QgsMapLayer class. */class TestQgsMapLayer: public QObject{ Q_OBJECT; private slots: void initTestCase();// will be called before the first testfunction is executed. void cleanupTestCase(){};// will be called after the last testfunction was executed. void init(){};// will be called before each testfunction is executed. void cleanup(){};// will be called after every testfunction. void isValid(); private: QgsMapLayer * mpLayer;};void TestQgsMapLayer::initTestCase(){ // init QGIS's paths - true means that all path will be inited from prefix QString qgisPath = QCoreApplication::applicationDirPath (); QgsApplication::setPrefixPath(qgisPath, TRUE);#ifdef Q_OS_LINUX QgsApplication::setPkgDataPath(qgisPath + "/../share/qgis"); QgsApplication::setPluginPath(qgisPath + "/../lib/qgis");#endif // Instantiate the plugin directory so that providers are loaded QgsProviderRegistry::instance(QgsApplication::pluginPath()); //create some objects that will be used in all tests... std::cout << "Prefix PATH: " << QgsApplication::prefixPath().toLocal8Bit().data() << std::endl; std::cout << "Plugin PATH: " << QgsApplication::pluginPath().toLocal8Bit().data() << std::endl; std::cout << "PkgData PATH: " << QgsApplication::pkgDataPath().toLocal8Bit().data() << std::endl; std::cout << "User DB PATH: " << QgsApplication::qgisUserDbFilePath().toLocal8Bit().data() << std::endl; //create a map layer that will be used in all tests... QString myFileName (TEST_DATA_DIR); //defined in CmakeLists.txt myFileName = myFileName + QDir::separator() + "points.shp"; QFileInfo myMapFileInfo ( myFileName ); mpLayer = new QgsVectorLayer ( myMapFileInfo.filePath(), myMapFileInfo.completeBaseName(), "ogr" );}void TestQgsMapLayer::isValid(){ QVERIFY ( mpLayer->isValid() );}QTEST_MAIN(TestQgsMapLayer)#include "moc_testqgsmaplayer.cxx"
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -