From: Richard B. <rb...@us...> - 2004-10-18 00:07:33
|
Update of /cvsroot/jcframework/Nunit In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv31816 Modified Files: Nunit_AtomsFramework.vbproj Added Files: NonInheritedRetreiveCriteria.vb Nunit_AtomsFramework.vbproj.user Log Message: Unit tests for retrieve criteria based on non-persistence-inherited objects Index: Nunit_AtomsFramework.vbproj =================================================================== RCS file: /cvsroot/jcframework/Nunit/Nunit_AtomsFramework.vbproj,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- Nunit_AtomsFramework.vbproj 15 Oct 2004 06:47:15 -0000 1.5 +++ Nunit_AtomsFramework.vbproj 18 Oct 2004 00:07:09 -0000 1.6 @@ -140,6 +140,11 @@ BuildAction = "Compile" /> <File + RelPath = "NonInheritedRetreiveCriteria.vb" + SubType = "Code" + BuildAction = "Compile" + /> + <File RelPath = "NonInheritedTests.vb" SubType = "Code" BuildAction = "Compile" --- NEW FILE: NonInheritedRetreiveCriteria.vb --- Imports AToMSFramework Imports NUnit.Framework <TestFixture()> Public Class NonInheritedRetreiveCriteria Private pbroker As CPersistenceBroker Private emp As NPEmployee Private r As CRetrieveCriteria Private mr As CMultiRetrieveCriteria Private c As CCursor Private injObj As CInjectedObject <TestFixtureSetUp()> Public Sub Init() Environment.CurrentDirectory = "C:\Projects\MMM\Nunit_AtomsFramework" Try 'Remove any existing test database System.IO.File.Delete(".\db1.mdb") Catch ex As Exception End Try System.IO.File.Copy(".\original db1.mdb", ".\db1.mdb") pbroker = New CPersistenceBroker pbroker.init() End Sub <TestFixtureTearDown()> Public Sub Dispose() pbroker.Dispose() pbroker = Nothing End Sub <SetUp()> Public Sub testInit() emp = New NPEmployee End Sub <Test()> Public Sub SingleClassRetrieve() r = New CRetrieveCriteria r.ClassMap = pbroker.getClassMap(GetType(NPEmployee)) c = r.perform Assert.IsTrue(c.hasElements) Assert.IsTrue(Not c.EOF) Assert.IsTrue(c.HoldsProxies) Assert.AreEqual(c.ResultSet.ResultSet.Tables(0).Rows.Count, 6) End Sub <Test()> Public Sub LoadFullObjects() r = New CRetrieveCriteria r.ReturnFullObjects = True r.ClassMap = pbroker.getClassMap(emp.GetType) c = r.perform Assert.IsFalse(c.HoldsProxies) While c.hasElements And Not c.EOF emp = New NPEmployee c.loadObject(emp) Console.WriteLine(emp.Name) injObj = pbroker.getInjectedObject(emp) Assert.IsTrue(injObj.Persistent) c.nextCursor() End While c.SetCursor(0) emp = New NPEmployee c.loadObject(emp) Assert.AreEqual(emp.Name, "ab") End Sub <Test()> Public Sub SimpleOrCriteria() r = New CRetrieveCriteria r.ClassMap = pbroker.getClassMap(emp.GetType) r.WhereCondition.addSelectEqualTo("Name", "aa") r.WhereCondition.addSelectEqualTo("Name", "b", True) c = r.perform Assert.IsTrue(c.hasElements) Assert.AreEqual(c.ResultSet.ResultSet.Tables(0).Rows.Count, 2) c.loadObject(emp) Assert.AreEqual(emp.Name, "aa") c.nextCursor() emp = New NPEmployee c.loadObject(emp) Assert.AreEqual(emp.Name, "b") End Sub <Test()> Public Sub SelectInList() Dim al As New ArrayList al.Add("aa") al.Add("b") r = New CRetrieveCriteria r.ClassMap = pbroker.getClassMap(emp.GetType) r.WhereCondition.addSelectInList("Name", al) c = r.perform Assert.IsTrue(c.hasElements) Assert.AreEqual(c.ResultSet.ResultSet.Tables(0).Rows.Count, 2) c.loadObject(emp) Assert.AreEqual(emp.Name, "aa") c.nextCursor() emp = New NPEmployee c.loadObject(emp) Assert.AreEqual(emp.Name, "b") End Sub <Test()> Public Sub SubCriteria() Dim xx_1 As New CCriteriaCondition Dim xx_2 As New CCriteriaCondition Dim xx_3 As New CCriteriaCondition Dim xx_4 As New CCriteriaCondition r = New CRetrieveCriteria r.ClassMap = pbroker.getClassMap(emp.GetType) xx_1.ClassMap = r.ClassMap xx_2.ClassMap = r.ClassMap xx_3.ClassMap = r.ClassMap xx_4.ClassMap = r.ClassMap xx_1.addSelectEqualTo("Name", "aa") xx_2.addSelectEqualTo("Name", "ab") xx_1.addSubCriteria(xx_2, True) xx_3.addSelectEqualTo("Name", "ab") xx_4.addSelectEqualTo("Name", "ac") xx_3.addSubCriteria(xx_4, True) r.WhereCondition.addSubCriteria(xx_1, True) r.WhereCondition.addSubCriteria(xx_3, False) c = r.perform Assert.IsTrue(c.hasElements) Assert.AreEqual(c.ResultSet.ResultSet.Tables(0).Rows.Count, 1) While c.hasElements And Not c.EOF emp = New NPEmployee c.loadObject(emp) Assert.AreEqual(emp.Name, "ab") c.nextCursor() End While End Sub <Test()> Public Sub MultiRetrieveTest1() Dim si As CSelectInCriteria mr = New CMultiRetrieveCriteria(emp) mr.WhereCondition.addSelectEqualTo("Name", "ac") si = New CSelectInCriteria(emp) si.WhereCondition.addSelectEqualTo("Name", "ac") si.SetSelectAttribute("Name") mr.WhereCondition.addSelectNotIn("Name", si) c = mr.perform Assert.IsFalse(c.hasElements) Assert.IsTrue(c.EOF) End Sub End Class --- NEW FILE: Nunit_AtomsFramework.vbproj.user --- <VisualStudioProject> <VisualBasic LastOpenVersion = "7.10.3077" > <Build> <Settings ReferencePath = "C:\Projects\MMM\Atoms_Framework\bin\" > <Config Name = "Debug" EnableASPDebugging = "false" EnableASPXDebugging = "false" EnableUnmanagedDebugging = "false" EnableSQLServerDebugging = "false" RemoteDebugEnabled = "false" RemoteDebugMachine = "" StartAction = "Program" StartArguments = '"..\Nunit_AtomsFramework.nunit"' StartPage = "" StartProgram = "C:\Program Files\NUnit 2.2\bin\nunit-gui.exe" StartURL = "" StartWorkingDirectory = "" StartWithIE = "true" /> <Config Name = "Release" EnableASPDebugging = "false" EnableASPXDebugging = "false" EnableUnmanagedDebugging = "false" EnableSQLServerDebugging = "false" RemoteDebugEnabled = "false" RemoteDebugMachine = "" StartAction = "Project" StartArguments = "" StartPage = "" StartProgram = "" StartURL = "" StartWorkingDirectory = "" StartWithIE = "false" /> </Settings> </Build> <OtherProjectSettings CopyProjectDestinationFolder = "" CopyProjectUncPath = "" CopyProjectOption = "0" ProjectView = "ProjectFiles" ProjectTrust = "0" /> </VisualBasic> </VisualStudioProject> |