diff options
author | mtaal | 2010-04-02 22:10:09 +0000 |
---|---|---|
committer | mtaal | 2010-04-02 22:10:09 +0000 |
commit | e53239dea8a619ee66cf84987fc085ffc73168d7 (patch) | |
tree | 88c1354e1674861ef7bd52c1657156bed1f90868 /tests | |
parent | 080247dfd069bc85ba1fb459d44aac2c493ddb40 (diff) | |
download | org.eclipse.emf.teneo-e53239dea8a619ee66cf84987fc085ffc73168d7.tar.gz org.eclipse.emf.teneo-e53239dea8a619ee66cf84987fc085ffc73168d7.tar.xz org.eclipse.emf.teneo-e53239dea8a619ee66cf84987fc085ffc73168d7.zip |
Enabled LazyCollectionUtils for EAV Lists
made iterators of extra lazy lists to use the LazyCollectionUtils
Diffstat (limited to 'tests')
6 files changed, 70 insertions, 5 deletions
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/AllTests.launch b/tests/org.eclipse.emf.teneo.hibernate.test/AllTests.launch index 816df972a..2aa3c9e31 100644 --- a/tests/org.eclipse.emf.teneo.hibernate.test/AllTests.launch +++ b/tests/org.eclipse.emf.teneo.hibernate.test/AllTests.launch @@ -10,7 +10,7 @@ <stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value=""/> <booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/> <stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/> -<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/> +<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit3"/> <stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="org.eclipse.emf.teneo.hibernate.test.AllTests"/> <stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.eclipse.emf.teneo.hibernate.test"/> <stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Xmx756m"/> diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.annotations/EAVExtraLazyAction_mysql_s_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.annotations/EAVExtraLazyAction_mysql_s_o_hibernate.hbm.xml new file mode 100644 index 000000000..5d314cc5e --- /dev/null +++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.annotations/EAVExtraLazyAction_mysql_s_o_hibernate.hbm.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> + +<hibernate-mapping auto-import="false"> + <subclass name="org.eclipse.emf.teneo.samples.emf.annotations.extralazy.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="Book"/> + <subclass name="org.eclipse.emf.teneo.samples.emf.annotations.extralazy.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="Writer"/> +</hibernate-mapping>
\ No newline at end of file diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/LibraryEAVAction_mysql_s_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/LibraryEAVAction_mysql_s_o_hibernate.hbm.xml new file mode 100644 index 000000000..9fd4372a1 --- /dev/null +++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/LibraryEAVAction_mysql_s_o_hibernate.hbm.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> + +<hibernate-mapping auto-import="false"> + <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType"> + <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param> + <param name="edatatype">BookCategoryObject</param> + </typedef> + <subclass name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="Book"/> + <subclass name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="Library"/> + <subclass name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="Writer"/> +</hibernate-mapping>
\ No newline at end of file diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/LibraryEAVExtraLazyAction_mysql_s_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/LibraryEAVExtraLazyAction_mysql_s_o_hibernate.hbm.xml new file mode 100644 index 000000000..9fd4372a1 --- /dev/null +++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/LibraryEAVExtraLazyAction_mysql_s_o_hibernate.hbm.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> + +<hibernate-mapping auto-import="false"> + <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType"> + <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param> + <param name="edatatype">BookCategoryObject</param> + </typedef> + <subclass name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="Book"/> + <subclass name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="Library"/> + <subclass name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="Writer"/> +</hibernate-mapping>
\ No newline at end of file diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/src/org/eclipse/emf/teneo/hibernate/test/emf/annotations/AllTests.java b/tests/org.eclipse.emf.teneo.hibernate.test/src/org/eclipse/emf/teneo/hibernate/test/emf/annotations/AllTests.java index 94a6f9085..010272342 100644 --- a/tests/org.eclipse.emf.teneo.hibernate.test/src/org/eclipse/emf/teneo/hibernate/test/emf/annotations/AllTests.java +++ b/tests/org.eclipse.emf.teneo.hibernate.test/src/org/eclipse/emf/teneo/hibernate/test/emf/annotations/AllTests.java @@ -54,7 +54,7 @@ import org.eclipse.emf.teneo.test.emf.annotations.VariousAction; * All tests * * @author <a href="mailto:mtaal@elver.org">Martin Taal</a> - * @version $Revision: 1.99 $ + * @version $Revision: 1.100 $ */ public class AllTests { @@ -62,12 +62,11 @@ public class AllTests { TestSuite suite = new MultiCfgTestSuite("Test for org.eclipse.emf.teneo.hibernate.test.emf.annotations", HibernateTestbed.instance().getConfigurations()); suite.addTestSuite(EAVExtraLazyAction.class); - + suite.addTestSuite(ExtraLazyAction.class); suite.addTestSuite(EAVMappingAllAction.class); suite.addTestSuite(EAVMappingAction.class); suite.addTestSuite(EAVCascadeDeleteAction.class); suite.addTestSuite(EMapEAVAction.class); - suite.addTestSuite(ExtraLazyAction.class); suite.addTestSuite(AnyAction.class); suite.addTestSuite(InheritanceAnnotationAction.class); suite.addTestSuite(EmbeddedAction.class); diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/src/org/eclipse/emf/teneo/hibernate/test/emf/annotations/ExtraLazyAction.java b/tests/org.eclipse.emf.teneo.hibernate.test/src/org/eclipse/emf/teneo/hibernate/test/emf/annotations/ExtraLazyAction.java index e3c342bdb..4435276a3 100755 --- a/tests/org.eclipse.emf.teneo.hibernate.test/src/org/eclipse/emf/teneo/hibernate/test/emf/annotations/ExtraLazyAction.java +++ b/tests/org.eclipse.emf.teneo.hibernate.test/src/org/eclipse/emf/teneo/hibernate/test/emf/annotations/ExtraLazyAction.java @@ -8,6 +8,8 @@ package org.eclipse.emf.teneo.hibernate.test.emf.annotations; +import java.util.Iterator; + import org.eclipse.emf.teneo.hibernate.LazyCollectionUtils; import org.eclipse.emf.teneo.mapping.elist.PersistableDelegateList; import org.eclipse.emf.teneo.samples.emf.annotations.extralazy.Book; @@ -21,7 +23,7 @@ import org.eclipse.emf.teneo.test.stores.TestStore; * Tests extra lazy fetch strategy. * * @author <a href="mailto:mtaal@elver.org">Martin Taal</a> - * @version $Revision: 1.2 $ + * @version $Revision: 1.3 $ */ public class ExtraLazyAction extends AbstractTestAction { @@ -108,6 +110,39 @@ public class ExtraLazyAction extends AbstractTestAction { store.store(b); store.commitTransaction(); } + + { + store.beginTransaction(); + Book b = store.getObject(Book.class); + final Iterator<?> iterator = LazyCollectionUtils.getPagedLoadingIterator(b.getAuthors(), 2); + final PersistableDelegateList<?> pList = (PersistableDelegateList<?>) b.getAuthors(); + final int size = b.getAuthors().size(); + int cnt = 0; + while (iterator.hasNext()) { + final Writer w = (Writer)iterator.next(); + assertTrue(w != null); + cnt++; + } + assertEquals(size, cnt); + assertFalse(pList.isInitialized()); + store.commitTransaction(); + } + { + store.beginTransaction(); + Book b = store.getObject(Book.class); + final Iterator<?> iterator = b.getAuthors().iterator(); + final PersistableDelegateList<?> pList = (PersistableDelegateList<?>) b.getAuthors(); + final int size = b.getAuthors().size(); + int cnt = 0; + while (iterator.hasNext()) { + final Writer w = (Writer)iterator.next(); + assertTrue(w != null); + cnt++; + } + assertEquals(size, cnt); + assertFalse(pList.isInitialized()); + store.commitTransaction(); + } } protected boolean isEAVMapped() { |