DashbuilderDataMigration { private void migrateNavigation() { this.migrateNavigation(pluginsFS, navigationFS); } DashbuilderDataMigration(); @Inject  DashbuilderDataMigration(
            final @Named("ioStrategy") IOService ioService,
            final @Named("datasetsFS") FileSystem datasetsFS,
            final @Named("pluginsFS") FileSystem pluginsFS,
            final @Named("perspectivesFS") FileSystem perspectivesFS,
            final @Named("navigationFS") FileSystem navigationFS); void migrateDatasets(FileSystem sourceFS, FileSystem targetFS); void migratePerspectives(FileSystem sourceFS, FileSystem targetFS); void migrateNavigation(FileSystem sourceFS, FileSystem targetFS);  }
@Test public void testMigrateNavigation() { checkInitialCondition(); createFiles(sourceFS); dashbuilderDataMigration.migrateNavigation(sourceFS, targetFS); List<String> sourceFiles = getFiles(sourceFS); List<String> targetFiles = getFiles(targetFS); assertEquals(7, sourceFiles.size()); assertEquals(2, targetFiles.size()); assertEquals(new ArrayList<String>() {{ add("/bbb.txt"); add("/dataset1.csv"); add("/definitions/dataset2.dset"); add("/page-abc/perspective_layout.json"); add("/perspective_layout2.txt"); add("/perspective_layouts/aaa.txt"); add("/readme.md"); }}, sourceFiles); assertEquals(new ArrayList<String>() {{ add("/navtree.json"); add("/readme.md"); }}, targetFiles); }