public async void ChangeOwnerOfRange() { var item1 = new DatabaseModel.Item("assetId987894", _setup.ItemDescription2.Id, _setup.Bot1.Id, _setup.User1.Id, DateTimeOffset.Now); var item2 = new DatabaseModel.Item("assetId987895", _setup.ItemDescription2.Id, _setup.Bot1.Id, _setup.User1.Id, DateTimeOffset.Now); var item3 = new DatabaseModel.Item("assetId987896", _setup.ItemDescription2.Id, _setup.Bot1.Id, _setup.User1.Id, DateTimeOffset.Now); var item4 = new DatabaseModel.Item("assetId987897", _setup.ItemDescription2.Id, _setup.Bot1.Id, _setup.User1.Id, DateTimeOffset.Now); var retItem1 = await _itemRepoService.InsertAsync(item1); var retItem2 = await _itemRepoService.InsertAsync(item2); var retItem3 = await _itemRepoService.InsertAsync(item3); var retItem4 = await _itemRepoService.InsertAsync(item4); var updateRes = await _itemRepoService.ChangeOwner(new List <int> { retItem1.Id, retItem2.Id, retItem3.Id, retItem4.Id, }, _setup.User6); var getRes = await _itemRepoService.FindAsync(_setup.User6); Assert.Equal(4, getRes.Count); }
public async void InsertSameAssetIdButDiffrentDescriptionIdSuccess() { var item = new DatabaseModel.Item("assetId100", _setup.ItemDescription2.Id, _setup.Bot1.Id, _setup.User1.Id, DateTimeOffset.Now); var item2 = new DatabaseModel.Item("assetId100", _setup.ItemDescription1.Id, _setup.Bot1.Id, _setup.User1.Id, DateTimeOffset.Now); await _itemRepoService.InsertAsync(new List <DatabaseModel.Item> { item, item2 }); var itemResult1 = await _itemRepoService.FindAsync(new AssetAndDescriptionId { AssetId = "AssetId100", DescriptionId = _setup.ItemDescription1.Id, }); var itemResult2 = await _itemRepoService.FindAsync(new AssetAndDescriptionId { AssetId = "AssetId100", DescriptionId = _setup.ItemDescription2.Id, }); Assert.False(itemResult1.Id == itemResult2.Id); Assert.NotNull(itemResult1); Assert.NotNull(itemResult2); }
public async void GetAllItemsSuccess() { var item = new DatabaseModel.Item("assetId12311", _setup.ItemDescription2.Id, _setup.Bot1.Id, _setup.User1.Id, DateTimeOffset.Now); var item2 = new DatabaseModel.Item("assetId12344", _setup.ItemDescription1.Id, _setup.Bot1.Id, _setup.User1.Id, DateTimeOffset.Now); var item3 = new DatabaseModel.Item("assetId12333", _setup.ItemDescription1.Id, _setup.Bot1.Id, _setup.User1.Id, DateTimeOffset.Now); var list = new List <DatabaseModel.Item> { item, item2, item3 }; await _itemRepoService.InsertAsync(list); var res = await _itemRepoService.GetAll(); int matches = 0; for (int i = 0; i < res.Count; i++) { for (int j = 0; j < list.Count; j++) { if (list[j].AssetId == res[i].AssetId) { matches++; } } } Assert.Equal(3, matches); }
public async Task <DatabaseModel.Item> InsertAsync(DatabaseModel.Item item) { var query = _itemQueries.InsertReturnsId(item); var id = (int)await _databaseConnection.ExecuteScalarAsync(query); return(new DatabaseModel.Item(item.AssetId, item.DescriptionId, item.LocationId, item.OwnerId, item.ReleaseTime, id)); }
public async void AddItemWithSameAssetIdMultipleTimesThrows() { var item = new DatabaseModel.Item("assetId3", _setup.ItemDescription2.Id, _setup.Bot1.Id, _setup.User1.Id, DateTimeOffset.Now); await Assert.ThrowsAsync <SqlException>(async() => await _itemRepoService.InsertAsync(new List <DatabaseModel.Item> { item, item })); }
public async void AddItemsSuccess() { var item = new DatabaseModel.Item("assetId1", _setup.ItemDescription2.Id, _setup.Bot1.Id, _setup.User1.Id, DateTimeOffset.Now); var itemId = await _itemRepoService.InsertAsync(item); var item2 = new DatabaseModel.Item("assetId2", _setup.ItemDescription2.Id, _setup.Bot1.Id, _setup.User1.Id, DateTimeOffset.Now); var itemId2 = await _itemRepoService.InsertAsync(item2); Assert.NotEqual(itemId, itemId2); }
public async void ChangeOwnerOfItemsSuccess() { var item = new DatabaseModel.Item("assetId4", _setup.ItemDescription2.Id, _setup.Bot1.Id, _setup.User1.Id, DateTimeOffset.Now); var retItem = await _itemRepoService.InsertAsync(item); Assert.True(retItem.Id > 0); var updateRes = await _itemRepoService.ChangeOwner(retItem, _setup.User2); Assert.Equal(1, updateRes); var getRes = await _itemRepoService.FindAsync(retItem.Id); Assert.Equal(_setup.User2.Id, getRes.OwnerId); Assert.Equal(_setup.Bot1.Id, getRes.LocationId); }
public SqlQuery InsertReturnsId(DatabaseModel.Item item) { var dict = new Dictionary <string, object> { { "@assetId", item.AssetId }, { "@descId", item.DescriptionId }, { "@locId", item.LocationId }, { "@ownerId", item.OwnerId }, { "@releaseTime", item.ReleaseTime } }; var queryStr = "INSERT INTO [Item] (AssetId, DescriptionId, LocationId, OwnerId, ReleaseTime) OUTPUT INSERTED.Id VALUES (@assetId ,@descId, @locId,@ownerId,@releaseTime)"; return(new SqlQuery(queryStr, dict)); }
public async void DeletItemsOnWithdrawSuccess() { var item = new DatabaseModel.Item("assetId123", _setup.ItemDescription2.Id, _setup.Bot1.Id, _setup.User1.Id, DateTimeOffset.Now); var item2 = new DatabaseModel.Item("assetId123", _setup.ItemDescription1.Id, _setup.Bot1.Id, _setup.User1.Id, DateTimeOffset.Now); await _itemRepoService.InsertAsync(new List <DatabaseModel.Item> { item, item2 }); var itemResult1 = await _itemRepoService.DeleteAsync(new AssetAndDescriptionId { AssetId = "assetId123", DescriptionId = _setup.ItemDescription2.Id }); var itemResult2 = await _itemRepoService.DeleteAsync(new AssetAndDescriptionId { AssetId = "assetId123", DescriptionId = _setup.ItemDescription1.Id }); Assert.Equal(1, itemResult1); Assert.Equal(1, itemResult2); }
public async void DeletItemsSuccess() { var item = new DatabaseModel.Item("assetId1231", _setup.ItemDescription2.Id, _setup.Bot1.Id, _setup.User1.Id, DateTimeOffset.Now); var item2 = new DatabaseModel.Item("assetId1231", _setup.ItemDescription1.Id, _setup.Bot1.Id, _setup.User1.Id, DateTimeOffset.Now); var item3 = new DatabaseModel.Item("assetId1211", _setup.ItemDescription1.Id, _setup.Bot1.Id, _setup.User1.Id, DateTimeOffset.Now); var insertItem1 = await _itemRepoService.InsertAsync(item); var insertItem2 = await _itemRepoService.InsertAsync(item2); var insertItem3 = await _itemRepoService.InsertAsync(item3); var res = await _itemRepoService.DeleteAsync(new List <int> { insertItem1.Id, insertItem3.Id }); Assert.Equal(2, res); }
public SqlQuery Insert(DatabaseModel.Item item) { return(InsertRange(new List <DatabaseModel.Item> { item })); }
public async Task <int> ChangeOwner(DatabaseModel.Item item, DatabaseModel.User user) { return(await ChangeOwner(item.Id, user)); }