From: Richard B. <rb...@us...> - 2004-12-21 22:00:12
|
Update of /cvsroot/jcframework/Nunit/InheritedClasses In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29305/InheritedClasses Modified Files: AtomsFrameworkTests.vb AutoIdTests.vb ManyToManyTests.vb MultiRetrieveTests.vb RetrieveCriteriaTests.vb SharedTests.vb SuperClassTests.vb tblAtoKClasses.vb Log Message: New tests for collection events and validation for interface based persistence Index: tblAtoKClasses.vb =================================================================== RCS file: /cvsroot/jcframework/Nunit/InheritedClasses/tblAtoKClasses.vb,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- tblAtoKClasses.vb 21 Dec 2004 08:52:46 -0000 1.3 +++ tblAtoKClasses.vb 21 Dec 2004 22:00:01 -0000 1.4 @@ -43,10 +43,12 @@ Public Property C() As C Get - 'If _c Is Nothing Then - '_c = New C - '_c.OIDValue = _cOID - '_c.Retrieve() + 'Retrieving manually when we have an association set to autoretrieve can produce + 'unpredictable results. + 'If _c Is Nothing AndAlso _cOID <> String.Empty Then + ' _c = New C + ' _c.OIDValue = _cOID + ' _c.Retrieve() 'End If Return _c End Get Index: SharedTests.vb =================================================================== RCS file: /cvsroot/jcframework/Nunit/InheritedClasses/SharedTests.vb,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- SharedTests.vb 1 Nov 2004 21:27:10 -0000 1.4 +++ SharedTests.vb 21 Dec 2004 22:00:01 -0000 1.5 @@ -9,7 +9,7 @@ Dim sp As SharedParent <TestFixtureSetUp()> Public Sub Init() - Environment.CurrentDirectory = "C:\Projects\MMM\Nunit_AtomsFramework" + Environment.CurrentDirectory = System.AppDomain.CurrentDomain.BaseDirectory Dim retry As Boolean = True While retry = True Try Index: ManyToManyTests.vb =================================================================== RCS file: /cvsroot/jcframework/Nunit/InheritedClasses/ManyToManyTests.vb,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- ManyToManyTests.vb 25 Oct 2004 07:14:15 -0000 1.1 +++ ManyToManyTests.vb 21 Dec 2004 22:00:01 -0000 1.2 @@ -12,7 +12,7 @@ Private c As CCursor <TestFixtureSetUp()> Public Sub Init() - Environment.CurrentDirectory = "C:\Projects\MMM\Nunit_AtomsFramework" + Environment.CurrentDirectory = System.AppDomain.CurrentDomain.BaseDirectory Dim retry As Boolean = True While retry = True Try Index: AutoIdTests.vb =================================================================== RCS file: /cvsroot/jcframework/Nunit/InheritedClasses/AutoIdTests.vb,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- AutoIdTests.vb 17 Dec 2004 03:27:49 -0000 1.1 +++ AutoIdTests.vb 21 Dec 2004 22:00:01 -0000 1.2 @@ -11,7 +11,7 @@ Private c As CCursor <TestFixtureSetUp()> Public Sub Init() - Environment.CurrentDirectory = "C:\Projects\MMM\Nunit_AtomsFramework" + Environment.CurrentDirectory = System.AppDomain.CurrentDomain.BaseDirectory Dim retry As Boolean = True While retry = True Try Index: RetrieveCriteriaTests.vb =================================================================== RCS file: /cvsroot/jcframework/Nunit/InheritedClasses/RetrieveCriteriaTests.vb,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- RetrieveCriteriaTests.vb 28 Oct 2004 00:17:28 -0000 1.3 +++ RetrieveCriteriaTests.vb 21 Dec 2004 22:00:01 -0000 1.4 @@ -11,7 +11,7 @@ Private c As CCursor <TestFixtureSetUp()> Public Sub Init() - Environment.CurrentDirectory = "C:\Projects\MMM\Nunit_AtomsFramework" + Environment.CurrentDirectory = System.AppDomain.CurrentDomain.BaseDirectory Dim retry As Boolean = True While retry = True Try Index: MultiRetrieveTests.vb =================================================================== RCS file: /cvsroot/jcframework/Nunit/InheritedClasses/MultiRetrieveTests.vb,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- MultiRetrieveTests.vb 19 Dec 2004 22:44:46 -0000 1.2 +++ MultiRetrieveTests.vb 21 Dec 2004 22:00:01 -0000 1.3 @@ -10,7 +10,7 @@ Private c As CCursor <TestFixtureSetUp()> Public Sub Init() - Environment.CurrentDirectory = "C:\Projects\MMM\Nunit_AtomsFramework" + Environment.CurrentDirectory = System.AppDomain.CurrentDomain.BaseDirectory Dim retry As Boolean = True While retry = True Try Index: SuperClassTests.vb =================================================================== RCS file: /cvsroot/jcframework/Nunit/InheritedClasses/SuperClassTests.vb,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- SuperClassTests.vb 21 Dec 2004 08:52:46 -0000 1.3 +++ SuperClassTests.vb 21 Dec 2004 22:00:01 -0000 1.4 @@ -8,7 +8,7 @@ Private pbroker As CPersistenceBroker <TestFixtureSetUp()> Public Sub Init() - Environment.CurrentDirectory = "C:\My Programs\JCFramework\Nunit" + Environment.CurrentDirectory = System.AppDomain.CurrentDomain.BaseDirectory Dim retry As Boolean = True While retry = True Try Index: AtomsFrameworkTests.vb =================================================================== RCS file: /cvsroot/jcframework/Nunit/InheritedClasses/AtomsFrameworkTests.vb,v retrieving revision 1.7 retrieving revision 1.8 diff -u -d -r1.7 -r1.8 --- AtomsFrameworkTests.vb 6 Dec 2004 01:01:11 -0000 1.7 +++ AtomsFrameworkTests.vb 21 Dec 2004 22:00:01 -0000 1.8 @@ -8,9 +8,11 @@ Private emp As CEmployee Private job As CJob Private team As CTeam + Dim WithEvents coll As CPersistentCollection + Private eventcount As Integer <TestFixtureSetUp()> Public Sub Init() - Environment.CurrentDirectory = "C:\Projects\MMM\Nunit_AtomsFramework" + Environment.CurrentDirectory = System.AppDomain.CurrentDomain.BaseDirectory Dim retry As Boolean = True While retry = True Try @@ -339,5 +341,39 @@ Assert.AreEqual(2, a.TableCCollection.Count) End Sub + <Test()> Public Sub CheckCollectionEvents() + coll = New CPersistentCollection + eventcount = 0 + emp = New CEmployee + emp.Name = "somename" + coll.Add(emp) + emp = New CEmployee + emp.Name = "someOtherName" + coll.Add(emp) + coll.Remove(0) + Assert.AreEqual(1, coll.Count) + Assert.AreEqual("someOtherName", CType(coll.Item(0), CEmployee).Name) + Assert.AreEqual(3, eventcount) + End Sub + + Private Sub coll_ObjectAdded(ByVal index As Integer, ByRef value As Object) Handles coll.ObjectAdded + eventcount += 1 + If eventcount = 1 Then + Assert.AreEqual(0, index) + Assert.AreEqual("somename", CType(value, CEmployee).Name) + End If + If eventcount = 2 Then + Assert.AreEqual(1, index) + Assert.AreEqual("someOtherName", CType(value, CEmployee).Name) + End If + End Sub + + Private Sub coll_ObjectRemoved(ByVal index As Integer, ByRef value As Object) Handles coll.ObjectRemoved + eventcount += 1 + If eventcount = 3 Then + Assert.AreEqual(0, index) + Assert.AreEqual("somename", CType(value, CEmployee).Name) + End If + End Sub End Class End Namespace \ No newline at end of file |