public void Invalid_field_can_be_returned_as_empty_strings()
        {
            // arrange
            var alerts = GenericTestData.DummyAlerts();

            var provider = new AzureDevOpsFieldLookupProvider(null, alerts, "user1", false);

            // act
            var actual = provider.LookupAlertFieldValue("NOT.REAL");

            // assert
            Assert.AreEqual(string.Empty, actual);
        }
        public void Cannot_get_an_invalid_field_from_the_alerts_data()
        {
            // arrange
            var alerts = GenericTestData.DummyAlerts();

            var provider = new AzureDevOpsFieldLookupProvider(null, alerts, "user1", true);

            // act
            var actual = provider.LookupAlertFieldValue("NOT.REAL");

            // assert
            Assert.AreEqual("ERROR: [##NOT.REAL##]", actual);
        }
        public void Can_get_the_changing_user_from_the_alerts_data()
        {
            //// arrange
            var alerts = GenericTestData.DummyAlerts();

            var provider = new AzureDevOpsFieldLookupProvider(null, alerts, "user1", false);

            // act
            var actual = provider.LookupAlertFieldValue("System.ChangedBy");

            // assert
            Assert.AreEqual("user1", actual);
        }
        public void Can_get_an_alert_change_field()
        {
            // arrange
            var alerts = GenericTestData.DummyAlerts();

            var provider = new  AzureDevOpsFieldLookupProvider(null, alerts, "user1", false);

            //// act
            var actual = provider.LookupAlertFieldValue("r1");

            //// assert
            Assert.AreEqual("B", actual);
        }
        public void User1_reassigns_WI_User2_to_User3_mail_sent_to_both()
        {
            // arrange
            var provider = TestProviderFactory.MockedAzureDevOpsFieldLookupProvider("user3").Object;
            provider.SetChangedBy("user1");
            provider.SetTestAlertItems(GenericTestData.AssignedToChangedAlerts("user2", "user3"));

            // act
            var actual = provider.GetInterestedEmailAddresses("test.com");

            // assert
            Assert.AreEqual("[email protected],[email protected]", actual);
        }
        public void User_changes_details_of_WI_assigned_to_self_no_mail_sent()
        {
            // arrange
            var provider = TestProviderFactory.MockedAzureDevOpsFieldLookupProvider("user1").Object;
            provider.SetChangedBy("user1");
            provider.SetTestAlertItems (GenericTestData.DummyAlerts());
         
            // act
            var actual = provider.GetInterestedEmailAddresses("test.com");

            // assert
            Assert.AreEqual(string.Empty, actual);
        }