@@ -685,17 +685,48 @@ def test_uncommitted_tracked_changes_that_conflict_append(self):
685685
686686class TestEmptyDir (TestEndToEnd ):
687687
688+ def test_empty_dir_status (self ):
689+ untracked_empty_dir = self ._mk_empty_dir ('untracked_empty_dir' )
690+
691+ out = utils .stdout (gl .status ())
692+
693+ self .assertIn (untracked_empty_dir , out , 'Empty dir didn\' t appear in status' )
694+
695+ def test_ignored_empty_dir_status (self ):
696+ ignored_empty_dir = self ._mk_empty_dir ('ignored_empty_dir' )
697+ utils .write_file (os .path .join (self .path , '.gitignore' ), ignored_empty_dir )
698+
699+ out = utils .stdout (gl .status ())
700+
701+ self .assertFalse (ignored_empty_dir in out ,
702+ 'Ignored empty dir was listed in status' )
703+
688704 def test_track_empty_dir (self ):
689- dir_to_track = 'wanted_empty_dir'
690- dir_to_track_path = os .path .join (self .path , dir_to_track )
691- os .mkdir (dir_to_track_path )
705+ dir_to_track = self ._mk_empty_dir ('wanted_empty_dir' )
692706 expected_out = 'Empty directory {0} is now a tracked directory' .format (
693- os . path . join (dir_to_track , '' ))
707+ self . _dir_path (dir_to_track ))
694708
695- out = utils .stdout (gl .track (dir_to_track_path ))
709+ out = utils .stdout (gl .track (dir_to_track ))
696710
697711 self .assertIn (expected_out , out , 'Empty dir wasn\' t tracked' )
698712
713+ def test_tracked_empty_dir_status (self ):
714+ tracked_empty_dir = self ._mk_empty_dir ('tracked_empty_dir' )
715+ gl .track (tracked_empty_dir )
716+ expected_out = '{0} (new directory)' .format (
717+ self ._dir_path (tracked_empty_dir ))
718+
719+ out = utils .stdout (gl .status ())
720+
721+ self .assertIn (expected_out , out , 'Didn\' t report newly tracked dir' )
722+
723+ def _mk_empty_dir (self , name ):
724+ os .mkdir (os .path .join (self .path , name ))
725+ return name
726+
727+ def _dir_path (self , path ):
728+ return os .path .join (path , '' )
729+
699730
700731class TestPerformance (TestEndToEnd ):
701732
0 commit comments