public void RemoveOnlineSites_NoOnlineSites_NothingRemoved()
        {
            List<string> offlineSites = AddOfflineSites(3);
            List<string> sitesRecordedAsOffline = AddOfflineSites(3);

            UpdateOfflineSiteData updateOfflineSiteData = new UpdateOfflineSiteData(repository);

            updateOfflineSiteData.RemoveOnlineSites(sitesRecordedAsOffline, offlineSites);

            repositoryMock.Verify(x => x.RemoveOnlineSite(It.IsAny<string>()), Times.Never());
        }
        public void RemoveOnlineSites_OnlineSitesRemoved()
        {
            string onlineSite1 = "onlineSite1";
            string onlineSite2 = "onlineSite2";

            List<string> offlineSites = AddOfflineSites(3);
            List<string> sitesRecordedAsOffline = AddOfflineSites(3);
            sitesRecordedAsOffline.AddRange(AddOnlineSites(2));

            // Need to declare these setup methods or strictMock will throw exception
            repositoryMock.Setup(x => x.RemoveOnlineSite(onlineSite1));
            repositoryMock.Setup(x => x.RemoveOnlineSite(onlineSite2));

            UpdateOfflineSiteData updateOfflineSiteData = new UpdateOfflineSiteData(repository);

            updateOfflineSiteData.RemoveOnlineSites(sitesRecordedAsOffline, offlineSites);

            repositoryMock.Verify(x => x.RemoveOnlineSite(onlineSite1), Times.Once());
            repositoryMock.Verify(x => x.RemoveOnlineSite(onlineSite2), Times.Once());
        }