123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 |
- /*=========================================================================
- Library: CTK
- Copyright (c) [Organization Name]
- Licensed 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.commontk.org/LICENSE
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- =========================================================================*/
- // Qt includes
- #include <QDir>
- #include <QTemporaryFile>
- // CTK includes
- #include "ctkScopedCurrentDir.h"
- // STD includes
- #include <cstdlib>
- #include <iostream>
- //-----------------------------------------------------------------------------
- int ctkScopedCurrentDirTest1(int argc, char * argv [])
- {
- Q_UNUSED(argc);
- Q_UNUSED(argv);
- QString savedCurrentPath = QDir::currentPath();
- QTemporaryFile foo(QDir::tempPath() + "/ctkScopedCurrentDirTest1-XXXXXX.txt");
- foo.setAutoRemove(false);
- bool opened = foo.open();
- if(!opened)
- {
- std::cerr << "Line " << __LINE__ << " - Failed to create temporary file !" << std::endl;
- return EXIT_FAILURE;
- }
- {
- ctkScopedCurrentDir scopedCurrentDir(QDir::tempPath());
- QString currentPath = scopedCurrentDir.currentPath();
- QString expectedCurrentPath = QDir::tempPath();
- if (currentPath != expectedCurrentPath)
- {
- std::cerr << "Line " << __LINE__ << " - Problem with ctkScopedCurrentDir\n"
- << "\tcurrentPath:" << qPrintable(currentPath) << "\n"
- << "\texpectedCurrentPath:" << qPrintable(expectedCurrentPath) << std::endl;
- return EXIT_FAILURE;
- }
- if (scopedCurrentDir.savedCurrentPath() != savedCurrentPath)
- {
- std::cerr << "Line " << __LINE__ << " - Problem with ctkScopedCurrentDir\n"
- << "\tsavedCurrentPath:" << qPrintable(scopedCurrentDir.savedCurrentPath()) << "\n"
- << "\texpectedSavedCurrentPath:" << qPrintable(savedCurrentPath) << std::endl;
- return EXIT_FAILURE;
- }
- if (!QFile::exists(foo.fileName()))
- {
- std::cerr << "Line " << __LINE__ << " - Problem with ctkScopedCurrentDir\n"
- << "\tfile [" << qPrintable(foo.fileName()) <<"] doesn't exist "
- << "in directory [" << qPrintable(QDir::currentPath()) << "]!" << std::endl;
- return EXIT_FAILURE;
- }
- }
- QString currentPath = QDir::currentPath();
- if (savedCurrentPath != currentPath)
- {
- std::cerr << "Line " << __LINE__ << " - Problem with ctkScopedCurrentDir\n"
- << "\tsavedCurrentPath [" << qPrintable(savedCurrentPath) << "]\n"
- << "\tcurrentPath [" << qPrintable(currentPath) << "]" << std::endl;
- return EXIT_FAILURE;
- }
- return EXIT_SUCCESS;
- }
|