- add test for enumerables

master
Simon G 5 years ago
parent b20c240b59
commit cc6a0bd01c
  1. 6
      Test.GBase/GBaseIntegrationTest/GBaseIntegrationTest.cs
  2. 9
      Test.GBase/GBaseIntegrationTest/Group.cs
  3. 2
      Test.GBase/GBaseIntegrationTest/IGroup.cs
  4. 12
      Test.GBase/GBaseIntegrationTest/Model.cs

@ -48,9 +48,9 @@ namespace Test.GBase.GBaseIntegrationTest
await model.AddItem(new Item("Item 2", 2), _cancellationTokenSource.Token); await model.AddItem(new Item("Item 2", 2), _cancellationTokenSource.Token);
await model.AddItem(new Item("Item 3", 3), _cancellationTokenSource.Token); await model.AddItem(new Item("Item 3", 3), _cancellationTokenSource.Token);
await model.AddGroup(new Group(1), _cancellationTokenSource.Token); await model.AddGroup(new Group(1) {Items = { model.Items[0], model.Items[1] }}, _cancellationTokenSource.Token);
await model.AddGroup(new Group(2), _cancellationTokenSource.Token); await model.AddGroup(new Group(2) {Items = { model.Items[1], model.Items[2] }}, _cancellationTokenSource.Token);
await model.AddGroup(new Group(3), _cancellationTokenSource.Token); await model.AddGroup(new Group(3) {Items = { model.Items[0], model.Items[2] }}, _cancellationTokenSource.Token);
} }
} }
} }

@ -13,18 +13,21 @@ namespace Test.GBase.GBaseIntegrationTest
{ {
public Group() public Group()
{ {
Items = new List<IItem>(); Items = new List<Item>();
} }
public Group(int number) public Group(int number)
{ {
Number = number; Number = number;
Items = new List<IItem>(); Items = new List<Item>();
} }
[GBaseColumn] [GBaseColumn]
public int Number { get; private set; } public int Number { get; private set; }
public List<IItem> Items { get; }
[GBaseColumn]
public List<Item> Items { get; }
public GBaseKey Key { get; set; } public GBaseKey Key { get; set; }
public string FileName => $"Group{Number}"; public string FileName => $"Group{Number}";

@ -11,6 +11,6 @@ namespace Test.GBase.GBaseIntegrationTest
public interface IGroup : IGBaseObject //: INotifyGBaseEntryChanged public interface IGroup : IGBaseObject //: INotifyGBaseEntryChanged
{ {
int Number { get; } int Number { get; }
List<IItem> Items { get; } List<Item> Items { get; }
} }
} }

@ -19,23 +19,23 @@ namespace Test.GBase.GBaseIntegrationTest
public Model(IGBaseFactory gBaseFactory) public Model(IGBaseFactory gBaseFactory)
{ {
_gBase = gBaseFactory.Create(new Settings()); _gBase = gBaseFactory.Create(new Settings());
Items = new List<IItem>(); Items = new List<Item>();
Groups = new List<IGroup>(); Groups = new List<Group>();
} }
public List<IItem> Items { get; private set; } public List<Item> Items { get; private set; }
public List<IGroup> Groups { get; private set; } public List<Group> Groups { get; private set; }
public async Task Initialize(CancellationToken cancellationToken) public async Task Initialize(CancellationToken cancellationToken)
{ {
await _gBase.Init("DB", Assembly.GetExecutingAssembly(), cancellationToken); await _gBase.Init("DB", Assembly.GetExecutingAssembly(), cancellationToken);
IGBaseTable<Item> itemsTable = _gBase.GetTable<Item>(); IGBaseTable<Item> itemsTable = _gBase.GetTable<Item>();
Items = itemsTable.Entries.Cast<IItem>().ToList(); Items = itemsTable.Entries.ToList();
//Items = (await _gBase.GetValues<Model, Item>(this, nameof(Items), cancellationToken)).Cast<IItem>().ToList(); //Items = (await _gBase.GetValues<Model, Item>(this, nameof(Items), cancellationToken)).Cast<IItem>().ToList();
IGBaseTable<Group> groupsTable = _gBase.GetTable<Group>(); IGBaseTable<Group> groupsTable = _gBase.GetTable<Group>();
Groups = groupsTable.Entries.Cast<IGroup>().ToList(); Groups = groupsTable.Entries.ToList();
//Groups = (await _gBase.GetValues<Model, Group>(this, nameof(Groups), cancellationToken)).Cast<IGroup>().ToList(); //Groups = (await _gBase.GetValues<Model, Group>(this, nameof(Groups), cancellationToken)).Cast<IGroup>().ToList();
} }

Loading…
Cancel
Save