MCPcopy Create free account
hub / github.com/KDE/kdevelop / testCopyConstructor

Method testCopyConstructor

kdevplatform/vcs/tests/test_vcsrevision.cpp:21–68  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

19}
20
21void TestVcsRevision::testCopyConstructor()
22{
23 // copy invalid
24 {
25 VcsRevision revisionA;
26 VcsRevision revisionB(revisionA);
27 QCOMPARE(revisionA.revisionType(), VcsRevision::Invalid);
28 QCOMPARE(revisionB.revisionType(), VcsRevision::Invalid);
29 QVERIFY(revisionB == revisionA);
30 QVERIFY(revisionA == revisionB);
31 }
32
33 const VcsRevision::RevisionType revisionType = VcsRevision::GlobalNumber;
34 const QString globalNumberValue("A");
35
36 // test plain copy
37 {
38 VcsRevision revisionA;
39 revisionA.setRevisionValue(globalNumberValue, revisionType);
40
41 VcsRevision revisionB(revisionA);
42 QCOMPARE(revisionA.revisionType(), revisionType);
43 QCOMPARE(revisionA.revisionValue().toString(), globalNumberValue);
44 QCOMPARE(revisionB.revisionType(), revisionType);
45 QCOMPARE(revisionB.revisionValue().toString(), globalNumberValue);
46 QVERIFY(revisionB == revisionA);
47 QVERIFY(revisionA == revisionB);
48 }
49
50 const VcsRevision::RevisionType revisionTypeNew = VcsRevision::FileNumber;
51 const qlonglong fileNumberValueNew = 2;
52
53 // test detach after changing A
54 {
55 VcsRevision revisionA;
56 revisionA.setRevisionValue(globalNumberValue, revisionType);
57
58 VcsRevision revisionB(revisionA);
59 revisionA.setRevisionValue(fileNumberValueNew, revisionTypeNew);
60
61 QCOMPARE(revisionA.revisionType(), revisionTypeNew);
62 QCOMPARE(revisionA.revisionValue().toLongLong(), fileNumberValueNew);
63 QCOMPARE(revisionB.revisionType(), revisionType);
64 QCOMPARE(revisionB.revisionValue().toString(), globalNumberValue);
65 QVERIFY(!(revisionB == revisionA));
66 QVERIFY(!(revisionA == revisionB));
67 }
68}
69
70void TestVcsRevision::testAssignOperator()
71{

Callers

nothing calls this directly

Calls 4

revisionTypeMethod · 0.80
setRevisionValueMethod · 0.80
revisionValueMethod · 0.80
toStringMethod · 0.45

Tested by

no test coverage detected