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 Integer_field_should_return_empty_string_if_null()
        {
            // arrange
            var alerts = new List<WorkItemChangedAlertDetails>() {
                new WorkItemChangedAlertDetails() { ReferenceName="r1", OldValue=null, NewValue = null}};

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

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

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


        }
コード例 #6
0
        /// <summary>
        /// Sends an email based on a template
        /// </summary>
        /// <param name="workItemId">The work item ID</param>
        /// <param name="templatePath">Path to the email template</param>
        /// <param name="dumpAllWorkItemFields">If true appends all work item fields to the email</param>
        /// <param name="dumpAllAlertFields">If true appends all alert fields to the email</param>
        /// <param name="showMissingFieldNames">If true adds error messages for incorrect field names</param>
        public void SendEmail(int workItemId, string templatePath, bool dumpAllWorkItemFields, bool dumpAllAlertFields, bool showMissingFieldNames)
        {
            // Get this list of changes
            var alertItems = this.EventData.GetWorkItemDetails();

            // Create a new Azure DevOps helper
            var fieldLookupProvider = new AzureDevOpsFieldLookupProvider(
                this.TfsProvider.GetWorkItem(workItemId),
                alertItems.ChangedAlertFields,
                alertItems.ChangedBy,
                showMissingFieldNames);

            //Process the email using a template
            this.EmailProvider.SendEmailAlert(
                fieldLookupProvider,
                templatePath,
                dumpAllWorkItemFields,
                dumpAllAlertFields);
        }