Mercurial > pub > bltoolkit
diff UnitTests/CS/JointureTests/AssociationTests.cs @ 0:f990fcb411a9
Копия текущей версии из github
author | cin |
---|---|
date | Thu, 27 Mar 2014 21:46:09 +0400 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/UnitTests/CS/JointureTests/AssociationTests.cs Thu Mar 27 21:46:09 2014 +0400 @@ -0,0 +1,102 @@ +using System.Collections.Generic; +using BLToolkit.Data; +using BLToolkit.Data.DataProvider; +using BLToolkit.DataAccess; +using BLToolkit.Mapping; +using NUnit.Framework; + +namespace UnitTests.CS.JointureTests +{ + //[TestFixture] + internal class AssociationTests + { + [TestFixtureSetUp] + public void Setup() + { + DataProviderBase provider = new OdpDataProvider(); + DbManager.AddDataProvider(provider); + DbManager.AddConnectionString(provider.Name, + string.Format( + "data source={0};User Id={1};Password={2};Incr Pool Size=1;Max Pool Size=3; Connection Timeout=15; pooling=false", + "MUSICFR01.TEST", "scurutchet", "kisscool12")); + } + + //[Test] + public void SelectAllArtistsIgnoreLazyLoading() + { + using (var db = new MusicDB()) + { + var query2 = new FullSqlQuery(db, true); //loading is automatic + var artist2 = (Artist2) query2.SelectByKey(typeof (Artist2), 2643); + var titles2 = artist2.Titles; + + var query = new FullSqlQuery(db); // Dont ignore lazyloading + var artist = (Artist2) query.SelectByKey(typeof (Artist2), 2643); + var titles = artist.Titles; + Assert.AreEqual(titles2.Count, titles.Count); + } + } + + //[Test] + public void SelectAllArtistsLazyLoading() + { +// using (var db = new MusicDB()) +// { +// var dbCmd = db.SetCommand("SELECT ID_ARTIST FROM PITAFR01.Artist where date_creation > sysdate - 200"); +// +// dbCmd.MappingSchema = new FullMappingSchema(); +// +// var art = dbCmd.ExecuteList<Artist2>(); +// var titles = art[0].Titles; +// var query2 = new FullSqlQueryT<Artist2>(db); +// var artists = query2.SelectAll(); +// var artist2 = artists[0]; +// var titles2 = artist2.Titles; +// } + } + + //[Test] + public void SelectAllTitlesFull() + { + using (var db = new MusicDB()) + { + var query = new FullSqlQueryT<Title>(db); + var titles1 = query.SelectAll<List<Title>>(); + List<Title> titles2 = query.SelectAll(); + } + } + + //[Test] + public void SelectAllTitlesFull2() + { + using (var db = new MusicDB()) + { + var query2 = new FullSqlQuery(db); + var titles = query2.SelectAll<Title>(); + var title = (Title) query2.SelectByKey(typeof (Title), 137653); + } + } + + //[Test] + public void SelectArtistFullWithLazyLoadingTitles() + { + using (var db = new MusicDB()) + { + var query2 = new FullSqlQueryT<Artist2>(db); + var artist = query2.SelectByKey(2643); + var titles = artist.Titles; + } + } + + //[Test] + public void SelectTitleFull() + { + using (var db = new MusicDB()) + { + var query2 = new FullSqlQueryT<Title>(db); + var title = query2.SelectByKey(137653); + var titleName = title.Name; + } + } + } +} \ No newline at end of file