private void InitHandle(ITestSite site)
{
#region Open TestRootFolder
this.Initialize(site);
bool isConnected = this.RpcConnect(LogonType.Mailbox);
this.Site.Assert.IsTrue(isConnected, "Rpc connect method should be executed successfully.");
// Logon to the private mailbox.
RopLogonResponse logonRes;
uint logonHandle = this.RopLogon(LogonType.Mailbox, out logonRes, Common.GetConfigurationPropertyValue("UserEssdn", site), true);
// Open inbox folder.
RopOpenFolderResponse openRes;
uint inboxHandle = this.RopOpenFolder(logonHandle, out openRes, logonRes.FolderIds[4], true);
// Empty inbox folder.
this.RopEmptyFolder(inboxHandle, Convert.ToByte(false), true);
// Create root folder.
RopCreateFolderResponse testFolderRes;
this.cprptTestFolderName = RootFolderName;
uint testRootFolderHandle = this.RopCreateFolder(inboxHandle, out testFolderRes, this.cprptTestFolderName, "Comment: " + this.cprptTestFolderName, true);
rootFolderId = testFolderRes.FolderId;
#endregion
#region Create sub folder
RopCreateFolderResponse createFolderResponse;
for (int i = 0; i < 3; i++)
{
string displayName = FolderDisplayName + i.ToString();
cprptFolderHandle[i] = this.RopCreateFolder(testRootFolderHandle, out createFolderResponse, displayName, "Comment: " + displayName, true);
cprptFolderId[i] = createFolderResponse.FolderId;
this.RopEmptyFolder(cprptFolderHandle[i], Convert.ToByte(false), true);
}
#endregion
#region Create message and attachment
RopCreateMessageResponse createMessageResponse;
RopSaveChangesMessageResponse saveChangesMessageResponse;
for (int i = 0; i < 3; i++)
{
// Create message.
cprptMessageHandle[i] = this.RopCreateMessage(cprptFolderHandle[0], cprptFolderId[0], ConstValues.RopCreateMessageAssociatedFlagNone, out createMessageResponse, true);
if (i == 0)
{
for (int j = 0; j < 3; j++)
{
// Create attachment in the first message.
RopCreateAttachmentResponse createAttachmentResponse;
cprptAttachmentHandle[j] = this.RopCreateAttachment(cprptMessageHandle[0], out createAttachmentResponse, true);
cprptAttachmentId[j] = createAttachmentResponse.AttachmentID;
this.RopSaveChangesAttachment(cprptAttachmentHandle[j], true);
}
}
saveChangesMessageResponse = this.RopSaveChangesMessage(cprptMessageHandle[i], true);
cprptMessageId[i] = saveChangesMessageResponse.MessageId;
}
#endregion
this.RopRelease(logonHandle);
bool isDisconnected = this.RpcDisconnect();
this.Site.Assert.IsTrue(isDisconnected, "RPC disconnect should be executed successfully.");
}