Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using Microsoft.VisualStudio.TestTools.UnitTesting;
- using WebsiteObserver;
- using Moq;
- namespace WebsiteObserverTest
- {
- [TestClass]
- public class ConcreteSubjectTest
- {
- Mock<Subject> subject;
- Mock<IObserver> observer;
- string url;
- DateTime date;
- [TestInitialize()]
- public void Initialize()
- {
- url = "https://www.pja.edu.pl/";
- date = new DateTime(2017, 12, 10);
- subject = new Mock<Subject>();
- observer = new Mock<IObserver>();
- }
- [TestMethod]
- public void GetStateTest()
- {
- Assert.AreNotEqual(DateTime.Now, subject.Setup(x => x.GetState(url)).Returns(date));
- }
- [TestMethod]
- public void SetStateTest()
- {
- subject.Setup(x => x.SetState(url, DateTime.Now));
- Assert.AreNotEqual(DateTime.Now.AddDays(1), subject.Setup(x => x.GetState(url)).Returns(date));
- }
- [TestMethod]
- public void AttachTest()
- {
- subject.Object.Attach(observer.Object);
- subject.VerifyAll();
- }
- [TestMethod]
- public void DetachTest()
- {
- subject.Setup(x=>x.Attach(observer.Object));
- subject.Setup(x => x.Detach(observer.Object)).Verifiable();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement