diff --git a/src/test/java/it/inaf/oats/vospace/FileServiceClientTest.java b/src/test/java/it/inaf/oats/vospace/FileServiceClientTest.java
index 3e00316e8dbca8697740d78bb8ab692315ee9945..0ed704218f9b3d8a161f59fea50f45da648c039d 100644
--- a/src/test/java/it/inaf/oats/vospace/FileServiceClientTest.java
+++ b/src/test/java/it/inaf/oats/vospace/FileServiceClientTest.java
@@ -10,10 +10,12 @@ import it.inaf.ia2.aa.data.User;
 import it.inaf.oats.vospace.FileServiceClient.ArchiveRequest;
 import it.inaf.oats.vospace.datamodel.Views;
 import it.inaf.oats.vospace.exception.InvalidArgumentException;
+import it.inaf.oats.vospace.parent.exchange.ArchiveEntryDescriptor;
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
 import java.io.UncheckedIOException;
 import java.net.URI;
+import java.util.List;
 import javax.servlet.http.HttpServletRequest;
 import net.ivoa.xml.vospace.v2.Param;
 import net.ivoa.xml.vospace.v2.Transfer;
@@ -54,6 +56,9 @@ public class FileServiceClientTest {
 
     @Mock
     private HttpServletRequest request;
+    
+    @Mock
+    private LinkService linkService;
 
     @InjectMocks
     private FileServiceClient fileServiceClient;
@@ -63,9 +68,7 @@ public class FileServiceClientTest {
         ReflectionTestUtils.setField(fileServiceClient, "authority", "example.com!vospace");
         ReflectionTestUtils.setField(fileServiceClient, "fileServiceUrl", "http://file-service");
     }
-    
-    // TODO: fix tests
-
+        
     @Test
     public void testTarArchiveJob() {
         testStartArchiveJob(Views.TAR_VIEW_URI);
@@ -94,11 +97,14 @@ public class FileServiceClientTest {
         View view = new View();
         view.setUri(Views.ZIP_VIEW_URI);
         transfer.setView(view);
+        
+        when(linkService.followLinksForArchiveService(any()))
+                .thenReturn(List.of(new ArchiveEntryDescriptor("/mydir")));
 
         ArchiveRequest archiveRequest = testStartArchiveJob(transfer);
 
-        //assertEquals(1, archiveRequest.getPaths().size());
-        //assertEquals("/mydir", archiveRequest.getPaths().get(0));
+        assertEquals(1, archiveRequest.getEntryDescriptors().size());
+        assertEquals("/mydir", archiveRequest.getEntryDescriptors().get(0).getTargetNodeVosPath());
     }
 
     @Test
@@ -155,12 +161,19 @@ public class FileServiceClientTest {
         param2.setUri(viewUri + "/include");
         param2.setValue("file2");
         view.getParam().add(param2);
+        
+        when(linkService.followLinksForArchiveService(any())).thenReturn(
+                List.of(new ArchiveEntryDescriptor("/parent_dir/file1"),
+                        new ArchiveEntryDescriptor("/parent_dir/file2")                
+                ));
 
         ArchiveRequest archiveRequest = testStartArchiveJob(transfer);
 
-        //assertEquals(2, archiveRequest.getPaths().size());
-        //assertEquals("/parent_dir/file1", archiveRequest.getPaths().get(0));
-        //assertEquals("/parent_dir/file2", archiveRequest.getPaths().get(1));
+        assertEquals(2, archiveRequest.getEntryDescriptors().size());
+        assertEquals("/parent_dir/file1", 
+                archiveRequest.getEntryDescriptors().get(0).getTargetNodeVosPath());
+        assertEquals("/parent_dir/file2", 
+                archiveRequest.getEntryDescriptors().get(1).getTargetNodeVosPath());
     }
 
     private ArchiveRequest testStartArchiveJob(Transfer transfer) {