private void VerifyRecipientRowStructure(RecipientRow recipientRow)
{
// Add the debug information
Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCDATA_R131");
// Verify MS-OXCROPS requirement: MS-OXCDATA_R131
Site.CaptureRequirementIfAreEqual<Type>(
typeof(byte),
recipientRow.AddressPrfixUsed.GetType(),
"MS-OXCDATA",
131,
@"[In RecipientRow Structure]AddressPrefixUsed (optional) (1 byte): Unsigned integer.");
// Add the debug information
Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCDATA_R134");
// Verify MS-OXCROPS requirement: MS-OXCDATA_R134
Site.CaptureRequirementIfAreEqual<Type>(
typeof(byte),
recipientRow.DisplayType.GetType(),
"MS-OXCDATA",
134,
@"[In RecipientRow Structure] DisplayType (optional) (1 byte): An enumeration.");
// Add the debug information
Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCDATA_R2764");
// Verify MS-OXCROPS requirement: MS-OXCDATA_R2764
bool isVerifyR2764 = recipientRow.DisplayType == 0 ||
recipientRow.DisplayType == 1 ||
recipientRow.DisplayType == 2 ||
recipientRow.DisplayType == 3 ||
recipientRow.DisplayType == 4 ||
recipientRow.DisplayType == 5 ||
recipientRow.DisplayType == 6;
Site.CaptureRequirementIfIsTrue(
isVerifyR2764,
"MS-OXCDATA",
2764,
@"[In RecipientRow Structure] Valid values [0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06] for this field [DisplayType (optional) (1 byte)] are specified in the following table.");
// Add the debug information
Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCDATA_R140");
// Verify MS-OXCROPS requirement: MS-OXCDATA_R140
Site.CaptureRequirementIfAreEqual<Type>(
typeof(ushort),
recipientRow.EntryIdSize.GetType(),
"MS-OXCDATA",
140,
@"[In RecipientRow Structure] EntryIdSize (optional) (2 bytes): An unsigned integer.");
// Add the debug information
Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCDATA_R148");
// Verify MS-OXCROPS requirement: MS-OXCDATA_R148
Site.CaptureRequirementIfAreEqual<Type>(
typeof(ushort),
recipientRow.SearchKeySize.GetType(),
"MS-OXCDATA",
148,
@"[In RecipientRow Structure] SearchKeySize (optional) (2 bytes): An unsigned integer.");
// Add the debug information
Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCDATA_R176");
// Verify MS-OXCROPS requirement: MS-OXCDATA_R176
Site.CaptureRequirementIfAreEqual<Type>(
typeof(ushort),
recipientRow.RecipientColumnCount.GetType(),
"MS-OXCDATA",
176,
@"[In RecipientRow Structure] RecipientColumnCount (2 bytes): An unsigned integer.");
// Add the debug information
Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCDATA_R177");
// Verify MS-OXCROPS requirement: MS-OXCDATA_R177
Site.CaptureRequirementIfAreEqual<int>(
recipientRow.RecipientProperties.PropertyValues.Count,
recipientRow.RecipientColumnCount,
"MS-OXCDATA",
177,
@"[In RecipientRow] RecipientColumnCount (2 bytes): This value [RecipientColumnCount] specifies the number of columns from the RecipientColumns field that are included in the RecipientProperties field.");
}