Skip to content

Commit cbba10b

Browse files
committedJan 21, 2020
Add unit tests for save user name
1 parent b14997d commit cbba10b

File tree

2 files changed

+39
-2
lines changed

2 files changed

+39
-2
lines changed
 

‎src/core/qgsproject.cpp

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1994,6 +1994,13 @@ bool QgsProject::writeProjectFile( const QString &filename )
19941994
QString newSaveUserFull = QgsApplication::userFullName();
19951995
qgisNode.setAttribute( QStringLiteral( "saveUser" ), newSaveUser );
19961996
qgisNode.setAttribute( QStringLiteral( "saveUserFull" ), newSaveUserFull );
1997+
mSaveUser = newSaveUser;
1998+
mSaveUserFull = newSaveUserFull;
1999+
}
2000+
else
2001+
{
2002+
mSaveUser.clear();
2003+
mSaveUserFull.clear();
19972004
}
19982005
doc->appendChild( qgisNode );
19992006

@@ -2234,8 +2241,6 @@ bool QgsProject::writeProjectFile( const QString &filename )
22342241
setDirty( false ); // reset to pristine state
22352242

22362243
emit projectSaved();
2237-
mSaveUser = newSaveUser;
2238-
mSaveUserFull = newSaveUserFull;
22392244
return true;
22402245
}
22412246

‎tests/src/core/testqgsproject.cpp

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@ class TestQgsProject : public QObject
4747
void testReadFlags();
4848
void testSetGetCrs();
4949
void testEmbeddedLayerGroupFromQgz();
50+
void projectSaveUser();
5051
};
5152

5253
void TestQgsProject::init()
@@ -69,6 +70,7 @@ void TestQgsProject::initTestCase()
6970

7071
QgsApplication::init();
7172
QgsApplication::initQgis();
73+
QgsSettings().clear();
7274
}
7375

7476

@@ -485,6 +487,36 @@ void TestQgsProject::testEmbeddedLayerGroupFromQgz()
485487
QCOMPARE( p1.layerIsEmbedded( polys->id() ), path );
486488
}
487489

490+
void TestQgsProject::projectSaveUser()
491+
{
492+
QgsProject p;
493+
QVERIFY( p.saveUser().isEmpty() );
494+
QVERIFY( p.saveUserFullname().isEmpty() );
495+
496+
QTemporaryFile f;
497+
QVERIFY( f.open() );
498+
f.close();
499+
p.setFileName( f.fileName() );
500+
p.write();
501+
502+
QCOMPARE( p.saveUser(), QgsApplication::userLoginName() );
503+
QCOMPARE( p.saveUserFullname(), QgsApplication::userFullName() );
504+
505+
QgsSettings s;
506+
s.setValue( QStringLiteral( "projects/anonymize_saved_projects" ), true, QgsSettings::Core );
507+
508+
p.write();
509+
510+
QVERIFY( p.saveUser().isEmpty() );
511+
QVERIFY( p.saveUserFullname().isEmpty() );
512+
513+
s.setValue( QStringLiteral( "projects/anonymize_saved_projects" ), false, QgsSettings::Core );
514+
515+
p.write();
516+
QCOMPARE( p.saveUser(), QgsApplication::userLoginName() );
517+
QCOMPARE( p.saveUserFullname(), QgsApplication::userFullName() );
518+
}
519+
488520
void TestQgsProject::testSetGetCrs()
489521
{
490522
QgsProject p;

0 commit comments

Comments
 (0)
Please sign in to comment.