author | mawalch |
Mon, 08 Aug 2016 20:13:59 +0200 | |
changeset 1011 | dff0d2ee184c |
parent 824 | d4cbbb03d3f3 |
child 1033 | 66e82afe7a79 |
child 1121 | c5661215109c |
permissions | -rw-r--r-- |
26 | 1 |
"{ Package: 'stx:goodies/monticello/test' }" |
2 |
||
3 |
MCTestCase subclass:#MCSerializationTest |
|
4 |
instanceVariableNames:'' |
|
5 |
classVariableNames:'' |
|
6 |
poolDictionaries:'' |
|
824
d4cbbb03d3f3
Tests moved to category SCM-Monticello-Tests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
26
diff
changeset
|
7 |
category:'SCM-Monticello-Tests' |
26 | 8 |
! |
9 |
||
10 |
||
11 |
!MCSerializationTest methodsFor:'asserting'! |
|
12 |
||
13 |
assertClass: readerClass providesServices: labels |
|
14 |
| services suffix | |
|
15 |
suffix _ readerClass extension. |
|
16 |
self assert: (FileList isReaderNamedRegistered: readerClass name). |
|
17 |
services _ readerClass fileReaderServicesForFile: 'foo' suffix: suffix. |
|
18 |
self assert: ((services collect: [:service | service buttonLabel]) includesAllOf: labels) |
|
19 |
! |
|
20 |
||
21 |
assertDependenciesMatchWith: writerClass |
|
22 |
| stream readerClass expected actual | |
|
23 |
readerClass _ writerClass readerClass. |
|
24 |
expected _ self mockVersionWithDependencies. |
|
25 |
stream _ RWBinaryOrTextStream on: String new. |
|
26 |
writerClass fileOut: expected on: stream. |
|
27 |
actual _ (readerClass on: stream reset) dependencies. |
|
28 |
self assert: actual = expected dependencies. |
|
29 |
! |
|
30 |
||
31 |
assertExtensionProvidedBy: aClass |
|
32 |
self shouldnt: [aClass readerClass extension] raise: Exception. |
|
33 |
! |
|
34 |
||
35 |
assertSnapshotsMatchWith: writerClass |
|
36 |
| readerClass expected stream actual | |
|
37 |
readerClass _ writerClass readerClass. |
|
38 |
expected _ self mockSnapshot. |
|
39 |
stream _ RWBinaryOrTextStream on: String new. |
|
40 |
(writerClass on: stream) writeSnapshot: expected. |
|
41 |
actual _ readerClass snapshotFromStream: stream reset. |
|
42 |
self assertSnapshot: actual matches: expected. |
|
43 |
! |
|
44 |
||
45 |
assertVersionInfosMatchWith: writerClass |
|
46 |
| stream readerClass expected actual | |
|
47 |
readerClass _ writerClass readerClass. |
|
48 |
expected _ self mockVersion. |
|
49 |
stream _ RWBinaryOrTextStream on: String new. |
|
50 |
writerClass fileOut: expected on: stream. |
|
51 |
actual _ readerClass versionInfoFromStream: stream reset. |
|
52 |
self assert: actual = expected info. |
|
53 |
! |
|
54 |
||
55 |
assertVersionsMatchWith: writerClass |
|
56 |
| stream readerClass expected actual | |
|
57 |
readerClass _ writerClass readerClass. |
|
58 |
expected _ self mockVersion. |
|
59 |
stream _ RWBinaryOrTextStream on: String new. |
|
60 |
writerClass fileOut: expected on: stream. |
|
61 |
actual _ readerClass versionFromStream: stream reset. |
|
62 |
self assertVersion: actual matches: expected. |
|
63 |
! ! |
|
64 |
||
65 |
!MCSerializationTest methodsFor:'mocks'! |
|
66 |
||
67 |
mockDiffyVersion |
|
68 |
| repos workingCopy base next | |
|
69 |
repos _ MCDictionaryRepository new. |
|
70 |
workingCopy _ MCWorkingCopy forPackage: self mockPackage. |
|
71 |
workingCopy repositoryGroup addRepository: repos. |
|
72 |
MCRepositoryGroup default removeRepository: repos. |
|
73 |
base _ self mockVersion. |
|
74 |
repos storeVersion: base. |
|
75 |
self change: #a toReturn: 'a2'. |
|
76 |
next _ self mockVersionWithAncestor: base. |
|
77 |
^ next asDiffAgainst: base |
|
78 |
! ! |
|
79 |
||
80 |
!MCSerializationTest methodsFor:'testing'! |
|
81 |
||
82 |
testMcdSerialization |
|
83 |
| stream expected actual | |
|
84 |
expected _ self mockDiffyVersion. |
|
85 |
stream _ RWBinaryOrTextStream on: String new. |
|
86 |
MCMcdWriter fileOut: expected on: stream. |
|
87 |
actual _ MCMcdReader versionFromStream: stream reset. |
|
88 |
self assertVersion: actual matches: expected. |
|
89 |
! |
|
90 |
||
91 |
testMczSerialization |
|
92 |
self assertVersionsMatchWith: MCMczWriter. |
|
93 |
self assertExtensionProvidedBy: MCMczWriter. |
|
94 |
self assertVersionInfosMatchWith: MCMczWriter. |
|
95 |
self assertDependenciesMatchWith: MCMczWriter. |
|
96 |
! |
|
97 |
||
98 |
testStSerialization |
|
99 |
self assertSnapshotsMatchWith: MCStWriter. |
|
100 |
! ! |
|
101 |
||
102 |
!MCSerializationTest class methodsFor:'documentation'! |
|
103 |
||
104 |
version |
|
824
d4cbbb03d3f3
Tests moved to category SCM-Monticello-Tests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
26
diff
changeset
|
105 |
^ '$Header: /cvs/stx/stx/goodies/monticello/test/MCSerializationTest.st,v 1.2 2013-05-29 00:02:33 vrany Exp $' |
26 | 106 |
! ! |
824
d4cbbb03d3f3
Tests moved to category SCM-Monticello-Tests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
26
diff
changeset
|
107 |