4343import org .slf4j .LoggerFactory ;
4444
4545@ Execution (ExecutionMode .CONCURRENT )
46- public class ArchiveUtilsTest {
46+ class ArchiveUtilsTest {
4747
4848 /**
4949 * Logger
@@ -155,34 +155,35 @@ void shouldCreateTarGzAndExtractIt() throws Exception {
155155 // Untar to temporary
156156 Path tmp = ArchiveUtils .untar (archive .getPath ());
157157 assertTrue (Files .exists (tmp ), "Temp should exist" );
158- assertTrue (Files .exists (tmp .resolve ("dir1" )), "dir1 should exist" );
158+ assertTrue (Files .exists (tmp .resolve (directory . getPath (). getFileName ()). resolve ( "dir1" )), "dir1 should exist" );
159159
160160 // Ensure all files are extracted
161- assertTrue (Files .exists (targetGzDir .resolve ("dir1" )), "dir1 should exist" );
162- assertTrue (Files .exists (targetGzDir .resolve ("dir2" )), "dir2 should exist" );
163- assertTrue (Files .exists (targetGzDir .resolve ("dir1" ).resolve ("file1" )), "file1 should exist" );
164- assertTrue (Files .exists (targetGzDir .resolve ("dir2" ).resolve ("file2" )), "file2 should exist" );
165- assertTrue (Files .exists (targetGzDir .resolve ("dir1" ).resolve ("file3" )), "file3 should exist" );
166- assertTrue (Files .exists (targetGzDir .resolve ("dir2" ).resolve ("dir3" )), "dir3 should exist" );
167- assertTrue (Files .exists (targetGzDir .resolve ("dir2" ).resolve ("dir3" ).resolve ("file4" )), "file4 should exist" );
161+ Path extractedDir = targetGzDir .resolve (directory .getPath ().getFileName ());
162+ assertTrue (Files .exists (extractedDir .resolve ("dir1" )), "dir1 should exist" );
163+ assertTrue (Files .exists (extractedDir .resolve ("dir2" )), "dir2 should exist" );
164+ assertTrue (Files .exists (extractedDir .resolve ("dir1" ).resolve ("file1" )), "file1 should exist" );
165+ assertTrue (Files .exists (extractedDir .resolve ("dir2" ).resolve ("file2" )), "file2 should exist" );
166+ assertTrue (Files .exists (extractedDir .resolve ("dir1" ).resolve ("file3" )), "file3 should exist" );
167+ assertTrue (Files .exists (extractedDir .resolve ("dir2" ).resolve ("dir3" )), "dir3 should exist" );
168+ assertTrue (Files .exists (extractedDir .resolve ("dir2" ).resolve ("dir3" ).resolve ("file4" )), "file4 should exist" );
168169
169170 // Empty directory
170- assertTrue (Files .exists (targetGzDir .resolve ("empty" )), "empty should exist" );
171+ assertTrue (Files .exists (extractedDir .resolve ("empty" )), "empty should exist" );
171172
172173 // Assert file content
173174 assertTrue (
174- Files .readString (targetGzDir .resolve ("dir1" ).resolve ("file1" )).equals ("file1" ),
175+ Files .readString (extractedDir .resolve ("dir1" ).resolve ("file1" )).equals ("file1" ),
175176 "file1 content should match" );
176177 assertTrue (
177- Files .readString (targetGzDir .resolve ("dir2" ).resolve ("file2" )).equals ("file2" ),
178+ Files .readString (extractedDir .resolve ("dir2" ).resolve ("file2" )).equals ("file2" ),
178179 "file2 content should match" );
179180 assertTrue (
180- Files .readString (targetGzDir .resolve ("dir2" ).resolve ("dir3" ).resolve ("file4" ))
181+ Files .readString (extractedDir .resolve ("dir2" ).resolve ("dir3" ).resolve ("file4" ))
181182 .equals ("file4" ),
182183 "file4 content should match" );
183184
184185 // Ensure symlink is extracted
185- assertTrue (Files .isSymbolicLink (targetGzDir .resolve ("dir1" ).resolve ("file3" )), "file3 should be symlink" );
186+ assertTrue (Files .isSymbolicLink (extractedDir .resolve ("dir1" ).resolve ("file3" )), "file3 should be symlink" );
186187
187188 // To temporary
188189 Path temp = ArchiveUtils .uncompressuntar (compressedArchive , directory .getMediaType ());
@@ -207,34 +208,35 @@ void shouldCreateTarZstdAndExtractIt() throws Exception {
207208 // Untar to temporary
208209 Path tmp = ArchiveUtils .untar (archive .getPath ());
209210 assertTrue (Files .exists (tmp ), "Temp should exist" );
210- assertTrue (Files .exists (tmp .resolve ("dir1" )), "dir1 should exist" );
211+ assertTrue (Files .exists (tmp .resolve (directory . getPath (). getFileName ()). resolve ( "dir1" )), "dir1 should exist" );
211212
212213 // Ensure all files are extracted
213- assertTrue (Files .exists (targetZstdDir .resolve ("dir1" )), "dir1 should exist" );
214- assertTrue (Files .exists (targetZstdDir .resolve ("dir2" )), "dir2 should exist" );
215- assertTrue (Files .exists (targetZstdDir .resolve ("dir1" ).resolve ("file1" )), "file1 should exist" );
216- assertTrue (Files .exists (targetZstdDir .resolve ("dir2" ).resolve ("file2" )), "file2 should exist" );
217- assertTrue (Files .exists (targetZstdDir .resolve ("dir1" ).resolve ("file3" )), "file3 should exist" );
218- assertTrue (Files .exists (targetZstdDir .resolve ("dir2" ).resolve ("dir3" )), "dir3 should exist" );
219- assertTrue (Files .exists (targetZstdDir .resolve ("dir2" ).resolve ("dir3" ).resolve ("file4" )), "file4 should exist" );
214+ Path extractedDir = targetZstdDir .resolve (directory .getPath ().getFileName ());
215+ assertTrue (Files .exists (extractedDir .resolve ("dir1" )), "dir1 should exist" );
216+ assertTrue (Files .exists (extractedDir .resolve ("dir2" )), "dir2 should exist" );
217+ assertTrue (Files .exists (extractedDir .resolve ("dir1" ).resolve ("file1" )), "file1 should exist" );
218+ assertTrue (Files .exists (extractedDir .resolve ("dir2" ).resolve ("file2" )), "file2 should exist" );
219+ assertTrue (Files .exists (extractedDir .resolve ("dir1" ).resolve ("file3" )), "file3 should exist" );
220+ assertTrue (Files .exists (extractedDir .resolve ("dir2" ).resolve ("dir3" )), "dir3 should exist" );
221+ assertTrue (Files .exists (extractedDir .resolve ("dir2" ).resolve ("dir3" ).resolve ("file4" )), "file4 should exist" );
220222
221223 // Empty directory
222- assertTrue (Files .exists (targetZstdDir .resolve ("empty" )), "empty should exist" );
224+ assertTrue (Files .exists (extractedDir .resolve ("empty" )), "empty should exist" );
223225
224226 // Assert file content
225227 assertTrue (
226- Files .readString (targetZstdDir .resolve ("dir1" ).resolve ("file1" )).equals ("file1" ),
228+ Files .readString (extractedDir .resolve ("dir1" ).resolve ("file1" )).equals ("file1" ),
227229 "file1 content should match" );
228230 assertTrue (
229- Files .readString (targetZstdDir .resolve ("dir2" ).resolve ("file2" )).equals ("file2" ),
231+ Files .readString (extractedDir .resolve ("dir2" ).resolve ("file2" )).equals ("file2" ),
230232 "file2 content should match" );
231233 assertTrue (
232- Files .readString (targetZstdDir .resolve ("dir2" ).resolve ("dir3" ).resolve ("file4" ))
234+ Files .readString (extractedDir .resolve ("dir2" ).resolve ("dir3" ).resolve ("file4" ))
233235 .equals ("file4" ),
234236 "file4 content should match" );
235237
236238 // Ensure symlink is extracted
237- assertTrue (Files .isSymbolicLink (targetZstdDir .resolve ("dir1" ).resolve ("file3" )), "file3 should be symlink" );
239+ assertTrue (Files .isSymbolicLink (extractedDir .resolve ("dir1" ).resolve ("file3" )), "file3 should be symlink" );
238240
239241 // To temporary
240242 Path temp = ArchiveUtils .uncompressuntar (compressedArchive , directory .getMediaType ());
0 commit comments