1616import tempfile
1717import unittest
1818
19- from mrcfile import command_line
19+ from mrcfile import command_line , validator
2020from . import helpers
2121
2222
@@ -56,7 +56,21 @@ def tearDown(self):
5656 if os .path .exists (self .test_output ):
5757 shutil .rmtree (self .test_output )
5858 super (CommandLineTest , self ).tearDown ()
59-
59+
60+ def test_print_header_no_args (self ):
61+ command_line .print_headers ([], print_file = self .print_stream )
62+ assert len (self .print_stream .getvalue ()) == 0
63+ assert len (sys .stdout .getvalue ()) == 0
64+ assert len (sys .stderr .getvalue ()) == 0
65+
66+ def test_print_header_nonexistent_file (self ):
67+ with self .assertRaisesRegex (IOError , "No such file" ):
68+ command_line .print_headers (["nonexistent.mrc" ],
69+ print_file = self .print_stream )
70+ assert len (self .print_stream .getvalue ()) == 0
71+ assert len (sys .stdout .getvalue ()) == 0
72+ assert len (sys .stderr .getvalue ()) == 0
73+
6074 def test_print_header (self ):
6175 command_line .print_headers (self .files , print_file = self .print_stream )
6276 printed = self .print_stream .getvalue ()
@@ -67,6 +81,20 @@ def test_print_header(self):
6781 assert len (sys .stdout .getvalue ()) == 0
6882 assert len (sys .stderr .getvalue ()) == 0
6983
84+ def test_validate_no_args (self ):
85+ result = validator .main ([])
86+ assert result == 0
87+ assert len (self .print_stream .getvalue ()) == 0
88+ assert len (sys .stdout .getvalue ()) == 0
89+ assert len (sys .stderr .getvalue ()) == 0
90+
91+ def test_validate (self ):
92+ result = validator .main (self .files )
93+ assert result == 1
94+ stdout = str (sys .stdout .getvalue ())
95+ assert "File does not declare MRC format version 20140" in stdout
96+ assert len (sys .stderr .getvalue ()) == 0
97+
7098
7199if __name__ == '__main__' :
72100 unittest .main ()
0 commit comments