public void DatabaseFindByUsernameOrIdThrowsIOPWhenNotFound() { var db = new App.Database(this.PersonObjects); Assert.That(() => db.FindByUsername("Penka"), Throws.InvalidOperationException, "The database does not throw exceptions when the username is not found."); Assert.That(() => db.FindById(500), Throws.InvalidOperationException, "The database does not throw exceptions when the Id is not found"); }
public void DatabaseCapacityIsExactly16() { var db = new App.Database(); Assert.That(db.Capcaity, Is.EqualTo(16), $"Database.Capacity is not equal to 16! Current value: {db.Capcaity}"); Assert.That(db.Fetch().Length, Is.EqualTo(16), "Database.Fetch returns array not equal to 16!"); }
public void DatabaseFindByUsernameIsCaseSensitive() { var peopleObjects = this.PersonObjects; var db = new App.Database(peopleObjects); var firstUserName = peopleObjects.First().Name.ToLower(); Assert.That(() => db.FindByUsername(firstUserName), Throws.InvalidOperationException, "The database is case insensitive"); }
public void DatabaseElementsAreRemovedInLIFOOrder() { var db = new App.Database(1, 2, 3); var lastElement = db.Fetch()[db.LastIndex]; db.Remove(); var lastElementAfterRemoval = db.Fetch()[db.LastIndex]; Assert.That(lastElement, Is.Not.EqualTo(lastElementAfterRemoval), "The removal is either not in LIFO order or the element had not been removed"); }
public void DatabaseElementsAreAddedInLIFOOrder() { var db = new App.Database(1, 8); var addedItem = 5; db.Add(addedItem); var lastItem = db.Fetch()[db.LastIndex]; Assert.That(lastItem, Is.EqualTo(addedItem), "The adding order is not LIFO!"); }
public void DatabaseElementsAreAddedInLIFOOrder() { var peopleArray = this.PersonObjects; var db = new App.Database(peopleArray[0], peopleArray[1]); var addedItem = peopleArray[2]; db.Add(addedItem); var lastItem = db.Fetch()[db.LastIndex]; Assert.That(lastItem, Is.EqualTo(addedItem), "The adding order is not LIFO!"); }
private void CheckForExceptionOnAdding(List <IPerson> peopleList, IPerson newPerson, string message) { //Make sure repeating usernames are rejected on creation peopleList.Add(newPerson); Assert.That(() => new App.Database(peopleList.ToArray()), Throws.InvalidOperationException); //Make sure repeating usernames are rejected on addition peopleList.Remove(peopleList.Last()); var db = new App.Database(peopleList.ToArray()); Assert.That(() => db.Add(newPerson), Throws.InvalidOperationException); }
public void DatabaseFindByIdThrowsArgExWhenBelowZero() { var db = new App.Database(); try { db.FindById(-51); } catch (Exception e) { Assert.That(e is ArgumentOutOfRangeException, "The thrown exception is incorrect"); if (e is ArgumentOutOfRangeException) { Assert.That(e is ArgumentOutOfRangeException, "The Database.FindById accepts negative ids"); } } }
public void DatabaseConstructorStoresValuesInArray() { var defaultArray = new int[] { 3, 2, 1, 8, 7 }; var db = new App.Database(defaultArray); var fetchedArray = db.Fetch(); var elementsAreSaved = true; for (int i = 0; i < defaultArray.Length; i++) { if (defaultArray[i] != fetchedArray[i]) { elementsAreSaved = false; break; } } Assert.That(elementsAreSaved, "There was a missmatch when checking saved elements. Make sure they are saved correctly!"); }
public void DatabaseFindByUsernameAndIdWorks() { var peopleObjects = this.PersonObjects; var firstPerson = peopleObjects[0]; var db = new App.Database(peopleObjects); IPerson personByUsername; try { personByUsername = db.FindByUsername(firstPerson.Name); Assert.That(personByUsername, Is.EqualTo(firstPerson)); } catch (Exception) { throw new AssertionException("The Database.FindByUsername() does not work properly"); } try { personByUsername = db.FindById(firstPerson.Id); Assert.That(personByUsername, Is.EqualTo(firstPerson)); } catch (Exception) { throw new AssertionException("The Database.FindById() does not work properly"); } }
public void DatabaseEmptyArrayRemovalResultsInIOPException() { var db = new App.Database(); Assert.That(() => db.Remove(), Throws.InvalidOperationException); }
public void DatabaseShouldThrowInvalidOperationExceptionIfOverflows16() { var db = new App.Database(new int[16]); Assert.That(() => db.Add(1), Throws.InvalidOperationException); }
public void DatabaseShouldThrowInvalidOperationExceptionIfOverflows16() { var db = new App.Database(this.PersonObjects); Assert.That(() => db.Add(this.people[0].Object), Throws.InvalidOperationException); }
public void DatabaseFindByUsernameThrowsArgExWhenNull() { var db = new App.Database(); Assert.That(() => db.FindByUsername(null), Throws.ArgumentNullException, "The Database.FindByUsername accepts null arguments"); }