From do-not-reply at jboss.org Wed Sep 28 21:53:58 2011 Content-Type: multipart/mixed; boundary="===============3270897288735412884==" MIME-Version: 1.0 From: do-not-reply at jboss.org To: gatein-commits at lists.jboss.org Subject: [gatein-commits] gatein SVN: r7554 - in portal/trunk/component/portal/src: main/java/org/exoplatform/portal/mop/management/operations and 1 other directories. Date: Wed, 28 Sep 2011 21:53:58 -0400 Message-ID: <201109290153.p8T1rw5I006743@svn01.web.mwc.hst.phx2.redhat.com> --===============3270897288735412884== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Author: nscavell Date: 2011-09-28 21:53:57 -0400 (Wed, 28 Sep 2011) New Revision: 7554 Removed: portal/trunk/component/portal/src/main/java/org/exoplatform/portal/mop/m= anagement/exportimport/ImportStrategy.java Modified: portal/trunk/component/portal/src/main/java/org/exoplatform/portal/mop/m= anagement/exportimport/ImportTask.java portal/trunk/component/portal/src/main/java/org/exoplatform/portal/mop/m= anagement/exportimport/NavigationImportTask.java portal/trunk/component/portal/src/main/java/org/exoplatform/portal/mop/m= anagement/exportimport/PageImportTask.java portal/trunk/component/portal/src/main/java/org/exoplatform/portal/mop/m= anagement/exportimport/SiteLayoutImportTask.java portal/trunk/component/portal/src/main/java/org/exoplatform/portal/mop/m= anagement/operations/MopImportResource.java portal/trunk/component/portal/src/test/java/org/exoplatform/portal/mop/m= anagement/exportimport/PageImportTaskTest.java Log: GTNPORTAL-2100: Align import strategy of mop mgmt extension with import mod= e of extensions. Deleted: portal/trunk/component/portal/src/main/java/org/exoplatform/portal= /mop/management/exportimport/ImportStrategy.java =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- portal/trunk/component/portal/src/main/java/org/exoplatform/portal/mop/= management/exportimport/ImportStrategy.java 2011-09-28 22:02:49 UTC (rev 75= 53) +++ portal/trunk/component/portal/src/main/java/org/exoplatform/portal/mop/= management/exportimport/ImportStrategy.java 2011-09-29 01:53:57 UTC (rev 75= 54) @@ -1,78 +0,0 @@ -/* - * JBoss, Home of Professional Open Source. - * Copyright 2011, Red Hat, Inc., and individual contributors - * as indicated by the @author tags. See the copyright.txt file in the - * distribution for a full listing of individual contributors. - * - * This is free software; you can redistribute it and/or modify it - * under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * This software is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this software; if not, write to the Free - * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - * 02110-1301 USA, or see the FSF site: http://www.fsf.org. - */ - -package org.exoplatform.portal.mop.management.exportimport; - -import java.util.HashMap; -import java.util.Map; - -/** - * @author Nick Scavelli - * @version $Revision$ - */ -public enum ImportStrategy -{ - /** - * Import when data does not exist. Otherwise do nothing. - */ - CONSERVE("conserve"), - - /** - * Import when data does not exist. Otherwise perform a merge - */ - MERGE("merge"), - - /** - * Delete existing data, import new data. - */ - OVERWRITE("overwrite"); - - private String name; - - ImportStrategy(String name) - { - this.name =3D name; - } - - private static final Map MAP; - - static - { - Map tmp =3D new HashMap(3); - for (ImportStrategy strategy : ImportStrategy.values()) - { - tmp.put(strategy.name, strategy); - } - - MAP =3D tmp; - } - - public String getName() - { - return name; - } - - public static ImportStrategy forName(String name) - { - return MAP.get(name); - } -} Modified: portal/trunk/component/portal/src/main/java/org/exoplatform/porta= l/mop/management/exportimport/ImportTask.java =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- portal/trunk/component/portal/src/main/java/org/exoplatform/portal/mop/= management/exportimport/ImportTask.java 2011-09-28 22:02:49 UTC (rev 7553) +++ portal/trunk/component/portal/src/main/java/org/exoplatform/portal/mop/= management/exportimport/ImportTask.java 2011-09-29 01:53:57 UTC (rev 7554) @@ -22,6 +22,8 @@ = package org.exoplatform.portal.mop.management.exportimport; = +import org.exoplatform.portal.mop.importer.ImportMode; + /** * @author Nick Scavelli * @version $Revision$ @@ -34,7 +36,7 @@ this.data =3D data; } = - public abstract void importData(ImportStrategy importStrategy) throws E= xception; + public abstract void importData(ImportMode importMode) throws Exception; = public abstract void rollback() throws Exception; } Modified: portal/trunk/component/portal/src/main/java/org/exoplatform/porta= l/mop/management/exportimport/NavigationImportTask.java =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- portal/trunk/component/portal/src/main/java/org/exoplatform/portal/mop/= management/exportimport/NavigationImportTask.java 2011-09-28 22:02:49 UTC (= rev 7553) +++ portal/trunk/component/portal/src/main/java/org/exoplatform/portal/mop/= management/exportimport/NavigationImportTask.java 2011-09-29 01:53:57 UTC (= rev 7554) @@ -67,24 +67,8 @@ } = @Override - public void importData(ImportStrategy importStrategy) throws Exception + public void importData(ImportMode importMode) throws Exception { - ImportMode mode; - switch (importStrategy) - { - case CONSERVE: - mode =3D ImportMode.INSERT; - break; - case MERGE: - mode =3D ImportMode.MERGE; - break; - case OVERWRITE: - mode =3D ImportMode.OVERWRITE; - break; - default: - throw new Exception("Could not map import strategy " + importS= trategy.getName() + " to import mode."); - } - PortalConfig portalConfig =3D dataStorage.getPortalConfig(siteKey.ge= tTypeName(), siteKey.getName()); if (portalConfig =3D=3D null) throw new Exception("Cannot import nav= igation because site does not exist for " + siteKey); = @@ -154,7 +138,7 @@ } = // Import navigation using gatein navigation importer. - NavigationImporter importer =3D new NavigationImporter(locale, mode,= data, navigationService, descriptionService); + NavigationImporter importer =3D new NavigationImporter(locale, impor= tMode, data, navigationService, descriptionService); importer.perform(); } = Modified: portal/trunk/component/portal/src/main/java/org/exoplatform/porta= l/mop/management/exportimport/PageImportTask.java =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- portal/trunk/component/portal/src/main/java/org/exoplatform/portal/mop/= management/exportimport/PageImportTask.java 2011-09-28 22:02:49 UTC (rev 75= 53) +++ portal/trunk/component/portal/src/main/java/org/exoplatform/portal/mop/= management/exportimport/PageImportTask.java 2011-09-29 01:53:57 UTC (rev 75= 54) @@ -27,6 +27,7 @@ import org.exoplatform.portal.config.Query; import org.exoplatform.portal.config.model.Page; import org.exoplatform.portal.mop.SiteKey; +import org.exoplatform.portal.mop.importer.ImportMode; import org.exoplatform.portal.mop.management.operations.page.PageUtils; = import java.util.ArrayList; @@ -49,7 +50,7 @@ } = @Override - public void importData(ImportStrategy strategy) throws Exception + public void importData(ImportMode importMode) throws Exception { if (data =3D=3D null || data.getPages() =3D=3D null || data.getPages= ().isEmpty()) return; = @@ -58,7 +59,7 @@ int size =3D list.getAvailable(); = Page.PageSet dst =3D null; - switch (strategy) + switch (importMode) { case CONSERVE: if (size =3D=3D 0) @@ -68,6 +69,17 @@ } else { + dst =3D null; + } + break; + case INSERT: + if (size =3D=3D 0) + { + dst =3D data; // No pages exist yet. + rollbackDeletes =3D data; + } + else + { dst =3D new Page.PageSet(); dst.setPages(new ArrayList()); List existingPages =3D list.getAll(); Modified: portal/trunk/component/portal/src/main/java/org/exoplatform/porta= l/mop/management/exportimport/SiteLayoutImportTask.java =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- portal/trunk/component/portal/src/main/java/org/exoplatform/portal/mop/= management/exportimport/SiteLayoutImportTask.java 2011-09-28 22:02:49 UTC (= rev 7553) +++ portal/trunk/component/portal/src/main/java/org/exoplatform/portal/mop/= management/exportimport/SiteLayoutImportTask.java 2011-09-29 01:53:57 UTC (= rev 7554) @@ -25,6 +25,7 @@ import org.exoplatform.portal.config.DataStorage; import org.exoplatform.portal.config.model.PortalConfig; import org.exoplatform.portal.mop.SiteKey; +import org.exoplatform.portal.mop.importer.ImportMode; import org.exoplatform.portal.mop.management.operations.page.PageUtils; = /** @@ -44,11 +45,11 @@ } = @Override - public void importData(ImportStrategy importStrategy) throws Exception + public void importData(ImportMode importMode) throws Exception { PortalConfig dst =3D dataStorage.getPortalConfig(siteKey.getTypeName= (), siteKey.getName()); = - switch (importStrategy) + switch (importMode) { // Really doesn't make sense to "merge" site layout data. Really= two modes, conserve (keep) and overwrite. case CONSERVE: @@ -62,6 +63,7 @@ dst =3D null; } break; + case INSERT: case MERGE: case OVERWRITE: if (dst =3D=3D null) Modified: portal/trunk/component/portal/src/main/java/org/exoplatform/porta= l/mop/management/operations/MopImportResource.java =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- portal/trunk/component/portal/src/main/java/org/exoplatform/portal/mop/= management/operations/MopImportResource.java 2011-09-28 22:02:49 UTC (rev 7= 553) +++ portal/trunk/component/portal/src/main/java/org/exoplatform/portal/mop/= management/operations/MopImportResource.java 2011-09-29 01:53:57 UTC (rev 7= 554) @@ -28,7 +28,7 @@ import org.exoplatform.portal.config.model.PortalConfig; import org.exoplatform.portal.mop.SiteKey; import org.exoplatform.portal.mop.description.DescriptionService; -import org.exoplatform.portal.mop.management.exportimport.ImportStrategy; +import org.exoplatform.portal.mop.importer.ImportMode; import org.exoplatform.portal.mop.management.exportimport.NavigationExport= Task; import org.exoplatform.portal.mop.management.exportimport.NavigationImport= Task; import org.exoplatform.portal.mop.management.exportimport.PageExportTask; @@ -96,12 +96,18 @@ DescriptionService descriptionService =3D operationContext.getRuntim= eContext().getRuntimeComponent(DescriptionService.class); if (descriptionService =3D=3D null) throw new OperationException(ope= rationName, "Description service was null"); = - String strategyAttribute =3D operationContext.getAttributes().getVal= ue("import-strategy"); - ImportStrategy strategy =3D ImportStrategy.MERGE; - if (strategyAttribute !=3D null) + ImportMode importMode =3D ImportMode.MERGE; + String mode =3D operationContext.getAttributes().getValue("importMod= e"); + if (mode !=3D null) { - strategy =3D ImportStrategy.forName(strategyAttribute); - if (strategy =3D=3D null) throw new OperationException(operationN= ame, "Unknown import strategy " + strategyAttribute); + try + { + importMode =3D ImportMode.valueOf(mode.trim().toUpperCase()); + } + catch (Exception e) + { + throw new OperationException(operationName, "Unknown importMod= e " + mode); + } } = Map importMap =3D new HashMap(); @@ -200,7 +206,7 @@ Map importsRan =3D new HashMap(); try { - log.info("Performing import using strategy '" + strategy.getName(= ) + "'"); + log.info("Performing import using importMode '" + mode + "'"); for (Map.Entry mopImportEntry : importMap.ent= rySet()) { SiteKey siteKey =3D mopImportEntry.getKey(); @@ -220,7 +226,7 @@ { log.debug("Importing site layout data."); ran.siteTask =3D mopImport.siteTask; - mopImport.siteTask.importData(strategy); + mopImport.siteTask.importData(importMode); } = // Page import @@ -228,7 +234,7 @@ { log.debug("Importing page data."); ran.pageTask =3D mopImport.pageTask; - mopImport.pageTask.importData(strategy); + mopImport.pageTask.importData(importMode); } = // Navigation import @@ -236,7 +242,7 @@ { log.debug("Importing navigation data."); ran.navigationTask =3D mopImport.navigationTask; - mopImport.navigationTask.importData(strategy); + mopImport.navigationTask.importData(importMode); } } log.info("Import successful !"); Modified: portal/trunk/component/portal/src/test/java/org/exoplatform/porta= l/mop/management/exportimport/PageImportTaskTest.java =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- portal/trunk/component/portal/src/test/java/org/exoplatform/portal/mop/= management/exportimport/PageImportTaskTest.java 2011-09-28 22:02:49 UTC (re= v 7553) +++ portal/trunk/component/portal/src/test/java/org/exoplatform/portal/mop/= management/exportimport/PageImportTaskTest.java 2011-09-29 01:53:57 UTC (re= v 7554) @@ -30,6 +30,7 @@ import org.exoplatform.portal.config.Query; import org.exoplatform.portal.config.model.Page; import org.exoplatform.portal.mop.SiteKey; +import org.exoplatform.portal.mop.importer.ImportMode; import org.exoplatform.portal.pom.data.ComponentData; import org.exoplatform.portal.pom.data.PageData; import org.mockito.ArgumentMatcher; @@ -66,7 +67,7 @@ when(dataStorage.find(Matchers.>any())).thenReturn(list); when(list.getAvailable()).thenReturn(0); // no pages exist = - task.importData(ImportStrategy.CONSERVE); + task.importData(ImportMode.CONSERVE); = verify(dataStorage).find(query("user", "foo")); verify(list).getAvailable(); @@ -88,6 +89,90 @@ public void testConserve_SamePages() throws Exception { Page.PageSet importing =3D new Builder().addPage("page1").addPage("p= age2").addPage("page3").build(); + PageImportTask task =3D new PageImportTask(importing, siteKey, dataS= torage); + + when(dataStorage.find(Matchers.>any())).thenReturn(list); + when(list.getAvailable()).thenReturn(3); + + task.importData(ImportMode.CONSERVE); + + verify(dataStorage).find(query("user", "foo")); + verify(list).getAvailable(); + + verifyNoMoreInteractions(dataStorage, list); + + assertNullOrEmpty(task.getRollbackDeletes()); + assertNullOrEmpty(task.getRollbackSaves()); + } + + public void testConserve_NewPages() throws Exception + { + Page.PageSet importing =3D new Builder().addPage("page1").addPage("p= age2").addPage("page3").build(); + PageImportTask task =3D new PageImportTask(importing, siteKey, dataS= torage); + + when(dataStorage.find(Matchers.>any())).thenReturn(list); + when(list.getAvailable()).thenReturn(3); + + task.importData(ImportMode.CONSERVE); + + verify(dataStorage).find(query("user", "foo")); + verify(list).getAvailable(); + + verifyNoMoreInteractions(dataStorage, list); + + assertNullOrEmpty(task.getRollbackDeletes()); + assertNullOrEmpty(task.getRollbackSaves()); + } + + public void testConserve_NewAndSamePages() throws Exception + { + Page.PageSet importing =3D new Builder().addPage("page1").addPage("p= age2").addPage("page3").addPage("page4").build(); + PageImportTask task =3D new PageImportTask(importing, siteKey, dataS= torage); + + when(dataStorage.find(Matchers.>any())).thenReturn(list); + when(list.getAvailable()).thenReturn(3); + + task.importData(ImportMode.CONSERVE); + + verify(dataStorage).find(query("user", "foo")); + verify(list).getAvailable(); + + verifyNoMoreInteractions(dataStorage, list); + + assertNullOrEmpty(task.getRollbackDeletes()); + assertNullOrEmpty(task.getRollbackSaves()); + } + = + public void testInsert_NoPages() throws Exception + { + Page.PageSet importing =3D new Builder().addPage("page1").addPage("p= age2").addPage("page3").build(); + PageImportTask task =3D new PageImportTask(importing, siteKey, dataS= torage); + + when(dataStorage.find(Matchers.>any())).thenReturn(list); + when(list.getAvailable()).thenReturn(0); // no pages exist + + task.importData(ImportMode.INSERT); + + verify(dataStorage).find(query("user", "foo")); + verify(list).getAvailable(); + verify(list, never()).getAll(); + + for (Page page : importing.getPages()) + { + verify(dataStorage).save(page); + } + verify(dataStorage, times(3)).save(); + + verifyNoMoreInteractions(dataStorage, list); + + Assert.assertNotNull(task.getRollbackDeletes()); + Assert.assertEquals(importing, task.getRollbackDeletes()); + Assert.assertNull(task.getRollbackSaves()); + } + + public void testInsert_SamePages() throws Exception + { + Page.PageSet importing =3D new Builder().addPage("page1").addPage("p= age2").addPage("page3").build(); Page.PageSet existing =3D new Builder().addPage("page1").addPage("pa= ge2").addPage("page3").build(); PageImportTask task =3D new PageImportTask(importing, siteKey, dataS= torage); = @@ -95,7 +180,7 @@ when(list.getAvailable()).thenReturn(3); when(list.getAll()).thenReturn(existing.getPages()); = - task.importData(ImportStrategy.CONSERVE); + task.importData(ImportMode.INSERT); = verify(dataStorage).find(query("user", "foo")); verify(list).getAvailable(); @@ -107,7 +192,7 @@ assertNullOrEmpty(task.getRollbackSaves()); } = - public void testConserve_NewPages() throws Exception + public void testInsert_NewPages() throws Exception { Page.PageSet importing =3D new Builder().addPage("page1").addPage("p= age2").addPage("page3").build(); Page.PageSet existing =3D new Builder().addPage("foo").addPage("bar"= ).addPage("baz").build(); @@ -117,7 +202,7 @@ when(list.getAvailable()).thenReturn(3); when(list.getAll()).thenReturn(existing.getPages()); = - task.importData(ImportStrategy.CONSERVE); + task.importData(ImportMode.INSERT); = verify(dataStorage).find(query("user", "foo")); verify(list).getAvailable(); @@ -136,7 +221,7 @@ Assert.assertNull(task.getRollbackSaves()); } = - public void testConserve_NewAndSamePages() throws Exception + public void testInsert_NewAndSamePages() throws Exception { Page.PageSet importing =3D new Builder().addPage("page1").addPage("p= age2").addPage("page3").addPage("page4").build(); Page.PageSet existing =3D new Builder().addPage("page2").addPage("ba= r").addPage("page3").build(); @@ -146,7 +231,7 @@ when(list.getAvailable()).thenReturn(3); when(list.getAll()).thenReturn(existing.getPages()); = - task.importData(ImportStrategy.CONSERVE); + task.importData(ImportMode.INSERT); = verify(dataStorage).find(query("user", "foo")); verify(list).getAvailable(); @@ -174,7 +259,7 @@ when(dataStorage.find(Matchers.>any())).thenReturn(list); when(list.getAvailable()).thenReturn(0); // no pages exist = - task.importData(ImportStrategy.MERGE); + task.importData(ImportMode.MERGE); = verify(dataStorage).find(query("user", "foo")); verify(list).getAvailable(); @@ -203,7 +288,7 @@ when(list.getAvailable()).thenReturn(3); when(list.getAll()).thenReturn(existing.getPages()); = - task.importData(ImportStrategy.MERGE); + task.importData(ImportMode.MERGE); = verify(dataStorage).find(query("user", "foo")); verify(list).getAvailable(); @@ -233,7 +318,7 @@ when(list.getAvailable()).thenReturn(3); when(list.getAll()).thenReturn(existing.getPages()); = - task.importData(ImportStrategy.MERGE); + task.importData(ImportMode.MERGE); = verify(dataStorage).find(query("user", "foo")); verify(list).getAvailable(); @@ -262,7 +347,7 @@ when(list.getAvailable()).thenReturn(3); when(list.getAll()).thenReturn(existing.getPages()); = - task.importData(ImportStrategy.MERGE); + task.importData(ImportMode.MERGE); = verify(dataStorage).find(query("user", "foo")); verify(list).getAvailable(); @@ -295,7 +380,7 @@ when(dataStorage.find(Matchers.>any())).thenReturn(list); when(list.getAvailable()).thenReturn(0); // no pages exist = - task.importData(ImportStrategy.OVERWRITE); + task.importData(ImportMode.OVERWRITE); = verify(dataStorage).find(query("user", "foo")); verify(list).getAvailable(); @@ -324,7 +409,7 @@ when(list.getAvailable()).thenReturn(3); when(list.getAll()).thenReturn(existing.getPages()); = - task.importData(ImportStrategy.OVERWRITE); + task.importData(ImportMode.OVERWRITE); = verify(dataStorage).find(query("user", "foo")); verify(list).getAvailable(); @@ -360,7 +445,7 @@ when(list.getAvailable()).thenReturn(3); when(list.getAll()).thenReturn(existing.getPages()); = - task.importData(ImportStrategy.OVERWRITE); + task.importData(ImportMode.OVERWRITE); = verify(dataStorage).find(query("user", "foo")); verify(list).getAvailable(); @@ -397,7 +482,7 @@ when(list.getAvailable()).thenReturn(3); when(list.getAll()).thenReturn(existing.getPages()); = - task.importData(ImportStrategy.OVERWRITE); + task.importData(ImportMode.OVERWRITE); = verify(dataStorage).find(query("user", "foo")); verify(list).getAvailable(); --===============3270897288735412884==--