/// <summary> /// MeetingResponse for accepting or declining a meeting request /// </summary> /// <param name="meetingResponseRequest">The request for MeetingResponse</param> /// <returns>The MeetingResponse response which is returned from server</returns> public MeetingResponseResponse MeetingResponse(MeetingResponseRequest meetingResponseRequest) { MeetingResponseResponse response = this.activeSyncClient.MeetingResponse(meetingResponseRequest); Site.Assert.IsNotNull(response, "If the operation is successful, the response should not be null."); return(response); }
/// <summary> /// Accept, tentatively accept, or decline a meeting request in the user's Inbox folder or Calendar folder /// </summary> /// <param name="request">A MeetingResponseRequest object that contains the request information.</param> /// <returns>A MeetingResponseResponse object.</returns> public MeetingResponseResponse MeetingResponse(MeetingResponseRequest request) { MeetingResponseResponse response = this.activeSyncClient.MeetingResponse(request); Site.Assert.IsNotNull(response, "If the MeetingResponse command executes successfully, the response from server should not be null."); return(response); }
/// <summary> /// Call MeetingResponse command to respond the meeting request /// </summary> /// <param name="userResponse">The value indicates whether the meeting is being accepted, tentatively accepted, or declined</param> /// <param name="collectionId">Specify the server id of mailbox</param> /// <param name="serverId">Specify a unique identifier that was assigned by the server for a mailItem</param> /// <param name="instanceId">Specify the start time of the appointment or meeting instance to be modified. The format of the instanceId value /// is a string in dateTime ([MS-ASDTYPE] section 2.3) format with the punctuation separators, for example, 2010-04-08T18:16:00.000Z</param> /// <returns>a bool value</returns> protected bool MeetingResponse(byte userResponse, string collectionId, string serverId, string instanceId) { bool isSuccess = false; // Create a MeetingResponse request item Request.MeetingResponseRequest meetingResponseRequestItem = new Request.MeetingResponseRequest { UserResponse = userResponse, CollectionId = collectionId, RequestId = serverId }; if (!string.IsNullOrEmpty(instanceId)) { meetingResponseRequestItem.InstanceId = instanceId; } // Create a MeetingResponse request MeetingResponseRequest meetingResponseRequest = Common.CreateMeetingResponseRequest(new Request.MeetingResponseRequest[] { meetingResponseRequestItem }); MeetingResponseResponse meetingResponseResponse = this.CALAdapter.MeetingResponse(meetingResponseRequest); if (meetingResponseResponse.ResponseData.Result[0].Status == "1") { isSuccess = true; } return(isSuccess); }
/// <summary> /// Accepts, tentatively accepts, or declines a meeting request in the user's Inbox folder or Calendar folder. /// </summary> /// <param name="request">A MeetingResponseRequest object that contains the request information.</param> /// <returns>MeetingResponse command response</returns> public MeetingResponseResponse MeetingResponse(MeetingResponseRequest request) { MeetingResponseResponse response = this.activeSyncClient.MeetingResponse(request); this.VerifyTransportRequirements(); this.VerifyWBXMLCapture(CommandName.MeetingResponse, response); this.VerifyMeetingResponseCommand(response); return(response); }
public void MSASCMD_S17_TC05_SmartForwardWithInstanceIdSuccess() { Site.Assume.AreNotEqual <string>("16.0", Common.GetConfigurationPropertyValue("ActiveSyncProtocolVersion", this.Site), "Recurrences cannot be added in protocol version 16.0"); #region User1 calls SendMail command to send one recurring meeting request to user2. string meetingRequestSubject = Common.GenerateResourceName(Site, "subject"); string attendeeEmailAddress = Common.GetMailAddress(this.User2Information.UserName, this.User2Information.UserDomain); this.SendWeeklyRecurrenceMeetingRequest(meetingRequestSubject, attendeeEmailAddress); #endregion #region User2 calls Sync command to sync user2 mailbox changes this.SwitchUser(this.User2Information); SyncResponse syncMeetingMailResponse = this.GetMailItem(this.User2Information.InboxCollectionId, meetingRequestSubject); // Record relative items for clean up. TestSuiteBase.RecordCaseRelativeItems(this.User2Information, this.User2Information.InboxCollectionId, meetingRequestSubject); #endregion #region User2 calls MeetingResponse command to accept the meeting string serverIDForMeetingRequest = TestSuiteBase.FindServerId(syncMeetingMailResponse, "Subject", meetingRequestSubject); MeetingResponseRequest meetingResponseRequest = TestSuiteBase.CreateMeetingResponseRequest(1, this.User2Information.InboxCollectionId, serverIDForMeetingRequest, string.Empty); // If the user accepts the meeting request, the meeting request mail will be deleted and calendar item will be created. MeetingResponseResponse meetingResponseResponse = this.CMDAdapter.MeetingResponse(meetingResponseRequest); Site.Assert.IsNotNull(meetingResponseResponse.ResponseData.Result[0].CalendarId, "If the meeting was accepted, server should return calendarId in response"); TestSuiteBase.RemoveRecordCaseRelativeItems(this.User2Information, this.User2Information.InboxCollectionId, meetingRequestSubject); this.GetMailItem(this.User2Information.DeletedItemsCollectionId, meetingRequestSubject); TestSuiteBase.RecordCaseRelativeItems(this.User2Information, this.User2Information.DeletedItemsCollectionId, meetingRequestSubject); #endregion #region User2 calls Sync command to sync user calendar changes SyncResponse syncCalendarResponse = this.GetMailItem(this.User2Information.CalendarCollectionId, meetingRequestSubject); string calendarItemID = TestSuiteBase.FindServerId(syncCalendarResponse, "Subject", meetingRequestSubject); string startTime = (string)TestSuiteBase.GetElementValueFromSyncResponse(syncCalendarResponse, calendarItemID, Response.ItemsChoiceType8.StartTime); Response.Recurrence recurrence = (Response.Recurrence)TestSuiteBase.GetElementValueFromSyncResponse(syncCalendarResponse, calendarItemID, Response.ItemsChoiceType8.Recurrence); Site.Assert.IsNotNull(recurrence, "If user2 received recurring meeting request, the calendar item should contain recurrence element"); // Record relative items for clean up. TestSuiteBase.RecordCaseRelativeItems(this.User2Information, this.User2Information.CalendarCollectionId, meetingRequestSubject); #endregion #region User2 calls SmartForward command to forward the calendar item to user3 with correct InstanceId value in SmartForward request string forwardFromUser = Common.GetMailAddress(this.User2Information.UserName, this.User2Information.UserDomain); string forwardToUser = Common.GetMailAddress(this.User3Information.UserName, this.User3Information.UserDomain); string forwardSubject = string.Format("FW:{0}", meetingRequestSubject); string forwardContent = Common.GenerateResourceName(Site, "forward:Meeting Instance body"); SmartForwardRequest smartForwardRequest = this.CreateSmartForwardRequest(this.User2Information.CalendarCollectionId, calendarItemID, forwardFromUser, forwardToUser, string.Empty, string.Empty, forwardSubject, forwardContent); // Set instanceID with format the same as required format "2010-03-20T22:40:00.000Z". string instanceID = ConvertInstanceIdFormat(startTime); smartForwardRequest.RequestData.Source.InstanceId = instanceID; SmartForwardResponse smartForwardResponse = this.CMDAdapter.SmartForward(smartForwardRequest); Site.Assert.AreEqual(string.Empty, smartForwardResponse.ResponseDataXML, "If SmartForward command executes successfully, server should return empty xml data"); #endregion #region After user2 forwards email to user3, sync user3 mailbox changes this.SwitchUser(this.User3Information); SyncResponse syncForwardResult = this.GetMailItem(this.User3Information.InboxCollectionId, forwardSubject); string forwardItemServerID = TestSuiteBase.FindServerId(syncForwardResult, "Subject", forwardSubject); // Sync user3 Calendar folder SyncResponse syncUser3CalendarFolder = this.GetMailItem(this.User3Information.CalendarCollectionId, forwardSubject); string user3CalendarItemID = TestSuiteBase.FindServerId(syncUser3CalendarFolder, "Subject", forwardSubject); // Record email items for clean up TestSuiteBase.RecordCaseRelativeItems(this.User3Information, this.User3Information.InboxCollectionId, forwardSubject); TestSuiteBase.RecordCaseRelativeItems(this.User3Information, this.User3Information.CalendarCollectionId, forwardSubject); #endregion #region Record the meeting forward notification mail which sent from server to User1. this.SwitchUser(this.User1Information); string notificationSubject = "Meeting Forward Notification: " + forwardSubject; TestSuiteBase.RecordCaseRelativeItems(this.User1Information, this.User1Information.DeletedItemsCollectionId, notificationSubject); this.GetMailItem(this.User1Information.DeletedItemsCollectionId, notificationSubject); #endregion // Add the debug information Site.Log.Add(LogEntryKind.Debug, "Verify MS-ASCMD_R538"); // Verify MS-ASCMD requirement: MS-ASCMD_R538 // If the calendar item with specified subject exists in user3 Calendar folder and email item exists in user3 Inbox folder which means user3 gets the forwarded mail. Site.CaptureRequirementIfIsTrue( user3CalendarItemID != null && forwardItemServerID != null, 538, @"[In SmartForward] When SmartForward is applied to a recurring meeting, the InstanceId element (section 2.2.3.83.2) specifies the ID of a particular occurrence in the recurring meeting."); }
public void MSASAIRS_S06_TC01_MeetingResponseWithPlainTextBody() { Site.Assume.AreNotEqual <string>("12.1", Common.GetConfigurationPropertyValue("ActiveSyncProtocolVersion", this.Site), "The Body element under meetingresponse:SendResponse element is supported when the MS-ASProtocolVersion header is set to 16.0. MS-ASProtocolVersion header value is determined using Common PTFConfig property named ActiveSyncProtocolVersion."); Site.Assume.AreNotEqual <string>("14.0", Common.GetConfigurationPropertyValue("ActiveSyncProtocolVersion", this.Site), "The Body element under meetingresponse:SendResponse element is supported when the MS-ASProtocolVersion header is set to 16.0. MS-ASProtocolVersion header value is determined using Common PTFConfig property named ActiveSyncProtocolVersion."); Site.Assume.AreNotEqual <string>("14.1", Common.GetConfigurationPropertyValue("ActiveSyncProtocolVersion", this.Site), "The Body element under meetingresponse:SendResponse element is supported when the MS-ASProtocolVersion header is set to 16.0. MS-ASProtocolVersion header value is determined using Common PTFConfig property named ActiveSyncProtocolVersion."); #region Call Sync command with Add element to add a no recurrence meeting to the server. string subject = Common.GenerateResourceName(Site, "Subject"); string attendeeEmail = Common.GetMailAddress(this.User2Information.UserName, this.User2Information.UserDomain); Dictionary <Request.ItemsChoiceType8, object> elementsToValueMap = TestSuiteHelper.SetMeetingProperties(subject, attendeeEmail, this.Site); DateTime startTime = DateTime.Now.AddMinutes(-5); DateTime endTime = startTime.AddHours(1); elementsToValueMap.Add(Request.ItemsChoiceType8.StartTime, startTime.ToString("yyyyMMddTHHmmssZ")); elementsToValueMap.Add(Request.ItemsChoiceType8.EndTime, endTime.ToString("yyyyMMddTHHmmssZ")); this.SyncAddMeeting(this.User1Information.CalendarCollectionId, elementsToValueMap); this.RecordCaseRelativeItems(this.User1Information.UserName, this.User1Information.CalendarCollectionId, subject); #endregion #region Call Sync command to get the added calendar item. SyncStore getChangeResult = this.GetSyncResult(subject, this.User1Information.CalendarCollectionId, null); Microsoft.Protocols.TestSuites.Common.DataStructures.Sync resultItem = TestSuiteHelper.GetSyncAddItem(getChangeResult, subject); #endregion #region Call SendMail command to send the meeting request to attendee without setting BusyStatus. Calendar calendarItem = resultItem.Calendar; calendarItem.BusyStatus = null; this.SendMeetingRequest(subject, calendarItem); #endregion #region Call Sync command to get the meeting request and accept it. this.SwitchUser(this.User2Information, true); // Sync mailbox changes SyncStore syncChangeResult = this.GetSyncResult(subject, this.User2Information.InboxCollectionId, null); Microsoft.Protocols.TestSuites.Common.DataStructures.Sync meetingRequestEmail = TestSuiteHelper.GetSyncAddItem(syncChangeResult, subject); Request.MeetingResponseRequestSendResponse sendResoponse = new Request.MeetingResponseRequestSendResponse() { Body = new Request.Body() { Type = 1, Data = "Accept this meeting." } }; // Accept the meeting request // Create a meeting response request item Request.MeetingResponseRequest meetingResponseRequestItem = new Request.MeetingResponseRequest { UserResponse = 1, CollectionId = this.User2Information.InboxCollectionId, RequestId = meetingRequestEmail.ServerId, SendResponse = sendResoponse, }; // Create a meeting response request MeetingResponseRequest meetingRequest = Common.CreateMeetingResponseRequest(new Request.MeetingResponseRequest[] { meetingResponseRequestItem }); MeetingResponseResponse response = this.ASAIRSAdapter.MeetingResponse(meetingRequest); this.Site.CaptureRequirementIfAreEqual <int>( 1, int.Parse(response.ResponseData.Result[0].Status), 1331, @"[In Body] When the Body element is a child of the meetingresponse:SendResponse element [or the composemail:SmartForward element], it has only the child elements Type and Data."); this.Site.CaptureRequirementIfAreEqual <int>( 1, int.Parse(response.ResponseData.Result[0].Status), 1333, @"[In Body] The Body element is a child of the meetingresponse:SendResponse element and the composemail:SmartForward element only when protocol version 16.0 is used."); // Because the Type element is 1 and client call the MeetingResponse command successful. // So R1400 will be verified. this.Site.CaptureRequirementIfAreEqual <int>( 1, int.Parse(response.ResponseData.Result[0].Status), 1400, @"[In Type (Body)] For calendar items in protocol version 16.0, the only valid values for this element [Type] is 1 (plain text)."); #endregion #region Call Sync command to get the calendar item. SyncStore getCalendarItemsResult = this.GetSyncResult(subject, this.User2Information.CalendarCollectionId, null); Microsoft.Protocols.TestSuites.Common.DataStructures.Sync calendarResult = TestSuiteHelper.GetSyncAddItem(getCalendarItemsResult, subject); Site.Assert.IsNotNull(calendarResult.Calendar.BusyStatus, "Element BusyStatus should be present."); #endregion }
/// <summary> /// This method is used to verify the MeetingResponse response related requirements. /// </summary> /// <param name="meetingResponse">MeetingResponse command response.</param> private void VerifyMeetingResponseCommand(MeetingResponseResponse meetingResponse) { Site.Assert.IsTrue(this.activeSyncClient.ValidationResult, "The schema validation result should be true."); Site.Assert.IsNotNull(meetingResponse.ResponseData, "The MeetingResponse element should not be null."); #region Capture code for MeetingResponse // Add the debug information. Site.Log.Add(LogEntryKind.Debug, "Verify MS-ASCMD_R3312"); // If the schema validation result is true and MeetingResponse is not null, this requirement can be verified. Site.CaptureRequirement( 3312, @"[In MeetingResponse] The MeetingResponse element is a required element in MeetingResponse command requests and MeetingResponse command responses that identifies the body of the HTTP POST as containing a MeetingResponse command (section 2.2.2.9)."); // Add the debug information. Site.Log.Add(LogEntryKind.Debug, "Verify MS-ASCMD_R1888"); // If the schema validation result is true and MeetingResponse is not null, this requirement can be verified. Site.CaptureRequirement( 1888, @"[In MeetingResponse] None [Element MeetingResponse in MeetingResponse command response has no parent element.]"); // Add the debug information. Site.Log.Add(LogEntryKind.Debug, "Verify MS-ASCMD_R1889"); // If the schema validation result is true and MeetingResponse is not null, this requirement can be verified. Site.CaptureRequirement( 1889, @"[In MeetingResponse] Element MeetingResponse in MeetingResponse command response, the child element is Result (section 2.2.3.146.1)."); // Add the debug information. Site.Log.Add(LogEntryKind.Debug, "Verify MS-ASCMD_R1890"); // If the schema validation result is true and MeetingResponse is not null, this requirement can be verified. Site.CaptureRequirement( 1890, @"[In MeetingResponse] Element MeetingResponse in MeetingResponse command response, the data type is container."); // Add the debug information. Site.Log.Add(LogEntryKind.Debug, "Verify MS-ASCMD_R1891"); // If the schema validation result is true and MeetingResponse is not null, this requirement can be verified. Site.CaptureRequirement( 1891, @"[In MeetingResponse] Element MeetingResponse in MeetingResponse command response, the number allowed is 1…1 (required)."); this.VerifyContainerDataType(); #endregion #region Capture code for Result Site.Assert.IsTrue(meetingResponse.ResponseData.Result != null && meetingResponse.ResponseData.Result.Length > 0, "The Result should not be null."); // Add the debug information. Site.Log.Add(LogEntryKind.Debug, "Verify MS-ASCMD_R3840"); // If the schema validation result is true and Result(MeetingResponse) is not null, this requirement can be verified. Site.CaptureRequirement( 3840, @"[In Result(MeetingResponse)] The Result element is a required child element of the MeetingResponse element in MeetingResponse command responses that serves as a container for elements that are sent to the client in the response."); // Add the debug information. Site.Log.Add(LogEntryKind.Debug, "Verify MS-ASCMD_R2508"); // If the schema validation result is true and Result(MeetingResponse) is not null, this requirement can be verified. Site.CaptureRequirement( 2508, @"[In Result(MeetingResponse)] Element Result in MeetingResponse command response (section 2.2.2.10), the parent element is MeetingResponse (section 2.2.3.100)."); // Add the debug information. Site.Log.Add(LogEntryKind.Debug, "Verify MS-ASCMD_R2509"); // If the schema validation result is true and Result(MeetingResponse) is not null, this requirement can be verified. Site.CaptureRequirement( 2509, @"[In Result(MeetingResponse)] Element Result in MeetingResponse command response (section 2.2.2.9), the child elements are RequestId (section 2.2.3.142), Status (section 2.2.3.167.8), CalendarId (section 2.2.3.18), InstanceId (section 2.2.3.87.1)."); // Add the debug information. Site.Log.Add(LogEntryKind.Debug, "Verify MS-ASCMD_R2510"); // If the schema validation result is true and Result(MeetingResponse) is not null, this requirement can be verified. Site.CaptureRequirement( 2510, @"[In Result(MeetingResponse)] Element Result in MeetingResponse command response (section 2.2.2.9), the data type is container ([MS-ASDTYPE] section 2.2)."); // Add the debug information. Site.Log.Add(LogEntryKind.Debug, "Verify MS-ASCMD_R2511"); // If the schema validation result is true and Result(MeetingResponse) is not null, this requirement can be verified. Site.CaptureRequirement( 2511, @"[In Result(MeetingResponse)] Element Result in MeetingResponse command response (section 2.2.2.9), the number allowed is 1...N (required)."); foreach (MeetingResponseResult result in meetingResponse.ResponseData.Result) { #region Capture code for RequestId if (result.RequestId != null) { // Add the debug information. Site.Log.Add(LogEntryKind.Debug, "Verify MS-ASCMD_R2467"); // If the schema validation result is true and RequestId is not null, this requirement can be verified. Site.CaptureRequirement( 2467, @"[In RequestId] Element RequestId in MeetingResponse command response, the parent element is Result (section 2.2.3.142.1)."); // Add the debug information. Site.Log.Add(LogEntryKind.Debug, "Verify MS-ASCMD_R2468"); // If the schema validation result is true and RequestId is not null, this requirement can be verified. Site.CaptureRequirement( 2468, @"[In RequestId] None [Element RequestId in MeetingResponse command response has no child element.]"); // Add the debug information. Site.Log.Add(LogEntryKind.Debug, "Verify MS-ASCMD_R2469"); // If the schema validation result is true and RequestId is not null, this requirement can be verified. Site.CaptureRequirement( 2469, @"[In RequestId] Element RequestId in MeetingResponse command response , the data type is string."); // Add the debug information. Site.Log.Add(LogEntryKind.Debug, "Verify MS-ASCMD_R2470"); // If the schema validation result is true and RequestId is not null, this requirement can be verified. Site.CaptureRequirement( 2470, @"[In RequestId] Element RequestId in MeetingResponse command response , the number allowed is 0…1 (optional)."); // Add the debug information. Site.Log.Add(LogEntryKind.Debug, "Verify MS-ASCMD_R5871"); // Verify MS-ASCMD requirement: MS-ASCMD_R5871 Site.CaptureRequirementIfIsTrue( result.RequestId.Length <= 64, 5871, @"[In RequestId] The RequestId element value is not larger than 64 characters in length."); this.VerifyStringDataType(); } #endregion #region Capture code for CalendarID if (result.CalendarId != null) { // Add the debug information. Site.Log.Add(LogEntryKind.Debug, "Verify MS-ASCMD_R1107"); // If the schema validation result is true and CalendarId is not null, this requirement can be verified. Site.CaptureRequirement( 1107, @"[In CalendarId] Element CalendarId in MeetingResponse command response (section 2.2.2.10), the parent element is Result (section 2.2.3.146.1)."); // Add the debug information. Site.Log.Add(LogEntryKind.Debug, "Verify MS-ASCMD_R1108"); // If the schema validation result is true and CalendarId is not null, this requirement can be verified. Site.CaptureRequirement( 1108, @"[In CalendarId] None [Element CalendarId in MeetingResponse command response (section 2.2.2.10) has no child element.]"); // Add the debug information. Site.Log.Add(LogEntryKind.Debug, "Verify MS-ASCMD_R1109"); // If the schema validation result is true and CalendarId is not null, this requirement can be verified. Site.CaptureRequirement( 1109, @"[In CalendarId] Element CalendarId in MeetingResponse command response (section 2.2.2.10), the data type is string ([MS-ASDTYPE] section 2.7)."); // Add the debug information. Site.Log.Add(LogEntryKind.Debug, "Verify MS-ASCMD_R1110"); // If the schema validation result is true and CalendarId is not null, this requirement can be verified. Site.CaptureRequirement( 1110, @"[In CalendarId] Element CalendarId in MeetingResponse command response (section 2.2.2.10), the number allowed is 0...1 (optional)."); // Add the debug information. Site.Log.Add(LogEntryKind.Debug, "Verify MS-ASCMD_R5868"); // Verify MS-ASCMD requirement: MS-ASCMD_R5868 Site.CaptureRequirementIfIsTrue( result.CalendarId.Length <= 64, 5868, @"[In CalendarId] The CalendarId element value is not larger than 64 characters in length."); this.VerifyStringDataType(); } #endregion #region Capture code for Status // Add the debug information. Site.Log.Add(LogEntryKind.Debug, "Verify MS-ASCMD_R4715"); // If the schema validation result is true, this requirement can be verified. Site.CaptureRequirement( 4175, @"[In Status(MeetingResponse)] The Status element is a required child element of the Result element in MeetingResponse command responses that indicates the success or failure of the MeetingResponse command request (section 2.2.2.10)."); // Add the debug information. Site.Log.Add(LogEntryKind.Debug, "Verify MS-ASCMD_R2731"); // If the schema validation result is true, this requirement can be verified. Site.CaptureRequirement( 2731, @"[In Status(MeetingResponse)] Element Status in MeetingResponse command response (section 2.2.2.10),the parent eleemnt is Result (section 2.2.3.146.1)."); // Add the debug information. Site.Log.Add(LogEntryKind.Debug, "Verify MS-ASCMD_R2732"); // If the schema validation result is true, this requirement can be verified. Site.CaptureRequirement( 2732, @"[In Status(MeetingResponse)] None [Element Status in MeetingResponse command response (section 2.2.2.10) has no child element.]"); // Add the debug information. Site.Log.Add(LogEntryKind.Debug, "Verify MS-ASCMD_R2733"); // Verify MS-ASCMD requirement: MS-ASCMD_R2733 // If the schema validation result is true, this requirement can be verified. Site.CaptureRequirement( 2733, @"[In Status(MeetingResponse)] Element Status in MeetingResponse command response (section 2.2.2.10), the data type is integer ([MS-ASDTYPE] section 2.6)."); // Add the debug information. Site.Log.Add(LogEntryKind.Debug, "Verify MS-ASCMD_R2734"); // If the schema validation result is true, this requirement can be verified. Site.CaptureRequirement( 2734, @"[In Status(MeetingResponse)] Element Status in MeetingResponse command response (section 2.2.2.10), the number allowed is 1…1 (required)."); Common.VerifyActualValues("Status(MeetingResponse)", AdapterHelper.ValidStatus(new string[] { "1", "2", "3", "4" }), result.Status.ToString(), this.Site); // Add the debug information. Site.Log.Add(LogEntryKind.Debug, "Verify MS-ASCMD_R4177"); // Verify MS-ASCMD requirement: MS-ASCMD_R4177 // If above Common.VerifyActualValues method is not failed, this requirement can be verified. Site.CaptureRequirement( 4177, @"[In Status(MeetingResponse)] The following table lists the status codes [1,2,3,4] for the MeetingResponse command (section 2.2.2.10). For information about the scope of the status value and for status values common to all ActiveSync commands, see section 2.2.4."); this.VerifyIntegerDataType(); #endregion } #endregion }