7
7
)
8
8
from planemo import io
9
9
import tempfile
10
+ import shutil
10
11
import sys
11
12
import os
12
13
from xml .etree import ElementTree
@@ -79,6 +80,21 @@ def test_shed_diff_raw(self):
79
80
diff_command .extend (self ._shed_args (read_only = True ))
80
81
self ._check_exit_code (diff_command , exit_code = 0 )
81
82
83
+ def test_shed_diff_xml (self ):
84
+ with self ._isolate_repo ("package_1" ) as f :
85
+ upload_command = [
86
+ "shed_upload" , "--force_repository_creation" ,
87
+ ]
88
+ upload_command .extend (self ._shed_args ())
89
+ self ._check_exit_code (upload_command )
90
+ changed_xml = os .path .join (TEST_REPOS_DIR ,
91
+ "package_1_changed" ,
92
+ "tool_dependencies.xml" )
93
+ shutil .copyfile (changed_xml , join (f , "tool_dependencies.xml" ))
94
+ diff_command = ["shed_diff" ]
95
+ diff_command .extend (self ._shed_args (read_only = True ))
96
+ self ._check_exit_code (diff_command , exit_code = 1 )
97
+
82
98
def test_diff_xunit (self ):
83
99
with self ._isolate_repo ("multi_repos_nested" ) as f :
84
100
upload_command = [
@@ -99,15 +115,13 @@ def test_diff_xunit(self):
99
115
self ._check_exit_code (diff_command , exit_code = 0 )
100
116
101
117
compare = open (xunit_report .name , 'r' ).read ()
102
- if not diff (
118
+ if diff (
103
119
self ._make_deterministic (ElementTree .parse (known_good_xunit_report ).getroot ()),
104
120
self ._make_deterministic (ElementTree .fromstring (compare )),
105
121
reporter = sys .stdout .write
106
122
):
107
- self .assertTrue (True )
108
- else :
109
123
sys .stdout .write (compare )
110
- self . assertTrue ( False )
124
+ assert False , "XUnit report different from multi_repos_nested.xunit.xml."
111
125
112
126
io .write_file (
113
127
join (f , "cat1" , "related_file" ),
@@ -116,15 +130,13 @@ def test_diff_xunit(self):
116
130
self ._check_exit_code (diff_command , exit_code = 1 )
117
131
118
132
compare = open (xunit_report .name , 'r' ).read ()
119
- if not diff (
133
+ if diff (
120
134
self ._make_deterministic (ElementTree .parse (known_bad_xunit_report ).getroot ()),
121
135
self ._make_deterministic (ElementTree .fromstring (compare )),
122
136
reporter = sys .stdout .write
123
137
):
124
- self .assertTrue (True )
125
- else :
126
138
sys .stdout .write (compare )
127
- self . assertTrue ( False )
139
+ assert False , "XUnit report different from multi_repos_nested.xunit-bad.xml."
128
140
129
141
os .unlink (xunit_report .name )
130
142
0 commit comments