[users] Expand tests for groups a little

This commit is contained in:
Adriaan de Groot 2020-11-02 12:11:13 +01:00
parent e66f81f6ee
commit 8127ae704c
2 changed files with 32 additions and 2 deletions

View File

@ -77,7 +77,11 @@ calamares_add_test(
usersgroupstest
SOURCES
TestGroupInformation.cpp
MiscJobs.cpp
${_users_src} # Build again with test-visibility
LIBRARIES
Qt5::DBus # HostName job can use DBus to systemd
${CRYPT_LIBRARIES} # SetPassword job uses crypt()
${USER_EXTRA_LIB}
)
calamares_add_test(

View File

@ -7,11 +7,14 @@
*
*/
#include "Config.h"
#include "CreateUserJob.h"
#include "MiscJobs.h"
#include "GlobalStorage.h"
#include "JobQueue.h"
#include "utils/Logger.h"
#include "utils/Yaml.h"
#include <QDir>
#include <QtTest/QtTest>
@ -30,6 +33,7 @@ private Q_SLOTS:
void initTestCase();
void testReadGroup();
void testCreateGroup();
};
GroupTests::GroupTests() {}
@ -43,12 +47,12 @@ GroupTests::initTestCase()
{
(void)new Calamares::JobQueue();
}
Calamares::JobQueue::instance()->globalStorage()->insert( "rootMountPoint", "/" );
}
void
GroupTests::testReadGroup()
{
Calamares::JobQueue::instance()->globalStorage()->insert( "rootMountPoint", "/" );
// Get the groups in the host system
QStringList groups = groupsInTargetSystem();
QVERIFY( groups.count() > 2 );
@ -69,6 +73,28 @@ GroupTests::testReadGroup()
}
}
void GroupTests::testCreateGroup()
{
Config g;
// BUILD_AS_TEST is the source-directory path
QFile fi( QString( "%1/tests/5-issue-1523.conf" ).arg( BUILD_AS_TEST ) );
QVERIFY( fi.exists() );
bool ok = false;
const auto map = CalamaresUtils::loadYaml( fi, &ok );
QVERIFY( ok );
QVERIFY( map.count() > 0 ); // Just that it loaded, one key *defaultGroups*
Config c;
c.setConfigurationMap( map );
QCOMPARE( c.defaultGroups().count(), 4 );
QVERIFY( c.defaultGroups().contains( QStringLiteral( "adm" ) ) );
}
QTEST_GUILESS_MAIN( GroupTests )
#include "utils/moc-warnings.h"