r1348 - in trunk/wikitty-api/src/test/java/org/nuiton/wikitty: . api entities
Author: echatellier Date: 2012-01-20 15:08:37 +0100 (Fri, 20 Jan 2012) New Revision: 1348 Url: http://nuiton.org/repositories/revision/wikitty/1348 Log: Remove "common" test (moved to specific classes) Added: trunk/wikitty-api/src/test/java/org/nuiton/wikitty/entities/ExtensionFactoryTest.java trunk/wikitty-api/src/test/java/org/nuiton/wikitty/entities/WikittyTest.java trunk/wikitty-api/src/test/java/org/nuiton/wikitty/entities/WikittyTreeNodeTest.java Removed: trunk/wikitty-api/src/test/java/org/nuiton/wikitty/api/CommonTest.java trunk/wikitty-api/src/test/java/org/nuiton/wikitty/api/ExtensionFactoryTest.java trunk/wikitty-api/src/test/java/org/nuiton/wikitty/entities/WikittyGenerationTest.java Modified: trunk/wikitty-api/src/test/java/org/nuiton/wikitty/WikittyClientAbstractTest.java trunk/wikitty-api/src/test/java/org/nuiton/wikitty/WikittyClientTest.java trunk/wikitty-api/src/test/java/org/nuiton/wikitty/entities/BusinessEntityImplTest.java trunk/wikitty-api/src/test/java/org/nuiton/wikitty/entities/WikittyExtensionTest.java Modified: trunk/wikitty-api/src/test/java/org/nuiton/wikitty/WikittyClientAbstractTest.java =================================================================== --- trunk/wikitty-api/src/test/java/org/nuiton/wikitty/WikittyClientAbstractTest.java 2012-01-20 11:13:40 UTC (rev 1347) +++ trunk/wikitty-api/src/test/java/org/nuiton/wikitty/WikittyClientAbstractTest.java 2012-01-20 14:08:37 UTC (rev 1348) @@ -201,31 +201,31 @@ protected void addManualExtension(WikittyClient client) { // create extension WikittyExtension movieExtension = ExtensionFactory.create("Movies", "1.0") - .addField("Name", WikittyTypes.STRING) - .addField("Author", WikittyTypes.STRING).maxOccur(Integer.MAX_VALUE) - .addField("Category", WikittyTypes.WIKITTY) - .addField("Year", WikittyTypes.STRING) + .addField("name", WikittyTypes.STRING) + .addField("author", WikittyTypes.STRING).maxOccur(Integer.MAX_VALUE) + .addField("category", WikittyTypes.WIKITTY) + .addField("year", WikittyTypes.STRING) .extension(); client.storeExtension(movieExtension); // create wikitty movies Wikitty dieHardMovie = new WikittyImpl(); dieHardMovie.addExtension(movieExtension); - dieHardMovie.setField("Movies", "Name", "Die hard 4"); - dieHardMovie.addToField("Movies", "Author", "Willis"); - dieHardMovie.addToField("Movies", "Year", "2009"); + dieHardMovie.setField("Movies", "name", "Die hard 4"); + dieHardMovie.addToField("Movies", "author", "Willis"); + dieHardMovie.addToField("Movies", "year", "2009"); Wikitty edgarMovie = new WikittyImpl(); edgarMovie.addExtension(movieExtension); - edgarMovie.setField("Movies", "Name", "J. Edgar"); - edgarMovie.addToField("Movies", "Author", "Eastwood"); - edgarMovie.addToField("Movies", "Year", "2011"); + edgarMovie.setField("Movies", "name", "J. Edgar"); + edgarMovie.addToField("Movies", "author", "Eastwood"); + edgarMovie.addToField("Movies", "year", "2011"); Wikitty dnrMovie = new WikittyImpl(); dnrMovie.addExtension(movieExtension); - dnrMovie.setField("Movies", "Name", "The Dark Knight Rises"); - dnrMovie.addToField("Movies", "Author", "Nolan"); - dnrMovie.addToField("Movies", "Year", "2012"); + dnrMovie.setField("Movies", "name", "The Dark Knight Rises"); + dnrMovie.addToField("Movies", "author", "Nolan"); + dnrMovie.addToField("Movies", "year", "2012"); client.store(dieHardMovie, edgarMovie); } Modified: trunk/wikitty-api/src/test/java/org/nuiton/wikitty/WikittyClientTest.java =================================================================== --- trunk/wikitty-api/src/test/java/org/nuiton/wikitty/WikittyClientTest.java 2012-01-20 11:13:40 UTC (rev 1347) +++ trunk/wikitty-api/src/test/java/org/nuiton/wikitty/WikittyClientTest.java 2012-01-20 14:08:37 UTC (rev 1348) @@ -25,19 +25,15 @@ package org.nuiton.wikitty; -import static org.junit.Assert.assertEquals; - import java.io.IOException; import org.junit.Assert; import org.junit.Test; -import org.nuiton.util.ApplicationConfig; -import org.nuiton.wikitty.addons.WikittyI18nImpl; import org.nuiton.wikitty.addons.WikittyI18nTestUtil; import org.nuiton.wikitty.addons.WikittyI18nUtil; import org.nuiton.wikitty.addons.WikittyImportExportService; -import org.nuiton.wikitty.addons.WikittyLabelUtil; import org.nuiton.wikitty.addons.WikittyImportExportService.FORMAT; +import org.nuiton.wikitty.addons.WikittyLabelUtil; import org.nuiton.wikitty.entities.Element; import org.nuiton.wikitty.entities.ExtensionFactory; import org.nuiton.wikitty.entities.Wikitty; @@ -52,8 +48,6 @@ import org.nuiton.wikitty.query.WikittyQueryMaker; import org.nuiton.wikitty.query.WikittyQueryParser; import org.nuiton.wikitty.query.WikittyQueryResult; -import org.nuiton.wikitty.search.PagedResult; -import org.nuiton.wikitty.services.WikittyServiceInMemory; import org.nuiton.wikitty.test.Category; import org.nuiton.wikitty.test.Product; @@ -311,6 +305,6 @@ wikittyClient.store(w); WikittyLabelUtil.addLabel(wikittyClient, id, "hello"); WikittyQueryResult<Wikitty> wikitties = WikittyLabelUtil.findAllByLabel(wikittyClient, "hello", 0, 1); - assertEquals(wikitties.get(0), w); + Assert.assertEquals(wikitties.get(0), w); } } Deleted: trunk/wikitty-api/src/test/java/org/nuiton/wikitty/api/CommonTest.java =================================================================== --- trunk/wikitty-api/src/test/java/org/nuiton/wikitty/api/CommonTest.java 2012-01-20 11:13:40 UTC (rev 1347) +++ trunk/wikitty-api/src/test/java/org/nuiton/wikitty/api/CommonTest.java 2012-01-20 14:08:37 UTC (rev 1348) @@ -1,454 +0,0 @@ -/* - * #%L - * Wikitty :: api - * - * $Id$ - * $HeadURL$ - * %% - * Copyright (C) 2009 - 2010 CodeLutin, Benjamin Poussin - * %% - * This program 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 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 General Lesser Public License for more details. - * - * You should have received a copy of the GNU General Lesser Public - * License along with this program. If not, see - * <http://www.gnu.org/licenses/lgpl-3.0.html>. - * #L% - */ -package org.nuiton.wikitty.api; - -import java.util.Arrays; -import java.util.Calendar; -import java.util.Date; -import java.util.HashMap; -import java.util.LinkedHashMap; -import java.util.List; -import java.util.Locale; -import java.util.Map; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.junit.Assert; -import org.junit.Test; -import org.nuiton.wikitty.entities.ExtensionFactory; -import org.nuiton.wikitty.entities.FieldType; -import org.nuiton.wikitty.entities.WikittyTypes; -import org.nuiton.wikitty.entities.WikittyTreeNode; -import org.nuiton.wikitty.entities.WikittyTreeNodeAbstract; -import org.nuiton.wikitty.entities.Wikitty; -import org.nuiton.wikitty.WikittyException; -import org.nuiton.wikitty.entities.WikittyExtension; -import org.nuiton.wikitty.entities.WikittyImpl; -import org.nuiton.wikitty.WikittyUtil; -import org.nuiton.wikitty.conform.StorageTest; - -/** - * Test Wikitty, Extensions, Field and FieldType through the Wikitty Object - * - * @author guillaumed - * - */ -public class CommonTest { - - private static Log log = LogFactory.getLog(CommonTest.class); - - private static String UNKNOWN = "unknown"; - - @Test - public void testWikittyId() throws Exception { - Wikitty w = new WikittyImpl(); - // as soon as a wikitty object is created, it got an ID. - Assert.assertNotNull("Wikitty should got an ID", w.getId() ); - - Wikitty w2 = new WikittyImpl( w.getId() ); - // two wikitty with a similar id are equals. - Assert.assertEquals("Wikitty with same ID must be equals", w, w2); - } - - @Test - public void testWikittyExtension() throws Exception { - - Wikitty wikitty = new WikittyImpl(); - - // null extension should be ignored - WikittyExtension ext = new WikittyExtension( "invalidExt", "1", null ); - wikitty.addExtension(ext); - // yes we want to handle empty extension - Assert.assertTrue( wikitty.hasExtension("invalidExt") ); - - // empty extension should be ignored (?) - ext = new WikittyExtension( "invalideExt2", "1", new LinkedHashMap<String, FieldType>() ); - wikitty.addExtension(ext); - Assert.assertFalse( wikitty.hasExtension("invalidExt2") ); - - // test requires extension - ext = new WikittyExtension( "master", "1", null); - wikitty.addExtension(ext); - Assert.assertTrue( wikitty.hasExtension("master") ); - - ext = new WikittyExtension( "slave", "1", null, "master", null); - wikitty.addExtension(ext); - Assert.assertTrue( wikitty.hasExtension("slave") ); - - ext = new WikittyExtension("badslave", "1", null, "nomaster", null); - try { - wikitty.addExtension(ext); - Assert.assertFalse(true); - } catch (Exception eee) { - // add extension that depend another not in wikitty must throw exception - Assert.assertTrue(true); - } - Assert.assertFalse( wikitty.hasExtension("badslave") ); - - // test data ... - String testExtName = "testExt"; - ext = ExtensionFactory.create(testExtName, "1") - .addField("fieldName0", WikittyTypes.NUMERIC) - .addField("fieldName1", WikittyTypes.STRING) - .addField("fieldName2", WikittyTypes.NUMERIC) - .extension(); - Wikitty w = new WikittyImpl(); - Assert.assertFalse( w.hasExtension(testExtName) ); - w.addExtension(ext); - Assert.assertTrue( w.hasExtension(testExtName) ); - for ( int i = 0; i < 3; i++ ) { - String fieldName = "fieldName" + i; - Assert.assertTrue( "Field " + fieldName + " not found" - , w.hasField(testExtName, fieldName) ); - } - - // test add an other extension ... - WikittyExtension ext2 = ExtensionFactory.create("otherExt", "1") - .addField("fieldName0", WikittyTypes.NUMERIC) - .addField("fieldName1", WikittyTypes.STRING) - .addField("fieldName2", WikittyTypes.NUMERIC) - .addField("fieldName3", WikittyTypes.NUMERIC) - .addField("fieldName4", WikittyTypes.NUMERIC) - .extension(); - - w.addExtension(ext2); - for ( int i = 0; i < 5; i++ ) { - String fieldName = "fieldName" + i; - if ( i < 3 ) { // fields in the first implem should be kept - Assert.assertTrue( "Field " + fieldName + " not found" - , w.hasField(testExtName, fieldName) ); - } - Assert.assertTrue( "Field " + fieldName + " not found", - w.hasField("otherExt", fieldName) ); - } - - } - - /** - * Test qu'une extension ne peut pas avoir de caracteres non alphanumeriques. - */ - @Test(expected=IllegalArgumentException.class) - public void testWikittyExtensionBadName() { - new WikittyExtension("invalid name", "1", null ); - } - - /** - * Test qu'une extension ne peut pas avoir de caracteres non alphanumeriques. - */ - @Test(expected=IllegalArgumentException.class) - public void testWikittyExtensionBadName2() { - WikittyExtension ext = new WikittyExtension(); - ext.setName("été"); - } - - /** - * Test qu'une extension ne peut pas avoir de caracteres non alphanumeriques. - */ - @Test(expected=IllegalArgumentException.class) - public void testWikittyExtensionBadName3() { - new WikittyExtension("test,test"); - } - - @Test - public void testWikittyExtensionCorrectFieldName() throws Exception { - ExtensionFactory.create("correctExtension", "1") - .addField("correctFieldName", WikittyTypes.NUMERIC).extension(); - } - - // Throw IllegalArgumentException because invalid character in field name - @Test(expected = IllegalArgumentException.class) - public void testWikittyExtensionIncorrectFieldName() throws Exception { - ExtensionFactory.create("incorrectExtension", "1") - .addField("incorrectFieldName#", WikittyTypes.NUMERIC).extension(); - } - - @Test - public void testFieldAssigment() throws Exception { - Wikitty w = createBasicWikitty(); - - // test assignment on a non-existing extension. - try { - w.setField(UNKNOWN, "fieldName", "fieldValue"); - Assert.fail("Should throw a runtime exception !"); - } catch (RuntimeException e) { - // OK ! - } - - // test assignment on a non-existing field. - try { - w.setField(StorageTest.EXTNAME, "non-existing-fieldName", "fieldValue"); - Assert.fail( "Should throw a runtime exception !" ); - } catch (RuntimeException e) { - // OK ! - } - - w.addExtension(StorageTest.EXT_TEST); - - // basic valid assignment ... - String stringValue = "A Test Value"; - w.setField(StorageTest.EXTNAME, "fieldName0", stringValue); - Assert.assertEquals(stringValue, w.getFieldAsString(StorageTest.EXTNAME, "fieldName0") ); - - int intValue = 123456; - w.setField(StorageTest.EXTNAME, "fieldName1", intValue); - Assert.assertEquals(intValue, w.getFieldAsInt(StorageTest.EXTNAME, "fieldName1") ); - - Date dateValue = new Date(); - w.setField(StorageTest.EXTNAME, "fieldName2", dateValue); - Assert.assertEquals(dateValue, w.getFieldAsDate(StorageTest.EXTNAME, "fieldName2") ); - - // null or empty assignment ... - for ( int i = 0; i < 3; i++ ) { - w.setField(StorageTest.EXTNAME, "fieldName" + i, null); - } - - } - - private Wikitty createBasicWikitty() { - WikittyExtension ext = ExtensionFactory.create(StorageTest.EXTNAME, "1") - .addField("name", WikittyTypes.STRING) - .extension(); - Wikitty w = new WikittyImpl(); - w.addExtension(ext); - w.setField(StorageTest.EXTNAME, "name", "foobar"); - return w; - } - - @Test - public void testFieldCastRules() throws Exception { - Wikitty w = createBasicWikitty(); - w.addExtension(StorageTest.EXT_TEST); - - // casted assignment ... - final String stringValue = "Hello"; - // test any object => string type (casted as its toString() value) - w.setField(StorageTest.EXTNAME, "fieldName0", new Object() { - public String toString() { - return stringValue; - } - }); - // test java.lang.Integer => int - w.setField(StorageTest.EXTNAME, "fieldName1", Integer.valueOf(123)); - Assert.assertEquals(123, w.getFieldAsInt(StorageTest.EXTNAME, "fieldName1") ); - // test String => int - w.setField(StorageTest.EXTNAME, "fieldName1", "123"); - Assert.assertEquals(123, w.getFieldAsInt(StorageTest.EXTNAME, "fieldName1") ); - // test String => Date - Calendar cal = Calendar.getInstance(Locale.ROOT); - cal.set(1982, 0, 23, 0, 0, 0); cal.set( Calendar.MILLISECOND, 0 ); - w.setField( StorageTest.EXTNAME, "fieldName2", WikittyUtil.formatDate(cal.getTime()) ); - Assert.assertEquals(cal.getTime(), w.getFieldAsDate(StorageTest.EXTNAME, "fieldName2") ); - } - - @Test - public void testFieldBoundsManagement() throws Exception { - String fieldName = "fieldName0"; - WikittyExtension ext = ExtensionFactory.create(StorageTest.EXTNAME, "1") - .addField(fieldName, WikittyTypes.NUMERIC) - .maxOccur(FieldType.NOLIMIT) - .extension(); - Wikitty w = new WikittyImpl(); - w.addExtension(ext); - - - // test setting a (primitive) value to the field ... - try { - w.setField(StorageTest.EXTNAME, fieldName, 123); - Assert.fail("setting an int to a list of int is forbidden !"); - } catch (WikittyException e) { - // OK - } - - // test adding elements to the field ... - for ( int i = 0; i < 10; i++ ) { - w.addToField(StorageTest.EXTNAME, fieldName, i); - } - int z = 0; - for ( int value : w.getFieldAsList(StorageTest.EXTNAME, fieldName, Integer.class) ) { - Assert.assertEquals( "element " + z + " failed", - z, value ); - z++; - } - - // test set a list as the field value ... - Integer[] listInt = new Integer[] {4, 2, 8, 9, 5, -12, Integer.MIN_VALUE, Integer.MAX_VALUE }; - w.setField( StorageTest.EXTNAME, fieldName, Arrays.asList(listInt) ); - z = 0; - for ( int value : w.getFieldAsList(StorageTest.EXTNAME, fieldName, Integer.class) ) { - Assert.assertEquals( listInt[z++].intValue(), value ); - } - - // test remove an element ... - w.removeFromField( StorageTest.EXTNAME, fieldName, Integer.MIN_VALUE ); - List<Integer> values = w.getFieldAsList(StorageTest.EXTNAME, fieldName, Integer.class); - z = 0; - for ( int value : w.getFieldAsList(StorageTest.EXTNAME, fieldName, Integer.class) ) { - Assert.assertEquals( - // on the last element, we expect MAX_VALUE because MIN_VALUE was deleted. - z == values.size() - 1 ? Integer.MAX_VALUE : listInt[z++].intValue() - , value ); - } - - // test clear field ... - w.clearField(StorageTest.EXTNAME, fieldName); - values = w.getFieldAsList(StorageTest.EXTNAME, fieldName, Integer.class); - Assert.assertTrue( values.isEmpty() ); - - } - - public static class PerfFieldAccesClass { - String stringValue; - int intValue; - Date dateValue; - - public String getStringValue() { - return stringValue; - } - - public void setStringValue(String stringValue) { - this.stringValue = stringValue; - } - - public void setIntValue(int intValue) { - this.intValue = intValue; - } - - public int getIntValue() { - return intValue; - } - - public void setDateValue(Date dateValue) { - this.dateValue = dateValue; - } - - public Date getDateValue() { - return dateValue; - } - - } - - @Test - public void testPerfFieldAccess() throws Exception { - int MAX = 100000; - - Map<String, Object> m = new HashMap<String, Object>(); - Wikitty w = createBasicWikitty(); - w.addExtension(StorageTest.EXT_TEST); - PerfFieldAccesClass z = new PerfFieldAccesClass(); - - long time = System.currentTimeMillis(); - for (int i=0; i<MAX; i++) { - // basic valid assignment ... - String stringValue = "A Test Value"; - m.put(StorageTest.EXTNAME+".fieldName0", stringValue); - - int intValue = 123456; - m.put(StorageTest.EXTNAME + ".fieldName1", intValue); - - Date dateValue = new Date(); - m.put(StorageTest.EXTNAME + ".fieldName2", dateValue); - } - long timeSetM = System.currentTimeMillis() - time; - - time = System.currentTimeMillis(); - String tmp = ""; - for (int i = 0; i < MAX; i++) { - String stringValue = (String)m.get(StorageTest.EXTNAME + ".fieldName0"); - - int intValue = (Integer) m.get(StorageTest.EXTNAME + ".fieldName1"); - - Date dateValue = (Date)m.get(StorageTest.EXTNAME + ".fieldName2"); - tmp = stringValue + intValue + dateValue; - } - long timeGetM = System.currentTimeMillis() - time; - - - time = System.currentTimeMillis(); - for (int i=0; i<MAX; i++) { - // basic valid assignment ... - String stringValue = "A Test Value"; - w.setField(StorageTest.EXTNAME, "fieldName0", stringValue); - - int intValue = 123456; - w.setField(StorageTest.EXTNAME, "fieldName1", intValue); - - w.setField(StorageTest.EXTNAME, "fieldName2", new Date()); - } - long timeSetW = System.currentTimeMillis() - time; - - time = System.currentTimeMillis(); - for (int i=0; i<MAX; i++) { - // basic valid assignment ... - String stringValue = w.getFieldAsString(StorageTest.EXTNAME, "fieldName0"); - - int intValue = w.getFieldAsInt(StorageTest.EXTNAME, "fieldName1"); - - Date dateValue = w.getFieldAsDate(StorageTest.EXTNAME, "fieldName2"); - tmp = stringValue + intValue + dateValue; - } - long timeGetW = System.currentTimeMillis() - time; - - time = System.currentTimeMillis(); - for (int i = 0; i < MAX; i++) { - String stringValue = "A Test Value"; - z.setStringValue(stringValue); - - int intValue = 123456; - z.setIntValue(intValue); - - Date dateValue = new Date(); - z.setDateValue(dateValue); - } - long timeSetZ = System.currentTimeMillis() - time; - - time = System.currentTimeMillis(); - for (int i = 0; i < MAX; i++) { - // basic valid assignment ... - String stringValue = z.getStringValue(); - - int intValue = z.getIntValue(); - - Date dateValue = z.getDateValue(); - tmp = stringValue + intValue + dateValue; - } - long timeGetZ = System.currentTimeMillis() - time; - - log.info("Time m set: " + timeSetM + " Time m get: " + timeGetM); - log.info("Time w set: " + timeSetW + " Time w get: " + timeGetW); - log.info("Time z set: " + timeSetZ + " Time z get: " + timeGetZ); - } - - /** - * Test que les entités générées sont dans les types attendus. - */ - @Test - public void testGeneratedExtensionType() { - - WikittyExtension wikittyExtension = WikittyTreeNodeAbstract.extensionWikittyTreeNode; - Assert.assertEquals(WikittyTypes.WIKITTY, wikittyExtension.getFieldType(WikittyTreeNode.FIELD_WIKITTYTREENODE_PARENT).getType()); - Assert.assertEquals(WikittyTypes.STRING, wikittyExtension.getFieldType(WikittyTreeNode.FIELD_WIKITTYTREENODE_NAME).getType()); - Assert.assertEquals(WikittyTypes.WIKITTY, wikittyExtension.getFieldType(WikittyTreeNode.FIELD_WIKITTYTREENODE_ATTACHMENT).getType()); - } -} Deleted: trunk/wikitty-api/src/test/java/org/nuiton/wikitty/api/ExtensionFactoryTest.java =================================================================== --- trunk/wikitty-api/src/test/java/org/nuiton/wikitty/api/ExtensionFactoryTest.java 2012-01-20 11:13:40 UTC (rev 1347) +++ trunk/wikitty-api/src/test/java/org/nuiton/wikitty/api/ExtensionFactoryTest.java 2012-01-20 14:08:37 UTC (rev 1348) @@ -1,71 +0,0 @@ -/* - * #%L - * Wikitty :: api - * - * $Id$ - * $HeadURL$ - * %% - * Copyright (C) 2009 - 2010 CodeLutin, Benjamin Poussin - * %% - * This program 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 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 General Lesser Public License for more details. - * - * You should have received a copy of the GNU General Lesser Public - * License along with this program. If not, see - * <http://www.gnu.org/licenses/lgpl-3.0.html>. - * #L% - */ -package org.nuiton.wikitty.api; - -import org.junit.Assert; -import org.junit.Test; -import org.nuiton.wikitty.entities.ExtensionFactory; -import org.nuiton.wikitty.entities.FieldType; -import org.nuiton.wikitty.entities.WikittyTypes; -import org.nuiton.wikitty.entities.WikittyExtension; - -public class ExtensionFactoryTest { - - @Test - public void testExtensionFactory() throws Exception { - WikittyExtension ext = ExtensionFactory.create("testExtension", "1.0") - .addField("name", WikittyTypes.STRING) - .notNull() - .addField("phoneNumbers", WikittyTypes.STRING) - .minOccur(2) - .maxOccur(10) - .addField("matricule", WikittyTypes.NUMERIC) - .unique() - .addField("fired", WikittyTypes.BOOLEAN) - .extension(); - - Assert.assertEquals("testExtension", ext.getName()); - Assert.assertEquals("1.0", ext.getVersion()); - checkField( ext, "name", WikittyTypes.STRING, 0, 1, false, true); - checkField( ext, "phoneNumbers", WikittyTypes.STRING, 2, 10, false, false); - checkField( ext, "matricule", WikittyTypes.NUMERIC, 0, 1, true, false); - checkField( ext, "fired", WikittyTypes.BOOLEAN, 0, 1, false, false); - - } - - private void checkField( WikittyExtension ext, String fieldName, WikittyTypes type, - int min, int max, boolean unique, boolean notNull) { - FieldType fieldType = ext.getFieldType(fieldName); - String str = "Checking " + ext.getName() + "." + fieldName + " field..."; - Assert.assertNotNull(str, fieldType ); - Assert.assertEquals(str, type, fieldType.getType()); - Assert.assertEquals(str, min, fieldType.getLowerBound()); - Assert.assertEquals(str, max, fieldType.getUpperBound()); - Assert.assertEquals(str, unique, fieldType.isUnique()); - Assert.assertEquals(str, notNull, fieldType.isNotNull()); - } - - -} Modified: trunk/wikitty-api/src/test/java/org/nuiton/wikitty/entities/BusinessEntityImplTest.java =================================================================== --- trunk/wikitty-api/src/test/java/org/nuiton/wikitty/entities/BusinessEntityImplTest.java 2012-01-20 11:13:40 UTC (rev 1347) +++ trunk/wikitty-api/src/test/java/org/nuiton/wikitty/entities/BusinessEntityImplTest.java 2012-01-20 14:08:37 UTC (rev 1348) @@ -5,7 +5,7 @@ * $Id$ * $HeadURL$ * %% - * Copyright (C) 2009 - 2010 CodeLutin, Benjamin Poussin + * Copyright (C) 2009 - 2012 CodeLutin, Benjamin Poussin, Chatellier Eric * %% * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as Copied: trunk/wikitty-api/src/test/java/org/nuiton/wikitty/entities/ExtensionFactoryTest.java (from rev 1328, trunk/wikitty-api/src/test/java/org/nuiton/wikitty/api/ExtensionFactoryTest.java) =================================================================== --- trunk/wikitty-api/src/test/java/org/nuiton/wikitty/entities/ExtensionFactoryTest.java (rev 0) +++ trunk/wikitty-api/src/test/java/org/nuiton/wikitty/entities/ExtensionFactoryTest.java 2012-01-20 14:08:37 UTC (rev 1348) @@ -0,0 +1,68 @@ +/* + * #%L + * Wikitty :: api + * + * $Id$ + * $HeadURL$ + * %% + * Copyright (C) 2009 - 2012 CodeLutin, Benjamin Poussin, Chatellier Eric + * %% + * This program 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 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 General Lesser Public License for more details. + * + * You should have received a copy of the GNU General Lesser Public + * License along with this program. If not, see + * <http://www.gnu.org/licenses/lgpl-3.0.html>. + * #L% + */ +package org.nuiton.wikitty.entities; + +import org.junit.Assert; +import org.junit.Test; +import org.nuiton.wikitty.entities.ExtensionFactory; +import org.nuiton.wikitty.entities.FieldType; +import org.nuiton.wikitty.entities.WikittyTypes; +import org.nuiton.wikitty.entities.WikittyExtension; + +public class ExtensionFactoryTest { + + @Test + public void testExtensionFactory() throws Exception { + WikittyExtension ext = ExtensionFactory.create("testExtension", "1.0") + .addField("name", WikittyTypes.STRING) + .notNull() + .addField("phoneNumbers", WikittyTypes.STRING) + .minOccur(2) + .maxOccur(10) + .addField("matricule", WikittyTypes.NUMERIC) + .unique() + .addField("fired", WikittyTypes.BOOLEAN) + .extension(); + + Assert.assertEquals("testExtension", ext.getName()); + Assert.assertEquals("1.0", ext.getVersion()); + checkField( ext, "name", WikittyTypes.STRING, 0, 1, false, true); + checkField( ext, "phoneNumbers", WikittyTypes.STRING, 2, 10, false, false); + checkField( ext, "matricule", WikittyTypes.NUMERIC, 0, 1, true, false); + checkField( ext, "fired", WikittyTypes.BOOLEAN, 0, 1, false, false); + } + + protected void checkField( WikittyExtension ext, String fieldName, WikittyTypes type, + int min, int max, boolean unique, boolean notNull) { + FieldType fieldType = ext.getFieldType(fieldName); + String str = "Checking " + ext.getName() + "." + fieldName + " field..."; + Assert.assertNotNull(str, fieldType ); + Assert.assertEquals(str, type, fieldType.getType()); + Assert.assertEquals(str, min, fieldType.getLowerBound()); + Assert.assertEquals(str, max, fieldType.getUpperBound()); + Assert.assertEquals(str, unique, fieldType.isUnique()); + Assert.assertEquals(str, notNull, fieldType.isNotNull()); + } +} Modified: trunk/wikitty-api/src/test/java/org/nuiton/wikitty/entities/WikittyExtensionTest.java =================================================================== --- trunk/wikitty-api/src/test/java/org/nuiton/wikitty/entities/WikittyExtensionTest.java 2012-01-20 11:13:40 UTC (rev 1347) +++ trunk/wikitty-api/src/test/java/org/nuiton/wikitty/entities/WikittyExtensionTest.java 2012-01-20 14:08:37 UTC (rev 1348) @@ -5,7 +5,7 @@ * $Id$ * $HeadURL$ * %% - * Copyright (C) 2009 - 2010 CodeLutin, Benjamin Poussin + * Copyright (C) 2009 - 2012 CodeLutin, Benjamin Poussin, Chatellier Eric * %% * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as @@ -25,13 +25,12 @@ package org.nuiton.wikitty.entities; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; import org.junit.Assert; import org.junit.Test; /** - * + * Test sur les wikitty extensions. + * * @author poussin * @version $Revision$ * @@ -40,9 +39,6 @@ */ public class WikittyExtensionTest { - /** to use log facility, just put in your code: log.info(\"...\"); */ - static private Log log = LogFactory.getLog(WikittyExtensionTest.class); - @Test public void extractExtensionName() throws Exception { String extName = "MonExtension"; @@ -52,7 +48,7 @@ String extNameToTest = WikittyExtension.extractExtensionName(fq); Assert.assertEquals(extName, extNameToTest); } - + @Test public void extractFieldName() throws Exception { String extName = "MonExtension"; @@ -62,4 +58,29 @@ String fieldNameToTest = WikittyExtension.extractFieldName(fq); Assert.assertEquals(fieldName, fieldNameToTest); } + + /** + * Test qu'une extension ne peut pas avoir de caracteres non alphanumeriques. + */ + @Test(expected=IllegalArgumentException.class) + public void testWikittyExtensionBadName() { + new WikittyExtension("invalid name", "1", null ); + } + + /** + * Test qu'une extension ne peut pas avoir de caracteres non alphanumeriques. + */ + @Test(expected=IllegalArgumentException.class) + public void testWikittyExtensionBadName2() { + WikittyExtension ext = new WikittyExtension(); + ext.setName("été"); + } + + /** + * Test qu'une extension ne peut pas avoir de caracteres non alphanumeriques. + */ + @Test(expected=IllegalArgumentException.class) + public void testWikittyExtensionBadName3() { + new WikittyExtension("test,test"); + } } Deleted: trunk/wikitty-api/src/test/java/org/nuiton/wikitty/entities/WikittyGenerationTest.java =================================================================== --- trunk/wikitty-api/src/test/java/org/nuiton/wikitty/entities/WikittyGenerationTest.java 2012-01-20 11:13:40 UTC (rev 1347) +++ trunk/wikitty-api/src/test/java/org/nuiton/wikitty/entities/WikittyGenerationTest.java 2012-01-20 14:08:37 UTC (rev 1348) @@ -1,54 +0,0 @@ -/* - * #%L - * - * - * $Id$ - * $HeadURL$ - * %% - * Copyright (C) 2011 Codelutin, Chatellier Eric - * %% - * This program 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 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 General Lesser Public License for more details. - * - * You should have received a copy of the GNU General Lesser Public - * License along with this program. If not, see - * <http://www.gnu.org/licenses/lgpl-3.0.html>. - * #L% - */ - -package org.nuiton.wikitty.entities; - -import org.junit.Ignore; -import org.junit.Test; - -/** - * Test que la generation est celle attendues. - * - * Principalement provenant du modèle de test (src/test/xmi). - * - * @author chatellier - * @version $Revision$ - * - * Last update : $Date$ - * By : $Author$ - */ -@Ignore -public class WikittyGenerationTest { - - /** - * Utilise seulement des entities pour voir si certains attributs ou - * methodes particulières sont bien présentes. - */ - @Test - public void testModelEntitiesCompilation() { - //Pegasus pegasus = new PegasusImpl(); - //String pegasusRace = pegasus.getRaceFromPegasus(); - } -} Added: trunk/wikitty-api/src/test/java/org/nuiton/wikitty/entities/WikittyTest.java =================================================================== --- trunk/wikitty-api/src/test/java/org/nuiton/wikitty/entities/WikittyTest.java (rev 0) +++ trunk/wikitty-api/src/test/java/org/nuiton/wikitty/entities/WikittyTest.java 2012-01-20 14:08:37 UTC (rev 1348) @@ -0,0 +1,432 @@ +/* + * #%L + * + * + * $Id$ + * $HeadURL$ + * %% + * Copyright (C) 2012 Codelutin, Chatellier Eric + * %% + * This program 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 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 General Lesser Public License for more details. + * + * You should have received a copy of the GNU General Lesser Public + * License along with this program. If not, see + * <http://www.gnu.org/licenses/lgpl-3.0.html>. + * #L% + */ + +package org.nuiton.wikitty.entities; + +import java.util.Arrays; +import java.util.Calendar; +import java.util.Date; +import java.util.HashMap; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Locale; +import java.util.Map; + +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.junit.Assert; +import org.junit.Test; +import org.nuiton.wikitty.WikittyException; +import org.nuiton.wikitty.WikittyUtil; +import org.nuiton.wikitty.conform.StorageTest; + +/** + * Tests on wikitty object only. + * + * @author chatellier + * @version $Revision$ + * + * Last update : $Date$ + * By : $Author$ + */ +public class WikittyTest { + + private final static Log log = LogFactory.getLog(WikittyTest.class); + + protected static final String EXTNAME = "wikittyExt"; + protected static final String EXTREQUIRED = "wikittyRequired"; + protected static final String EXTREQUIRES = "wikittyRequires"; + + //protected static final WikittyExtension EXT_REQUIRED = + // createExtension(EXTREQUIRED, null); + + //protected static final WikittyExtension EXT_REQUIRES = + // createExtension(EXTREQUIRES, EXTREQUIRED); + + protected static final WikittyExtension EXT_TEST = + createExtension(EXTNAME, null, + new FieldType(WikittyTypes.STRING, 0, 1), + new FieldType(WikittyTypes.NUMERIC, 1, 1), + new FieldType(WikittyTypes.DATE, 1, 1) + ); + + protected static WikittyExtension createExtension(String extName, String requires, + FieldType... types) { + LinkedHashMap<String, FieldType> fieldsMap = new LinkedHashMap<String, FieldType>(); + for ( int i = 0; i < types.length; i++ ) { + fieldsMap.put( "fieldName" + i, types[i] ); + } + return new WikittyExtension(extName, "1", null, requires, fieldsMap); + } + + /** + * Create a wikitty instance used in current test. + * + * @return valid wikitty + */ + protected Wikitty createBasicWikitty() { + WikittyExtension ext = ExtensionFactory.create(EXTNAME, "1") + .addField("name", WikittyTypes.STRING) + .extension(); + Wikitty w = new WikittyImpl(); + w.addExtension(ext); + w.setField(EXTNAME, "name", "foobar"); + return w; + } + + /** + * Wikitty id must never be null. + */ + @Test + public void testWikittyId() { + Wikitty w = new WikittyImpl(); + // as soon as a wikitty object is created, it got an ID. + Assert.assertNotNull("Wikitty should got an ID", w.getId() ); + + Wikitty w2 = new WikittyImpl( w.getId() ); + // two wikitty with a similar id are equals. + Assert.assertEquals("Wikitty with same ID must be equals", w, w2); + } + + /** + * Test sur les extensions d'un wikitty. + */ + @Test + public void testWikittyExtension() { + + Wikitty wikitty = new WikittyImpl(); + + // null extension should be ignored + WikittyExtension ext = new WikittyExtension( "invalidExt", "1", null ); + wikitty.addExtension(ext); + // yes we want to handle empty extension + Assert.assertTrue( wikitty.hasExtension("invalidExt") ); + + // empty extension should be ignored (?) + ext = new WikittyExtension( "invalideExt2", "1", new LinkedHashMap<String, FieldType>() ); + wikitty.addExtension(ext); + Assert.assertFalse( wikitty.hasExtension("invalidExt2") ); + + // test requires extension + ext = new WikittyExtension( "master", "1", null); + wikitty.addExtension(ext); + Assert.assertTrue( wikitty.hasExtension("master") ); + + ext = new WikittyExtension( "slave", "1", null, "master", null); + wikitty.addExtension(ext); + Assert.assertTrue( wikitty.hasExtension("slave") ); + + ext = new WikittyExtension("badslave", "1", null, "nomaster", null); + try { + wikitty.addExtension(ext); + Assert.assertFalse(true); + } catch (Exception eee) { + // add extension that depend another not in wikitty must throw exception + Assert.assertTrue(true); + } + Assert.assertFalse( wikitty.hasExtension("badslave") ); + + // test data ... + String testExtName = "testExt"; + ext = ExtensionFactory.create(testExtName, "1") + .addField("fieldName0", WikittyTypes.NUMERIC) + .addField("fieldName1", WikittyTypes.STRING) + .addField("fieldName2", WikittyTypes.NUMERIC) + .extension(); + Wikitty w = new WikittyImpl(); + Assert.assertFalse( w.hasExtension(testExtName) ); + w.addExtension(ext); + Assert.assertTrue( w.hasExtension(testExtName) ); + for ( int i = 0; i < 3; i++ ) { + String fieldName = "fieldName" + i; + Assert.assertTrue( "Field " + fieldName + " not found" + , w.hasField(testExtName, fieldName) ); + } + + // test add an other extension ... + WikittyExtension ext2 = ExtensionFactory.create("otherExt", "1") + .addField("fieldName0", WikittyTypes.NUMERIC) + .addField("fieldName1", WikittyTypes.STRING) + .addField("fieldName2", WikittyTypes.NUMERIC) + .addField("fieldName3", WikittyTypes.NUMERIC) + .addField("fieldName4", WikittyTypes.NUMERIC) + .extension(); + + w.addExtension(ext2); + for ( int i = 0; i < 5; i++ ) { + String fieldName = "fieldName" + i; + if ( i < 3 ) { // fields in the first implem should be kept + Assert.assertTrue( "Field " + fieldName + " not found" + , w.hasField(testExtName, fieldName) ); + } + Assert.assertTrue( "Field " + fieldName + " not found", + w.hasField("otherExt", fieldName) ); + } + } + + @Test + public void testFieldAssigment() throws Exception { + Wikitty w = createBasicWikitty(); + + // test assignment on a non-existing extension. + try { + w.setField("UNKNOWN", "fieldName", "fieldValue"); + Assert.fail("Should throw a runtime exception !"); + } catch (RuntimeException e) { + // OK ! + } + + // test assignment on a non-existing field. + try { + w.setField(EXTNAME, "non-existing-fieldName", "fieldValue"); + Assert.fail( "Should throw a runtime exception !" ); + } catch (RuntimeException e) { + // OK ! + } + + w.addExtension(EXT_TEST); + + // basic valid assignment ... + String stringValue = "A Test Value"; + w.setField(EXTNAME, "fieldName0", stringValue); + Assert.assertEquals(stringValue, w.getFieldAsString(EXTNAME, "fieldName0") ); + + int intValue = 123456; + w.setField(EXTNAME, "fieldName1", intValue); + Assert.assertEquals(intValue, w.getFieldAsInt(EXTNAME, "fieldName1") ); + + Date dateValue = new Date(); + w.setField(EXTNAME, "fieldName2", dateValue); + Assert.assertEquals(dateValue, w.getFieldAsDate(EXTNAME, "fieldName2") ); + + // null or empty assignment ... + for ( int i = 0; i < 3; i++ ) { + w.setField(EXTNAME, "fieldName" + i, null); + } + } + + @Test + public void testFieldCastRules() throws Exception { + Wikitty w = createBasicWikitty(); + w.addExtension(StorageTest.EXT_TEST); + + // casted assignment ... + final String stringValue = "Hello"; + // test any object => string type (casted as its toString() value) + w.setField(StorageTest.EXTNAME, "fieldName0", new Object() { + public String toString() { + return stringValue; + } + }); + // test java.lang.Integer => int + w.setField(StorageTest.EXTNAME, "fieldName1", Integer.valueOf(123)); + Assert.assertEquals(123, w.getFieldAsInt(StorageTest.EXTNAME, "fieldName1") ); + // test String => int + w.setField(StorageTest.EXTNAME, "fieldName1", "123"); + Assert.assertEquals(123, w.getFieldAsInt(StorageTest.EXTNAME, "fieldName1") ); + // test String => Date + Calendar cal = Calendar.getInstance(Locale.ROOT); + cal.set(1982, 0, 23, 0, 0, 0); cal.set( Calendar.MILLISECOND, 0 ); + w.setField( StorageTest.EXTNAME, "fieldName2", WikittyUtil.formatDate(cal.getTime()) ); + Assert.assertEquals(cal.getTime(), w.getFieldAsDate(StorageTest.EXTNAME, "fieldName2") ); + } + + @Test + public void testFieldBoundsManagement() throws Exception { + String fieldName = "fieldName0"; + WikittyExtension ext = ExtensionFactory.create(StorageTest.EXTNAME, "1") + .addField(fieldName, WikittyTypes.NUMERIC) + .maxOccur(FieldType.NOLIMIT) + .extension(); + Wikitty w = new WikittyImpl(); + w.addExtension(ext); + + + // test setting a (primitive) value to the field ... + try { + w.setField(StorageTest.EXTNAME, fieldName, 123); + Assert.fail("setting an int to a list of int is forbidden !"); + } catch (WikittyException e) { + // OK + } + + // test adding elements to the field ... + for ( int i = 0; i < 10; i++ ) { + w.addToField(StorageTest.EXTNAME, fieldName, i); + } + int z = 0; + for ( int value : w.getFieldAsList(StorageTest.EXTNAME, fieldName, Integer.class) ) { + Assert.assertEquals( "element " + z + " failed", + z, value ); + z++; + } + + // test set a list as the field value ... + Integer[] listInt = new Integer[] {4, 2, 8, 9, 5, -12, Integer.MIN_VALUE, Integer.MAX_VALUE }; + w.setField( StorageTest.EXTNAME, fieldName, Arrays.asList(listInt) ); + z = 0; + for ( int value : w.getFieldAsList(StorageTest.EXTNAME, fieldName, Integer.class) ) { + Assert.assertEquals( listInt[z++].intValue(), value ); + } + + // test remove an element ... + w.removeFromField( StorageTest.EXTNAME, fieldName, Integer.MIN_VALUE ); + List<Integer> values = w.getFieldAsList(StorageTest.EXTNAME, fieldName, Integer.class); + z = 0; + for ( int value : w.getFieldAsList(StorageTest.EXTNAME, fieldName, Integer.class) ) { + Assert.assertEquals( + // on the last element, we expect MAX_VALUE because MIN_VALUE was deleted. + z == values.size() - 1 ? Integer.MAX_VALUE : listInt[z++].intValue() + , value ); + } + + // test clear field ... + w.clearField(StorageTest.EXTNAME, fieldName); + values = w.getFieldAsList(StorageTest.EXTNAME, fieldName, Integer.class); + Assert.assertTrue( values.isEmpty() ); + } + + public static class PerfFieldAccesClass { + String stringValue; + int intValue; + Date dateValue; + + public String getStringValue() { + return stringValue; + } + + public void setStringValue(String stringValue) { + this.stringValue = stringValue; + } + + public void setIntValue(int intValue) { + this.intValue = intValue; + } + + public int getIntValue() { + return intValue; + } + + public void setDateValue(Date dateValue) { + this.dateValue = dateValue; + } + + public Date getDateValue() { + return dateValue; + } + + } + + @Test + public void testPerfFieldAccess() throws Exception { + int MAX = 100000; + + Map<String, Object> m = new HashMap<String, Object>(); + Wikitty w = createBasicWikitty(); + w.addExtension(StorageTest.EXT_TEST); + PerfFieldAccesClass z = new PerfFieldAccesClass(); + + long time = System.currentTimeMillis(); + for (int i=0; i<MAX; i++) { + // basic valid assignment ... + String stringValue = "A Test Value"; + m.put(StorageTest.EXTNAME+".fieldName0", stringValue); + + int intValue = 123456; + m.put(StorageTest.EXTNAME + ".fieldName1", intValue); + + Date dateValue = new Date(); + m.put(StorageTest.EXTNAME + ".fieldName2", dateValue); + } + long timeSetM = System.currentTimeMillis() - time; + + time = System.currentTimeMillis(); + String tmp = ""; + for (int i = 0; i < MAX; i++) { + String stringValue = (String)m.get(StorageTest.EXTNAME + ".fieldName0"); + + int intValue = (Integer) m.get(StorageTest.EXTNAME + ".fieldName1"); + + Date dateValue = (Date)m.get(StorageTest.EXTNAME + ".fieldName2"); + tmp = stringValue + intValue + dateValue; + } + long timeGetM = System.currentTimeMillis() - time; + + + time = System.currentTimeMillis(); + for (int i=0; i<MAX; i++) { + // basic valid assignment ... + String stringValue = "A Test Value"; + w.setField(StorageTest.EXTNAME, "fieldName0", stringValue); + + int intValue = 123456; + w.setField(StorageTest.EXTNAME, "fieldName1", intValue); + + w.setField(StorageTest.EXTNAME, "fieldName2", new Date()); + } + long timeSetW = System.currentTimeMillis() - time; + + time = System.currentTimeMillis(); + for (int i=0; i<MAX; i++) { + // basic valid assignment ... + String stringValue = w.getFieldAsString(StorageTest.EXTNAME, "fieldName0"); + + int intValue = w.getFieldAsInt(StorageTest.EXTNAME, "fieldName1"); + + Date dateValue = w.getFieldAsDate(StorageTest.EXTNAME, "fieldName2"); + tmp = stringValue + intValue + dateValue; + } + long timeGetW = System.currentTimeMillis() - time; + + time = System.currentTimeMillis(); + for (int i = 0; i < MAX; i++) { + String stringValue = "A Test Value"; + z.setStringValue(stringValue); + + int intValue = 123456; + z.setIntValue(intValue); + + Date dateValue = new Date(); + z.setDateValue(dateValue); + } + long timeSetZ = System.currentTimeMillis() - time; + + time = System.currentTimeMillis(); + for (int i = 0; i < MAX; i++) { + // basic valid assignment ... + String stringValue = z.getStringValue(); + + int intValue = z.getIntValue(); + + Date dateValue = z.getDateValue(); + tmp = stringValue + intValue + dateValue; + } + long timeGetZ = System.currentTimeMillis() - time; + + log.info("Time m set: " + timeSetM + " Time m get: " + timeGetM); + log.info("Time w set: " + timeSetW + " Time w get: " + timeGetW); + log.info("Time z set: " + timeSetZ + " Time z get: " + timeGetZ); + } +} Property changes on: trunk/wikitty-api/src/test/java/org/nuiton/wikitty/entities/WikittyTest.java ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision HeadURL Added: trunk/wikitty-api/src/test/java/org/nuiton/wikitty/entities/WikittyTreeNodeTest.java =================================================================== --- trunk/wikitty-api/src/test/java/org/nuiton/wikitty/entities/WikittyTreeNodeTest.java (rev 0) +++ trunk/wikitty-api/src/test/java/org/nuiton/wikitty/entities/WikittyTreeNodeTest.java 2012-01-20 14:08:37 UTC (rev 1348) @@ -0,0 +1,52 @@ +/* + * #%L + * + * + * $Id$ + * $HeadURL$ + * %% + * Copyright (C) 2012 Codelutin, Chatellier Eric + * %% + * This program 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 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 General Lesser Public License for more details. + * + * You should have received a copy of the GNU General Lesser Public + * License along with this program. If not, see + * <http://www.gnu.org/licenses/lgpl-3.0.html>. + * #L% + */ + +package org.nuiton.wikitty.entities; + +import org.junit.Assert; +import org.junit.Test; + +/** + * Test on generated {@link WikittyTreeNode} class. + * + * @author chatellier + * @version $Revision$ + * + * Last update : $Date$ + * By : $Author$ + */ +public class WikittyTreeNodeTest { + + /** + * Test que les entités générées sont dans les types attendus. + */ + @Test + public void testGeneratedExtensionType() { + WikittyExtension wikittyExtension = WikittyTreeNodeAbstract.extensionWikittyTreeNode; + Assert.assertEquals(WikittyTypes.WIKITTY, wikittyExtension.getFieldType(WikittyTreeNode.FIELD_WIKITTYTREENODE_PARENT).getType()); + Assert.assertEquals(WikittyTypes.STRING, wikittyExtension.getFieldType(WikittyTreeNode.FIELD_WIKITTYTREENODE_NAME).getType()); + Assert.assertEquals(WikittyTypes.WIKITTY, wikittyExtension.getFieldType(WikittyTreeNode.FIELD_WIKITTYTREENODE_ATTACHMENT).getType()); + } +} Property changes on: trunk/wikitty-api/src/test/java/org/nuiton/wikitty/entities/WikittyTreeNodeTest.java ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision HeadURL
participants (1)
-
echatellier@users.nuiton.org