From 5ffdfeec2052f95022c1af6ad487606f5ab5cfc8 Mon Sep 17 00:00:00 2001 From: Alba Carro Date: Fri, 24 Aug 2012 23:54:30 +0200 Subject: [PATCH] Test for OrderImporterMPXJ and needed files Added external needed project files. One .mpp and one .planner. FEA: ItEr77S05BasicProjectImport --- .../orders/imports/OrderImporterTest.java | 109 ++++++++++++++++++ scripts/mpxj-import/T1R1FCT2R2.mpp | Bin 0 -> 145920 bytes scripts/mpxj-import/T1R1FCT2R2.planner | 40 +++++++ 3 files changed, 149 insertions(+) create mode 100644 libreplan-business/src/test/java/org/libreplan/business/test/orders/imports/OrderImporterTest.java create mode 100644 scripts/mpxj-import/T1R1FCT2R2.mpp create mode 100644 scripts/mpxj-import/T1R1FCT2R2.planner diff --git a/libreplan-business/src/test/java/org/libreplan/business/test/orders/imports/OrderImporterTest.java b/libreplan-business/src/test/java/org/libreplan/business/test/orders/imports/OrderImporterTest.java new file mode 100644 index 000000000..1c87def49 --- /dev/null +++ b/libreplan-business/src/test/java/org/libreplan/business/test/orders/imports/OrderImporterTest.java @@ -0,0 +1,109 @@ +/* + * This file is part of LibrePlan + * + * Copyright (C) 2012 Igalia, S.L. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program 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 Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + */ + +package org.libreplan.business.test.orders.imports; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.libreplan.business.BusinessGlobalNames.BUSINESS_SPRING_CONFIG_FILE; +import static org.libreplan.business.test.BusinessGlobalNames.BUSINESS_SPRING_CONFIG_TEST_FILE; + +import java.io.FileInputStream; +import java.io.FileNotFoundException; +import java.io.InputStream; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.libreplan.business.orders.imports.ImportData; +import org.libreplan.business.orders.imports.OrderImporter; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; + +/** + * Tests for {@link OrderImport}.
+ * + * @author Alba Carro Pérez + */ +@RunWith(SpringJUnit4ClassRunner.class) +@ContextConfiguration(locations = { BUSINESS_SPRING_CONFIG_FILE, + BUSINESS_SPRING_CONFIG_TEST_FILE }) +public class OrderImporterTest { + + @Autowired + private OrderImporter orderImporter; + + @Test + public void testCreatingImportDataFromMPPFile() { + + String filename = System.getProperty("user.dir") + + "/../scripts/mpxj-import/T1R1FCT2R2.mpp"; + + InputStream file; + + try { + file = new FileInputStream(filename); + + ImportData importData = orderImporter.getImportData(file, filename); + + assertEquals(importData.name, "T1R1FCT2R2"); + + assertEquals(importData.tasks.size(), 2); + + assertEquals(importData.tasks.get(0).name, "Tarea1"); + + assertEquals(importData.tasks.get(1).name, "Tarea2"); + + assertEquals(importData.tasks.get(0).children.size(), 0); + + assertEquals(importData.tasks.get(1).children.size(), 0); + + } catch (FileNotFoundException e) { + assertTrue(false); + } + } + + @Test + public void testCreatingImportDataFromPlannerFile() { + + String filename = System.getProperty("user.dir") + + "/../scripts/mpxj-import/T1R1FCT2R2.planner"; + InputStream file; + + try { + file = new FileInputStream(filename); + + ImportData importData = orderImporter.getImportData(file, filename); + + assertEquals(importData.tasks.size(), 2); + + assertEquals(importData.tasks.get(0).name, "Tarea1"); + + assertEquals(importData.tasks.get(1).name, "Tarea2"); + + assertEquals(importData.tasks.get(0).children.size(), 0); + + assertEquals(importData.tasks.get(1).children.size(), 0); + + } catch (FileNotFoundException e) { + assertTrue(false); + } + } + +} diff --git a/scripts/mpxj-import/T1R1FCT2R2.mpp b/scripts/mpxj-import/T1R1FCT2R2.mpp new file mode 100644 index 0000000000000000000000000000000000000000..7ad09561dd3ab228bb58e4bcc0af380bf0917217 GIT binary patch literal 145920 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%0AU4-z9mTFR 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 XstV{r`Tlv(+>;1ZWwvlJ{13oSi%ozA literal 0 HcmV?d00001 diff --git a/scripts/mpxj-import/T1R1FCT2R2.planner b/scripts/mpxj-import/T1R1FCT2R2.planner new file mode 100644 index 000000000..783189956 --- /dev/null +++ b/scripts/mpxj-import/T1R1FCT2R2.planner @@ -0,0 +1,40 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +