@@ -91,11 +91,14 @@ public void shouldExtractWhenFileOnDiskDoesNotExist( @TempDir File temporaryFol
9191 Date entryDate = new Date ();
9292
9393 // when & then
94+ // always extract the file if it does not exist
95+ assertTrue ( abstractUnArchiver .shouldExtractEntry ( temporaryFolder , file , entryname , entryDate ) );
96+ abstractUnArchiver .setOverwrite ( false );
9497 assertTrue ( abstractUnArchiver .shouldExtractEntry ( temporaryFolder , file , entryname , entryDate ) );
9598 }
9699
97100 @ Test
98- public void shouldNotExtractWhenFileOnDiskIsNewerThanEntryInArchive ( @ TempDir File temporaryFolder ) throws IOException
101+ public void shouldExtractWhenFileOnDiskIsNewerThanEntryInArchive ( @ TempDir File temporaryFolder ) throws IOException
99102 {
100103 // given
101104 File file = new File ( temporaryFolder , "whatever.txt" );
@@ -105,11 +108,14 @@ public void shouldNotExtractWhenFileOnDiskIsNewerThanEntryInArchive( @TempDir Fi
105108 Date entryDate = new Date ( 0 );
106109
107110 // when & then
111+ // if the file is newer than archive entry, extract only if overwrite is true (default)
112+ assertTrue ( this .abstractUnArchiver .shouldExtractEntry ( temporaryFolder , file , entryname , entryDate ) );
113+ abstractUnArchiver .setOverwrite ( false );
108114 assertFalse ( this .abstractUnArchiver .shouldExtractEntry ( temporaryFolder , file , entryname , entryDate ) );
109115 }
110116
111117 @ Test
112- public void shouldNotExtractWhenFileOnDiskIsNewerThanEntryInArchive_andWarnAboutDifferentCasing ( @ TempDir File temporaryFolder )
118+ public void shouldExtractWhenFileOnDiskIsNewerThanEntryInArchive_andWarnAboutDifferentCasing ( @ TempDir File temporaryFolder )
113119 throws IOException
114120 {
115121 // given
@@ -120,7 +126,7 @@ public void shouldNotExtractWhenFileOnDiskIsNewerThanEntryInArchive_andWarnAbout
120126 Date entryDate = new Date ( 0 );
121127
122128 // when & then
123- assertFalse ( this .abstractUnArchiver .shouldExtractEntry ( temporaryFolder , file , entryname , entryDate ) );
129+ assertTrue ( this .abstractUnArchiver .shouldExtractEntry ( temporaryFolder , file , entryname , entryDate ) );
124130 assertTrue ( this .abstractUnArchiver .casingMessageEmitted .get () > 0 );
125131 }
126132
@@ -135,12 +141,10 @@ public void shouldExtractWhenEntryInArchiveIsNewerThanFileOnDisk( @TempDir File
135141 Date entryDate = new Date ( System .currentTimeMillis () );
136142
137143 // when & then
138- this . abstractUnArchiver . setOverwrite ( true );
144+ // always extract the file if the archive entry is newer than the file on disk
139145 assertTrue ( this .abstractUnArchiver .shouldExtractEntry ( temporaryFolder , file , entryname , entryDate ) );
140-
141- // when & then
142146 this .abstractUnArchiver .setOverwrite ( false );
143- assertFalse ( this .abstractUnArchiver .shouldExtractEntry ( temporaryFolder , file , entryname , entryDate ) );
147+ assertTrue ( this .abstractUnArchiver .shouldExtractEntry ( temporaryFolder , file , entryname , entryDate ) );
144148 }
145149
146150 @ Test
@@ -158,7 +162,7 @@ public void shouldExtractWhenEntryInArchiveIsNewerThanFileOnDiskAndWarnAboutDiff
158162 this .abstractUnArchiver .setOverwrite ( true );
159163 assertTrue ( this .abstractUnArchiver .shouldExtractEntry ( temporaryFolder , file , entryname , entryDate ) );
160164 this .abstractUnArchiver .setOverwrite ( false );
161- assertFalse ( this .abstractUnArchiver .shouldExtractEntry ( temporaryFolder , file , entryname , entryDate ) );
165+ assertTrue ( this .abstractUnArchiver .shouldExtractEntry ( temporaryFolder , file , entryname , entryDate ) );
162166 assertTrue ( this .abstractUnArchiver .casingMessageEmitted .get () > 0 );
163167 }
164168
0 commit comments