diff --git a/src/modules/locale/CMakeLists.txt b/src/modules/locale/CMakeLists.txt index a09bde282..6f965f041 100644 --- a/src/modules/locale/CMakeLists.txt +++ b/src/modules/locale/CMakeLists.txt @@ -36,7 +36,9 @@ calamares_add_test( localetest SOURCES Tests.cpp + Config.cpp LocaleConfiguration.cpp + SetTimezoneJob.cpp timezonewidget/TimeZoneImage.cpp DEFINITIONS SOURCE_DIR="${CMAKE_CURRENT_LIST_DIR}/images" diff --git a/src/modules/locale/Config.cpp b/src/modules/locale/Config.cpp index b8a6df437..ecd704186 100644 --- a/src/modules/locale/Config.cpp +++ b/src/modules/locale/Config.cpp @@ -436,11 +436,13 @@ Config::setConfigurationMap( const QVariantMap& configurationMap ) getStartingTimezone( configurationMap, m_startingTimezone ); getGeoIP( configurationMap, m_geoip ); +#ifndef BUILD_AS_TEST if ( m_geoip && m_geoip->isValid() ) { connect( Calamares::ModuleManager::instance(), &Calamares::ModuleManager::modulesLoaded, this, &Config::startGeoIP ); } +#endif } Calamares::JobList diff --git a/src/modules/locale/Tests.cpp b/src/modules/locale/Tests.cpp index de0be57c4..52d4882a2 100644 --- a/src/modules/locale/Tests.cpp +++ b/src/modules/locale/Tests.cpp @@ -16,7 +16,7 @@ * along with Calamares. If not, see . */ - +#include "Config.h" #include "LocaleConfiguration.h" #include "timezonewidget/TimeZoneImage.h" @@ -45,6 +45,9 @@ private Q_SLOTS: void testTZImages(); // No overlaps in images void testTZLocations(); // No overlaps in locations void testSpecificLocations(); + + // Check the Config loading + void testConfigInitialization(); }; QTEST_MAIN( LocaleTests ) @@ -251,6 +254,16 @@ LocaleTests::testSpecificLocations() QVERIFY( gpos.y() < cpos.y() ); // Gibraltar is north of Ceuta } +void +LocaleTests::testConfigInitialization() +{ + Config c; + + QVERIFY( !c.currentLocation() ); + QVERIFY( !c.currentLocationStatus().isEmpty() ); +} + + #include "utils/moc-warnings.h" #include "Tests.moc"