From b2b9ae779932643afbb7ff3e7e80a89bfe76d759 Mon Sep 17 00:00:00 2001 From: Adriaan de Groot Date: Wed, 5 Aug 2020 13:03:56 +0200 Subject: [PATCH] [users] Add tests for moved password-check configuration - link the PW checks to the test, and libpwquality if needed - test only does very basic config-mungeing --- src/modules/users/CMakeLists.txt | 3 +++ src/modules/users/Tests.cpp | 15 +++++++++++++++ 2 files changed, 18 insertions(+) diff --git a/src/modules/users/CMakeLists.txt b/src/modules/users/CMakeLists.txt index 5fafcd4f3..95b3a9697 100644 --- a/src/modules/users/CMakeLists.txt +++ b/src/modules/users/CMakeLists.txt @@ -71,4 +71,7 @@ calamares_add_test( SOURCES Tests.cpp Config.cpp + CheckPWQuality.cpp + LIBRARIES + ${USER_EXTRA_LIB} ) diff --git a/src/modules/users/Tests.cpp b/src/modules/users/Tests.cpp index 41cd96842..ff435803d 100644 --- a/src/modules/users/Tests.cpp +++ b/src/modules/users/Tests.cpp @@ -26,6 +26,7 @@ // Implementation details extern void setConfigurationDefaultGroups( const QVariantMap& map, QStringList& defaultGroups ); extern HostNameActions getHostNameActions( const QVariantMap& configurationMap ); +extern bool addPasswordCheck( const QString& key, const QVariant& value, PasswordCheckList& passwordChecks ); /** @brief Test Config object methods and internals * @@ -43,6 +44,7 @@ private Q_SLOTS: void testDefaultGroups(); void testHostActions_data(); void testHostActions(); + void testPasswordChecks(); }; UserTests::UserTests() {} @@ -141,6 +143,19 @@ UserTests::testHostActions() QCOMPARE( getHostNameActions( m ), HostNameActions( result ) | HostNameAction::WriteEtcHosts ); } +void +UserTests::testPasswordChecks() +{ + { + PasswordCheckList l; + QCOMPARE( l.length(), 0 ); + QVERIFY( !addPasswordCheck( "nonempty", QVariant(false), l ) ); // a silly setting + QCOMPARE( l.length(), 0 ); + QVERIFY( addPasswordCheck( "nonempty", QVariant(true), l ) ); + QCOMPARE( l.length(), 1 ); + } +} + QTEST_GUILESS_MAIN( UserTests )