Skip to content

Commit 6b37dbb

Browse files
committed
Added MAPI tests
1 parent 79a1e56 commit 6b37dbb

File tree

1 file changed

+44
-0
lines changed

1 file changed

+44
-0
lines changed

tests/api-test.ts

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -263,6 +263,50 @@ describe('EmailApi', function() {
263263
expect(result.body.value[0].displayName).toContain("Thomas");
264264
});
265265

266+
it('Create MAPI file #pipeline', async function() {
267+
var fileName = uuidv4() + '.msg';
268+
await api.createMapi(new requests.CreateMapiRequest(
269+
fileName, new models.HierarchicalObjectRequest(
270+
new models.HierarchicalObject("IPM.Contact", undefined, [
271+
new models.PrimitiveObject("Tag:'PidTagMessageClass':0x1A:String", undefined, "IPM.Contact"),
272+
new models.PrimitiveObject("Tag:'PidTagSubject':0x37:String"),
273+
new models.PrimitiveObject("Tag:'PidTagSubjectPrefix':0x3D:String"),
274+
new models.PrimitiveObject("Tag:'PidTagMessageFlags':0xE07:Integer32", undefined, "8"),
275+
new models.PrimitiveObject("Tag:'PidTagNormalizedSubject':0xE1D:String"),
276+
new models.PrimitiveObject("Tag:'PidTagBody':0x1000:String"),
277+
new models.PrimitiveObject("Tag:'PidTagStoreSupportMask':0x340D:Integer32", undefined, "265849"),
278+
new models.PrimitiveObject("Tag:'PidTagSurname':0x3A11:String", undefined, "Surname"),
279+
new models.PrimitiveObject("Tag:'PidTagOtherTelephoneNumber':0x3A1F:String", undefined, "+79123456789"),
280+
new models.PrimitiveObject("Tag:'':0x6662:Integer32", undefined, "0"),
281+
new models.PrimitiveObject(
282+
"Lid:'PidLidAddressBookProviderArrayType':0x8029:Integer32:00062004-0000-0000-c000-000000000046",
283+
undefined, "1")
284+
]),
285+
new models.StorageFolderLocation(storage, folder))));
286+
var exist = await api.objectExists(new requests.ObjectExistsRequest(folder + "/" + fileName, storage));
287+
expect(exist.body.exists).toBeTrue();
288+
});
289+
290+
it('Add attachment to MAPI #pipeline', async function() {
291+
var fileName = await createCalendar();
292+
var attachmentName = await createCalendar();
293+
await api.addMapiAttachment(new requests.AddMapiAttachmentRequest(
294+
fileName, attachmentName, new models.AddAttachmentRequest(
295+
new models.StorageFolderLocation(storage, folder),
296+
new models.StorageFolderLocation(storage, folder))));
297+
var downloaded = await api.getCalendarAttachment(new requests.GetCalendarAttachmentRequest(
298+
fileName, attachmentName, folder, storage));
299+
var calendarRaw = downloaded.body.toString()
300+
expect(calendarRaw).toContain('Aspose Ltd')
301+
});
302+
303+
it('Get MAPI properties #pipeline', async function () {
304+
var fileName = await createCalendar();
305+
var properties = await api.getMapiProperties(new requests.GetMapiPropertiesRequest(
306+
fileName, folder, storage));
307+
expect(properties.body.hierarchicalObject.name).toContain("IPM.Schedule");
308+
});
309+
266310
it('Discover email config #pipeline', async function() {
267311
var configs = await api.discoverEmailConfig(new requests.DiscoverEmailConfigRequest(
268312
'example@gmail.com', true));

0 commit comments

Comments
 (0)