public void AddObserver_OneObserverTwoTimesOneModification_ObserverCountOne() { bool error = false; int? preCount = null; int? postCount = null; try { var observer01 = new GeneralObserver { Id = Guid.NewGuid() }; var observable01 = new GeneralObservable { Id = Guid.NewGuid() }; observable01.Property = "Status 01"; preCount = observer01.Count; observable01.AddObserver(observer01); observable01.AddObserver(observer01); observable01.Property = "Status 02"; postCount = observer01.Count; } catch (Exception e) { error = true; } Assert.IsFalse(error); Assert.IsNotNull(preCount); Assert.IsNotNull(postCount); Assert.IsTrue(preCount.Value == 0); Assert.IsTrue(postCount.Value == 1); }
public void RemoveObserver_RemoveNotExisting_CountOne() { bool error = false; int? preCount = null; int? postCount = null; try { var observer01 = new GeneralObserver { Id = Guid.NewGuid() }; var observer02 = new GeneralObserver { Id = Guid.NewGuid() }; var observable01 = new GeneralObservable { Id = Guid.NewGuid() }; observable01.Property = "Status 01"; observable01.AddObserver(observer01); preCount = observer01.Count; observable01.RemoveObserver(observer02); observable01.Property = "Status 02"; postCount = observer01.Count; } catch (Exception e) { error = true; } Assert.IsFalse(error); Assert.IsNotNull(preCount); Assert.IsNotNull(postCount); Assert.IsTrue(preCount.Value == 0); Assert.IsTrue(postCount.Value == 1); }
public void AddObserver_TwoObserversOneModification_BothCountOne() { bool error = false; int? count01 = null; int? count02 = null; try { var observer01 = new GeneralObserver { Id = Guid.NewGuid() }; var observer02 = new GeneralObserver { Id = Guid.NewGuid() }; var observable01 = new GeneralObservable { Id = Guid.NewGuid() }; observable01.Property = "Status 01"; observable01.AddObserver(observer01); observable01.AddObserver(observer02); observable01.Property = "Status 02"; count01 = observer01.Count; count02 = observer02.Count; } catch (Exception e) { error = true; } Assert.IsFalse(error); Assert.IsNotNull(count01); Assert.IsNotNull(count02); Assert.IsTrue(count01.Value == 1); Assert.IsTrue(count02.Value == 1); }
public void RemoveObserver_RemoveNull_NotError() { bool error = false; try { GeneralObserver observer01 = null; var observable01 = new GeneralObservable { Id = Guid.NewGuid() }; observable01.Property = "Status 01"; observable01.RemoveObserver(observer01); observable01.Property = "Status 02"; } catch (Exception e) { error = true; } Assert.IsFalse(error); }