1
0
mirror of https://github.com/Radarr/Radarr.git synced 2024-09-11 12:02:35 +02:00

added test for lazy loaded objects.

This commit is contained in:
kay.one 2013-04-10 21:38:45 -07:00
parent 684a72792a
commit b27217bcf4
2 changed files with 23 additions and 3 deletions

View File

@ -8,6 +8,7 @@
using NzbDrone.Core.Datastore;
using NzbDrone.Core.Jobs;
using NzbDrone.Core.Test.Framework;
using NzbDrone.Core.Tv;
namespace NzbDrone.Core.Test.Datastore
{
@ -123,6 +124,25 @@ public void set_fields_should_only_update_selected_filed()
Db.All<JobDefinition>().Single().Name.Should().Be("B");
Db.All<JobDefinition>().Single().Interval.Should().Be(12);
}
[Test]
public void should_load_lazy_objects()
{
var rootFolder = Db.Insert(new RootFolders.RootFolder() { Path = "C:\test" });
var series = Builder<Series>.CreateNew()
.With(c=>c.RootFolderId = rootFolder.Id)
.BuildNew();
Db.Insert(series);
Db.Single<Series>().RootFolder.Should().NotBeNull();
Db.Single<Series>().RootFolder.Value.Should().NotBeNull();
Db.Single<Series>().RootFolder.Value.Path.Should().Be(rootFolder.Path);
}
}
}

View File

@ -130,7 +130,7 @@ public void TearDown()
public interface ITestDatabase
{
void InsertMany<T>(IEnumerable<T> items) where T : ModelBase, new();
void Insert<T>(T item) where T : ModelBase, new();
T Insert<T>(T item) where T : ModelBase, new();
List<T> All<T>() where T : ModelBase, new();
T Single<T>() where T : ModelBase, new();
void Update<T>(T childModel) where T : ModelBase, new();
@ -151,9 +151,9 @@ public TestTestDatabase(IDatabase dbConnection)
new BasicRepository<T>(_dbConnection).InsertMany(items.ToList());
}
public void Insert<T>(T item) where T : ModelBase, new()
public T Insert<T>(T item) where T : ModelBase, new()
{
new BasicRepository<T>(_dbConnection).Insert(item);
return new BasicRepository<T>(_dbConnection).Insert(item);
}
public List<T> All<T>() where T : ModelBase, new()