From: Carsten Schoenert Date: Sat, 30 Jun 2018 09:09:53 +0000 (+0200) Subject: Build also gdata-provider as xpi file X-Git-Tag: archive/raspbian/1%60.7.1-1+rpi1^2~6 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=7b1e92dac7fa5073c3a0a4cc0ce10a7e73644607;p=thunderbird.git Build also gdata-provider as xpi file https://bugzilla.mozilla.org/show_bug.cgi?id=1471326 Gbp-Pq: Topic fixes Gbp-Pq: Name Build-also-gdata-provider-as-xpi-file.patch --- diff --git a/comm/calendar/lightning/versions.mk b/comm/calendar/lightning/versions.mk index 5ecbb39f3c..a7f7c95a50 100644 --- a/comm/calendar/lightning/versions.mk +++ b/comm/calendar/lightning/versions.mk @@ -12,8 +12,6 @@ else LIGHTNING_VERSION := $(shell $(PYTHON) $(commtopsrcdir)/calendar/lightning/build/makeversion.py $(word 1,$(MOZ_PKG_VERSION) $(THUNDERBIRD_VERSION))) endif -#GDATA_VERSION := $(shell $(PYTHON) $(commtopsrcdir)/calendar/providers/gdata/makeversion.py $(LIGHTNING_VERSION)) - # For extensions we require a max version that is compatible across security releases. # THUNDERBIRD_MAXVERSION and SEAMONKEY_MAXVERSION is our method for doing that. # Alpha versions 10.0a1 and 10.0a2 aren't affected diff --git a/comm/calendar/providers/gdata/Makefile.in b/comm/calendar/providers/gdata/Makefile.in index 647cc3fdbb..c8db78a996 100644 --- a/comm/calendar/providers/gdata/Makefile.in +++ b/comm/calendar/providers/gdata/Makefile.in @@ -2,32 +2,24 @@ # License, v. 2.0. If a copy of the MPL was not distributed with this # file, You can obtain one at http://mozilla.org/MPL/2.0/. -XPI_PKGNAME = gdata-provider-$(GDATA_VERSION).$(AB_CD).$(MOZ_PKG_PLATFORM) -XPI_VERSION = $(GDATA_VERSION) +XPI_NAME = gdata-provider +XPI_PKGNAME = gdata-provider-$(GDATA_VERSION).$(AB_CD) XPI_EM_ID = {a62ef8ec-5fdc-40c2-873c-223b8a6925cc} XPI_INSTALL_EXTENSION = $(XPI_EM_ID) -DEFINES += -DLIGHTNING_VERSION=$(LIGHTNING_VERSION) \ - -DSEAMONKEY_VERSION=$(SEAMONKEY_VERSION) \ - -DTHUNDERBIRD_VERSION=$(THUNDERBIRD_VERSION) \ - -DCOMM_BUILD=$(COMM_BUILD) \ - -DGDATA_VERSION=$(GDATA_VERSION) \ - $(NULL) - -ifeq (cocoa,$(MOZ_WIDGET_TOOLKIT)) -# If the macbundle dist dir was already created, sync the gdata provider here to avoid -# the need to make -C objdir/mail/app each time -tools repackage:: - [ -d $(DIST)/$(MOZ_MACBUNDLE_NAME) ] && rsync -a $(FINAL_TARGET)/ $(DIST)/$(MOZ_MACBUNDLE_NAME)/Contents/Resources/extensions/$(XPI_EM_ID) || true +ifdef MOZ_SUITE +LIGHTNING_VERSION := $(shell $(PYTHON) $(commtopsrcdir)/calendar/lightning/build/makeversion.py $(THUNDERBIRD_VERSION)) +else +LIGHTNING_VERSION := $(shell $(PYTHON) $(commtopsrcdir)/calendar/lightning/build/makeversion.py $(word 1,$(MOZ_PKG_VERSION) $(THUNDERBIRD_VERSION))) endif -# stage the extension for use in packaged tests -PKG_STAGE = $(DIST)/test-stage +GDATA_VERSION := $(shell $(PYTHON) $(commtopsrcdir)/calendar/providers/gdata/makeversion.py $(LIGHTNING_VERSION)) +THUNDERBIRD_VERSION := $(shell cat $(commtopsrcdir)/mail/config/version.txt) +SEAMONKEY_VERSION := $(shell cat $(commtopsrcdir)/suite/config/version.txt) -stage-package: - $(NSINSTALL) -D $(PKG_STAGE)/extensions/$(XPI_EM_ID) - (cd $(FINAL_TARGET) && tar $(TAR_CREATE_FLAGS) - *) | (cd $(PKG_STAGE)/extensions/$(XPI_EM_ID) && tar -xf -) +DEFINES += -DSEAMONKEY_VERSION=$(SEAMONKEY_VERSION) \ + -DTHUNDERBIRD_VERSION=$(THUNDERBIRD_VERSION) \ + -DGDATA_VERSION=$(GDATA_VERSION) \ + $(NULL) -include $(moztopsrcdir)/config/rules.mk -include $(commtopsrcdir)/calendar/lightning/versions.mk include $(commtopsrcdir)/calendar/lightning/lightning-packager.mk diff --git a/comm/calendar/providers/gdata/moz.build b/comm/calendar/providers/gdata/moz.build index 3460ac8b22..45a12edca2 100644 --- a/comm/calendar/providers/gdata/moz.build +++ b/comm/calendar/providers/gdata/moz.build @@ -4,6 +4,7 @@ # file, You can obtain one at http://mozilla.org/MPL/2.0/. XPI_NAME = 'gdata-provider' +export('XPI_NAME') FINAL_TARGET_PP_FILES += ['install.rdf'] @@ -26,6 +27,9 @@ EXTRA_COMPONENTS += [ 'components/calGoogleCalendar.manifest', ] +USE_EXTENSION_MANIFEST = True +export('USE_EXTENSION_MANIFEST') + JAR_MANIFESTS += ['jar.mn'] JS_PREFERENCE_FILES += [ diff --git a/comm/calendar/test/unit/test_gdata_provider.js b/comm/calendar/test/unit/test_gdata_provider.js index c9e264192f..1118501963 100644 --- a/comm/calendar/test/unit/test_gdata_provider.js +++ b/comm/calendar/test/unit/test_gdata_provider.js @@ -508,7 +508,7 @@ function run_test() { }); } -add_task(function* test_migrate_cache() { +add_task(async function test_migrate_cache() { let uriString = "googleapi://xpcshell/?calendar=xpcshell%40example.com"; let uri = Services.io.newURI(uriString); let client = cal.getCalendarManager().createCalendar("gdata", uri); @@ -520,26 +520,26 @@ add_task(function* test_migrate_cache() { }); // No version, should not reset - equal(yield migrateStorageCache(), false); + equal(await migrateStorageCache(), false); equal(client.getProperty("cache.version"), 3); // Check migrate 1 -> 2 unwrapped.CACHE_DB_VERSION = 2; client.setProperty("cache.version", 1); - equal(yield migrateStorageCache(), true); + equal(await migrateStorageCache(), true); equal(client.getProperty("cache.version"), 2); // Check migrate 2 -> 3 normal calendar unwrapped.CACHE_DB_VERSION = 3; client.setProperty("cache.version", 2); - equal(yield migrateStorageCache(), false); + equal(await migrateStorageCache(), false); // Check migrate 2 -> 3 birthday calendar unwrapped.CACHE_DB_VERSION = 3; uri = "googleapi://xpcshell/?calendar=%23contacts%40group.v.calendar.google.com"; unwrapped.uri = Services.io.newURI(uri); client.setProperty("cache.version", 2); - equal(yield migrateStorageCache(), true); + equal(await migrateStorageCache(), true); }); add_test(function test_migrate_uri() { @@ -573,7 +573,7 @@ add_test(function test_migrate_uri() { run_next_test(); }); -add_task(function* test_dateToJSON() { +add_task(async function test_dateToJSON() { function _createDateTime(tzid, offset=0) { let offsetFrom = offset <= 0 ? "-0" + (offset - 1) : "+0" + (offset - 1) + "00"; let offsetTo = "+0" + offset + "00"; @@ -672,7 +672,7 @@ add_task(function* test_dateToJSON() { deepEqual(dateToJSON(date), { date: "2015-01-30" }); }); -add_task(function* test_JSONToDate() { +add_task(async function test_JSONToDate() { function convert(aEntry, aTimezone="Europe/Berlin") { let tzs = cal.getTimezoneService(); let calendarTz = tzs.getTimezone(aTimezone); @@ -716,9 +716,9 @@ add_task(function* test_JSONToDate() { equal(convert({ dateTime: "2015-01-02T03:04:05+05:00" }), "20150102T030405 in Antarctica/Mawson"); }); -add_task(function* test_organizerCN() { +add_task(async function test_organizerCN() { gServer.events = []; - let client = yield gServer.getClient(); + let client = await gServer.getClient(); equal(client.getProperty("organizerCN"), null); gServer.resetClient(client); @@ -735,12 +735,12 @@ add_task(function* test_organizerCN() { end: { dateTime: "2006-06-10T20:00:00+02:00" }, iCalUID: "go6ijb0b46hlpbu4eeu92njevo@google.com" }]; - client = yield gServer.getClient(); + client = await gServer.getClient(); equal(client.getProperty("organizerCN"), gServer.creator.displayName); gServer.resetClient(client); }); -add_task(function* test_always_readOnly() { +add_task(async function test_always_readOnly() { gServer.events = [{ kind: "calendar#event", etag: "\"2299601498276000\"", @@ -755,26 +755,26 @@ add_task(function* test_always_readOnly() { iCalUID: "go6ijb0b46hlpbu4eeu92njevo@google.com" }]; gServer.calendarListData.accessRole = "freeBusyReader"; - let client = yield gServer.getClient(); + let client = await gServer.getClient(); let pclient = cal.async.promisifyCalendar(client); ok(client.readOnly); client.readOnly = false; ok(client.readOnly); - let items = yield pclient.getAllItems(); + let items = await pclient.getAllItems(); equal(items.length, 1); notEqual(items[0].title, "New Event"); gServer.resetClient(client); gServer.calendarListData.accessRole = "reader"; - client = yield gServer.getClient(); + client = await gServer.getClient(); ok(client.readOnly); client.readOnly = false; ok(client.readOnly); gServer.resetClient(client); }); -add_task(function* test_reset_sync() { +add_task(async function test_reset_sync() { gServer.tasks = [{ kind: "tasks#task", id: "MTEyMDE2MDE5NzE0NjYzMDk4ODI6MDo0MDI1NDg2NjU", @@ -819,18 +819,18 @@ add_task(function* test_reset_sync() { end: { dateTime: "2006-06-10T20:00:00+02:00" }, iCalUID: "fepf8uf6n7n04w7feukucs9n8e@google.com" }]; - let client = yield gServer.getClient(); + let client = await gServer.getClient(); let uncached = client.wrappedJSObject.mUncachedCalendar.wrappedJSObject; let pclient = cal.async.promisifyCalendar(client); - let items = yield pclient.getAllItems(); + let items = await pclient.getAllItems(); equal(items.length, 4); notEqual(client.getProperty("syncToken.events"), ""); notEqual(client.getProperty("lastUpdated.tasks"), ""); - yield uncached.resetSync(); - items = yield pclient.getAllItems(); + await uncached.resetSync(); + items = await pclient.getAllItems(); equal(items.length, 0); equal(client.getProperty("syncToken.events"), ""); @@ -839,7 +839,7 @@ add_task(function* test_reset_sync() { gServer.resetClient(client); }); -add_task(function* test_basicItems() { +add_task(async function test_basicItems() { gServer.events = [{ kind: "calendar#event", etag: "\"2299601498276000\"", @@ -903,10 +903,10 @@ add_task(function* test_basicItems() { }] }]; - let client = yield gServer.getClient(); + let client = await gServer.getClient(); let pclient = cal.async.promisifyCalendar(client); - let items = yield pclient.getAllItems(); + let items = await pclient.getAllItems(); equal(items.length, 2); let event = cal.item.isEvent(items[0]) ? items[0] : items[1]; @@ -965,8 +965,8 @@ add_task(function* test_basicItems() { gServer.resetClient(client); }); -add_task(function* test_addModifyDeleteItem() { - let client = yield gServer.getClient(); +add_task(async function test_addModifyDeleteItem() { + let client = await gServer.getClient(); let pclient = cal.async.promisifyCalendar(client.wrappedJSObject); equal(gServer.events.length, 0); equal(gServer.tasks.length, 0); @@ -1016,11 +1016,11 @@ add_task(function* test_addModifyDeleteItem() { ].join("\r\n")); // Add an event - let addedEvent = yield pclient.adoptItem(event); + let addedEvent = await pclient.adoptItem(event); notEqual(addedEvent.id, null); equal(addedEvent.organizer.id, "mailto:xpcshell@example.com"); - let items = yield pclient.getAllItems(); + let items = await pclient.getAllItems(); equal(items.length, 1); equal(items[0].id, addedEvent.id); equal(items[0].organizer.id, "mailto:xpcshell@example.com"); @@ -1029,10 +1029,10 @@ add_task(function* test_addModifyDeleteItem() { equal(gServer.tasks.length, 0); // Add a task - let addedTask = yield pclient.adoptItem(task); + let addedTask = await pclient.adoptItem(task); notEqual(addedTask.id, null); - items = yield pclient.getAllItems(); + items = await pclient.getAllItems(); equal(items.length, 2); equal(items[1].id, addedTask.id); @@ -1043,10 +1043,10 @@ add_task(function* test_addModifyDeleteItem() { let newEvent = items[0].clone(); newEvent.title = "changed"; - let modifiedEvent = yield pclient.modifyItem(newEvent, items[0]); + let modifiedEvent = await pclient.modifyItem(newEvent, items[0]); equal(modifiedEvent.title, "changed"); notEqual(modifiedEvent.getProperty("LAST-MODIFIED"), addedEvent.getProperty("LAST-MODIFIED")); - items = yield pclient.getAllItems(); + items = await pclient.getAllItems(); equal(items.length, 2); equal(items[0].title, "changed"); equal(items[0].id, addedEvent.id); @@ -1058,10 +1058,10 @@ add_task(function* test_addModifyDeleteItem() { let newTask = items[1].clone(); newTask.title = "changed"; - let modifiedTask = yield pclient.modifyItem(newTask, items[1]); + let modifiedTask = await pclient.modifyItem(newTask, items[1]); equal(modifiedTask.title, "changed"); notEqual(modifiedTask.getProperty("LAST-MODIFIED"), addedTask.getProperty("LAST-MODIFIED")); - items = yield pclient.getAllItems(); + items = await pclient.getAllItems(); equal(items.length, 2); equal(items[1].title, "changed"); equal(items[1].id, addedTask.id); @@ -1070,15 +1070,15 @@ add_task(function* test_addModifyDeleteItem() { equal(gServer.tasks.length, 1); // Delete an event - yield pclient.deleteItem(modifiedEvent); - items = yield pclient.getAllItems(); + await pclient.deleteItem(modifiedEvent); + items = await pclient.getAllItems(); equal(items.length, 1); equal(gServer.events.length, 0); equal(gServer.tasks.length, 1); // Delete a task - yield pclient.deleteItem(modifiedTask); - items = yield pclient.getAllItems(); + await pclient.deleteItem(modifiedTask); + items = await pclient.getAllItems(); equal(items.length, 0); equal(gServer.events.length, 0); equal(gServer.tasks.length, 0); @@ -1086,8 +1086,8 @@ add_task(function* test_addModifyDeleteItem() { gServer.resetClient(client); }); -add_task(function* test_recurring_event() { - let client = yield gServer.getClient(); +add_task(async function test_recurring_event() { + let client = await gServer.getClient(); let pclient = cal.async.promisifyCalendar(client.wrappedJSObject); let event = cal.createEvent([ @@ -1099,7 +1099,7 @@ add_task(function* test_recurring_event() { "END:VEVENT" ].join("\r\n")); - event = yield pclient.addItem(event); + event = await pclient.addItem(event); equal(gServer.events.length, 1); equal(gServer.events[0].recurrence.length, 1); equal(gServer.events[0].recurrence[0], "RRULE:FREQ=WEEKLY"); @@ -1109,7 +1109,7 @@ add_task(function* test_recurring_event() { changedOcc.title = "changed"; event.recurrenceInfo.modifyException(occ, true); - event = yield pclient.modifyItem(changedOcc, occ); + event = await pclient.modifyItem(changedOcc, occ); occ = event.recurrenceInfo.getNextOccurrence(event.startDate); equal(occ.title, "changed"); equal(gServer.events.length, 2); @@ -1117,7 +1117,7 @@ add_task(function* test_recurring_event() { gServer.resetClient(client); }); -add_task(function* test_recurring_exception() { +add_task(async function test_recurring_exception() { gServer.syncs = [{ token: "1", events: [{ @@ -1162,10 +1162,10 @@ add_task(function* test_recurring_exception() { }] }]; - let client = yield gServer.getClient(); + let client = await gServer.getClient(); let pclient = cal.async.promisifyCalendar(client.wrappedJSObject); - let items = yield pclient.getAllItems(); + let items = await pclient.getAllItems(); equal(items.length, 1); let exIds = items[0].recurrenceInfo.getExceptionIds({}); @@ -1175,9 +1175,9 @@ add_task(function* test_recurring_exception() { equal(ex.title, "New Event changed"); client.refresh(); - yield gServer.waitForLoad(client); + await gServer.waitForLoad(client); - items = yield pclient.getAllItems(); + items = await pclient.getAllItems(); equal(items.length, 1); exIds = items[0].recurrenceInfo.getExceptionIds({}); @@ -1186,7 +1186,7 @@ add_task(function* test_recurring_exception() { gServer.resetClient(client); }); -add_task(function* test_recurring_cancelled_exception() { +add_task(async function test_recurring_cancelled_exception() { gServer.syncs = [{ token: "1", events: [{ @@ -1204,18 +1204,18 @@ add_task(function* test_recurring_cancelled_exception() { }] }]; - let client = yield gServer.getClient(); + let client = await gServer.getClient(); let pclient = cal.async.promisifyCalendar(client.wrappedJSObject); - let items = yield pclient.getAllItems(); + let items = await pclient.getAllItems(); equal(items.length, 0); gServer.resetClient(client); }); -add_task(function* test_import_invitation() { +add_task(async function test_import_invitation() { Preferences.set("calendar.google.enableAttendees", true); - let client = yield gServer.getClient(); + let client = await gServer.getClient(); let pclient = cal.async.promisifyCalendar(client.wrappedJSObject); let event = cal.createEvent([ "BEGIN:VEVENT", @@ -1236,14 +1236,14 @@ add_task(function* test_import_invitation() { "END:VEVENT" ].join("\r\n")); - let addedItem = yield pclient.adoptItem(event); + let addedItem = await pclient.adoptItem(event); equal(gServer.events.length, 1); equal(addedItem.icalString, event.icalString); gServer.resetClient(client); Preferences.set("calendar.google.enableAttendees", false); }); -add_task(function* test_modify_invitation() { +add_task(async function test_modify_invitation() { Preferences.set("calendar.google.enableAttendees", true); let organizer = { displayName: "organizer name", @@ -1278,10 +1278,10 @@ add_task(function* test_modify_invitation() { }]; // Case #1: User is attendee - let client = yield gServer.getClient(); + let client = await gServer.getClient(); let pclient = cal.async.promisifyCalendar(client.wrappedJSObject); - let items = yield pclient.getAllItems(); + let items = await pclient.getAllItems(); equal(items.length, 1); let item = items[0]; @@ -1297,7 +1297,7 @@ add_task(function* test_modify_invitation() { att.participationStatus = "ACCEPTED"; newItem.addAttendee(att); - yield pclient.modifyItem(newItem, items[0]); + await pclient.modifyItem(newItem, items[0]); equal(gServer.lastMethod, "PATCH"); // Case #2: User is organizer @@ -1318,10 +1318,10 @@ add_task(function* test_modify_invitation() { gServer.events[0].creator = gServer.creator; gServer.events[0].attendees = [organizer, attendee]; - client = yield gServer.getClient(); + client = await gServer.getClient(); pclient = cal.async.promisifyCalendar(client.wrappedJSObject); - items = yield pclient.getAllItems(); + items = await pclient.getAllItems(); equal(items.length, 1); item = items[0]; @@ -1337,13 +1337,13 @@ add_task(function* test_modify_invitation() { org.participationStatus = "TENTATIVE"; newItem.addAttendee(org); - modifiedItem = yield pclient.modifyItem(newItem, items[0]); + modifiedItem = await pclient.modifyItem(newItem, items[0]); equal(gServer.lastMethod, "PUT"); gServer.resetClient(client); }); -add_task(function* test_metadata() { +add_task(async function test_metadata() { gServer.events = [{ kind: "calendar#event", etag: "\"1\"", @@ -1367,12 +1367,12 @@ add_task(function* test_metadata() { notes: "description" }]; - let client = yield gServer.getClient(); + let client = await gServer.getClient(); let offline = client.wrappedJSObject.mCachedCalendar; let pclient = cal.async.promisifyCalendar(client.wrappedJSObject); // Check initial metadata - let items = yield pclient.getAllItems(); + let items = await pclient.getAllItems(); let meta = getAllMeta(offline); let [event, task] = items; ok(cal.item.isEvent(event)); @@ -1385,9 +1385,9 @@ add_task(function* test_metadata() { gServer.nextEtag = '"3"'; let newEvent = event.clone(); newEvent.title = "changed"; - yield pclient.modifyItem(newEvent, event); + await pclient.modifyItem(newEvent, event); - items = yield pclient.getAllItems(); + items = await pclient.getAllItems(); meta = getAllMeta(offline); [event, task] = items; ok(cal.item.isEvent(event)); @@ -1400,9 +1400,9 @@ add_task(function* test_metadata() { gServer.nextEtag = '"4"'; let newTask = task.clone(); newTask.title = "changed"; - yield pclient.modifyItem(newTask, task); + await pclient.modifyItem(newTask, task); - items = yield pclient.getAllItems(); + items = await pclient.getAllItems(); meta = getAllMeta(offline); [event, task] = items; equal(meta.size, 2); @@ -1410,19 +1410,19 @@ add_task(function* test_metadata() { equal(meta.get(task.hashId), ['"4"', "MTEyMDE2MDE5NzE0NjYzMDk4ODI6MDo0MDI1NDg2NjU", false].join("\u001A")); // Delete an event - yield pclient.deleteItem(event); + await pclient.deleteItem(event); meta = getAllMeta(offline); equal(meta.size, 1); equal(meta.get(task.hashId), ['"4"', "MTEyMDE2MDE5NzE0NjYzMDk4ODI6MDo0MDI1NDg2NjU", false].join("\u001A")); // Delete a task - yield pclient.deleteItem(task); + await pclient.deleteItem(task); meta = getAllMeta(offline); equal(meta.size, 0); // Add an event gServer.nextEtag = '"6"'; - newEvent = yield pclient.addItem(event); + newEvent = await pclient.addItem(event); meta = getAllMeta(offline); equal(meta.size, 1); equal(gServer.events.length, 1); @@ -1430,7 +1430,7 @@ add_task(function* test_metadata() { // Add a task gServer.nextEtag = '"7"'; - newTask = yield pclient.addItem(task); + newTask = await pclient.addItem(task); meta = getAllMeta(offline); equal(meta.size, 2); equal(gServer.events.length, 1); @@ -1441,7 +1441,7 @@ add_task(function* test_metadata() { gServer.resetClient(client); }); -add_task(function* test_metadata_recurring() { +add_task(async function test_metadata_recurring() { gServer.events = [{ kind: "calendar#event", etag: "\"1\"", @@ -1477,10 +1477,10 @@ add_task(function* test_metadata_recurring() { originalStartTime: { dateTime: "2006-06-17T18:00:00+02:00" } }]; - let client = yield gServer.getClient(); + let client = await gServer.getClient(); let offline = client.wrappedJSObject.mCachedCalendar; let pclient = cal.async.promisifyCalendar(client.wrappedJSObject); - let items = yield pclient.getAllItems(); + let items = await pclient.getAllItems(); let meta = getAllMeta(offline); equal(meta.size, 3); @@ -1496,7 +1496,7 @@ add_task(function* test_metadata_recurring() { let newEx = ex.clone(); newEx.title = "New Event changed again"; gServer.nextEtag = '"4"'; - yield pclient.modifyItem(newEx, ex); + await pclient.modifyItem(newEx, ex); meta = getAllMeta(offline); equal(meta.size, 3); equal(meta.get(newEx.hashId), ['"4"', "go6ijb0b46hlpbu4eeu92njevo_20060610T160000Z", false].join("\u001A")); @@ -1504,20 +1504,20 @@ add_task(function* test_metadata_recurring() { // Deleting an exception should delete the metadata, as it turns into an EXDATE let newItem = items[0].clone(); newItem.recurrenceInfo.removeOccurrenceAt(exIds[0]); - yield pclient.modifyItem(newItem, items[0]); + await pclient.modifyItem(newItem, items[0]); meta = getAllMeta(offline); equal(meta.size, 2); // Deleting the master item should remove all metadata entries - yield pclient.deleteItem(items[0]); + await pclient.deleteItem(items[0]); meta = getAllMeta(offline); equal(meta.size, 0); gServer.resetClient(client); }); -add_task(function* test_conflict_modify() { +add_task(async function test_conflict_modify() { // TODO task/event conflicts are handled in the same way so I'm going to // skip adding tests for tasks here, but it probably wouldn't hurt to // create them at some point. @@ -1534,9 +1534,9 @@ add_task(function* test_conflict_modify() { end: { dateTime: "2006-06-10T20:00:00+02:00" }, iCalUID: "go6ijb0b46hlpbu4eeu92njevo@google.com" }]; - let client = yield gServer.getClient(); + let client = await gServer.getClient(); let pclient = cal.async.promisifyCalendar(client.wrappedJSObject); - let item = (yield pclient.getAllItems())[0]; + let item = (await pclient.getAllItems())[0]; // Case #1: Modified on server, modify locally, overwrite conflict MockConflictPrompt.overwrite = true; @@ -1544,8 +1544,8 @@ add_task(function* test_conflict_modify() { newItem.title = "local change"; gServer.events[0].etag = '"2"'; gServer.events[0].summary = "remote change"; - let modifiedItem = yield pclient.modifyItem(newItem, item); - item = (yield pclient.getAllItems())[0]; + let modifiedItem = await pclient.modifyItem(newItem, item); + item = (await pclient.getAllItems())[0]; equal(gServer.events[0].summary, "local change"); notEqual(gServer.events[0].etag, '"2"'); equal(item.title, "local change"); @@ -1557,7 +1557,7 @@ add_task(function* test_conflict_modify() { gServer.events[0].etag = '"3"'; gServer.events[0].summary = "remote change"; try { - modifiedItem = yield pclient.modifyItem(newItem, item); + modifiedItem = await pclient.modifyItem(newItem, item); do_throw("Expected modifyItem to be cancelled"); } catch (e) { // Swallow cancelling the request @@ -1566,9 +1566,9 @@ add_task(function* test_conflict_modify() { } } - yield gServer.waitForLoad(client); + await gServer.waitForLoad(client); - item = (yield pclient.getAllItems())[0]; + item = (await pclient.getAllItems())[0]; equal(gServer.events[0].summary, "remote change"); equal(gServer.events[0].etag, '"3"'); equal(item.title, "remote change"); @@ -1578,7 +1578,7 @@ add_task(function* test_conflict_modify() { gServer.events[0].etag = '"4"'; gServer.events[0].summary = "remote change"; try { - yield pclient.deleteItem(item); + await pclient.deleteItem(item); do_throw("Expected deleteItem to be cancelled"); } catch (e) { // Swallow cancelling the request @@ -1587,9 +1587,9 @@ add_task(function* test_conflict_modify() { } } - yield gServer.waitForLoad(client); + await gServer.waitForLoad(client); - item = (yield pclient.getAllItems())[0]; + item = (await pclient.getAllItems())[0]; equal(gServer.events[0].summary, "remote change"); equal(gServer.events[0].etag, '"4"'); equal(item.title, "remote change"); @@ -1598,14 +1598,14 @@ add_task(function* test_conflict_modify() { MockConflictPrompt.overwrite = true; gServer.events[0].etag = '"5"'; gServer.events[0].summary = "remote change"; - yield pclient.deleteItem(item); - item = (yield pclient.getAllItems())[0]; + await pclient.deleteItem(item); + item = (await pclient.getAllItems())[0]; equal(gServer.events.length, 0); gServer.resetClient(client); }); -add_task(function* test_conflict_delete() { +add_task(async function test_conflict_delete() { // TODO task/event conflicts are handled in the same way so I'm going to // skip adding tests for tasks here, but it probably wouldn't hurt to // create them at some point. @@ -1625,17 +1625,17 @@ add_task(function* test_conflict_delete() { // Load intial event to server gServer.events = [coreEvent]; - let client = yield gServer.getClient(); + let client = await gServer.getClient(); let pclient = cal.async.promisifyCalendar(client.wrappedJSObject); - let item = (yield pclient.getAllItems())[0]; + let item = (await pclient.getAllItems())[0]; // Case #1: Deleted on server, modify locally, overwrite conflict MockConflictPrompt.overwrite = true; gServer.events = []; let newItem = item.clone(); newItem.title = "local change"; - let modifiedItem = yield pclient.modifyItem(newItem, item); - item = (yield pclient.getAllItems())[0]; + let modifiedItem = await pclient.modifyItem(newItem, item); + item = (await pclient.getAllItems())[0]; equal(gServer.events[0].summary, "local change"); notEqual(gServer.events[0].etag, '"2"'); equal(item.title, "local change"); @@ -1646,7 +1646,7 @@ add_task(function* test_conflict_delete() { MockConflictPrompt.overwrite = false; gServer.events = []; try { - modifiedItem = yield pclient.modifyItem(newItem, item); + modifiedItem = await pclient.modifyItem(newItem, item); do_throw("Expected modifyItem to be cancelled"); } catch (e) { // Swallow cancelling the request @@ -1658,24 +1658,24 @@ add_task(function* test_conflict_delete() { coreEvent.status = "cancelled"; gServer.events = [coreEvent]; - yield gServer.waitForLoad(client); + await gServer.waitForLoad(client); - let items = yield pclient.getAllItems(); + let items = await pclient.getAllItems(); equal(items.length, 0); equal(gServer.events.length, 1); // Put the event back in the calendar for the next run delete gServer.events[0].status; client.refresh(); - yield gServer.waitForLoad(client); - items = yield pclient.getAllItems(); + await gServer.waitForLoad(client); + items = await pclient.getAllItems(); equal(items.length, 1); // Case #3: Deleted on server, delete locally, don't overwrite conflict MockConflictPrompt.overwrite = false; gServer.events = []; try { - yield pclient.deleteItem(item); + await pclient.deleteItem(item); do_throw("Expected deleteItem to be cancelled"); } catch (e) { // Swallow cancelling the request @@ -1686,29 +1686,29 @@ add_task(function* test_conflict_delete() { // The next synchronize should cause the event to be deleted locally. coreEvent.status = "cancelled"; gServer.events = [coreEvent]; - yield gServer.waitForLoad(client); + await gServer.waitForLoad(client); - items = yield pclient.getAllItems(); + items = await pclient.getAllItems(); equal(items.length, 0); // Put the event back in the calendar for the next run delete gServer.events[0].status; client.refresh(); - yield gServer.waitForLoad(client); - items = yield pclient.getAllItems(); + await gServer.waitForLoad(client); + items = await pclient.getAllItems(); equal(items.length, 1); // Case #4: Deleted on server, delete locally, overwrite conflict MockConflictPrompt.overwrite = true; gServer.events = []; - yield pclient.deleteItem(item); - items = yield pclient.getAllItems(); + await pclient.deleteItem(item); + items = await pclient.getAllItems(); equal(items.length, 0); gServer.resetClient(client); }); -add_task(function* test_default_alarms() { +add_task(async function test_default_alarms() { let defaultReminders = [ { method: "popup", minutes: 10 }, { method: "email", minutes: 20 }, @@ -1731,11 +1731,11 @@ add_task(function* test_default_alarms() { }]; // Case #1: read default alarms from event stream - let client = yield gServer.getClient(); + let client = await gServer.getClient(); let pclient = cal.async.promisifyCalendar(client.wrappedJSObject); equal(client.getProperty("settings.defaultReminders"), JSON.stringify(defaultReminders)); - let item = (yield pclient.getAllItems())[0]; + let item = (await pclient.getAllItems())[0]; let alarms = item.getAlarms({}); equal(alarms.length, 2); @@ -1760,7 +1760,7 @@ add_task(function* test_default_alarms() { "END:VEVENT" ].join("\r\n")); - yield pclient.addItem(event); + await pclient.addItem(event); ok(gServer.events[1].reminders.useDefault); equal(gServer.events[1].reminders.overrides.length, 0); @@ -1784,7 +1784,7 @@ add_task(function* test_default_alarms() { "END:VEVENT" ].join("\r\n")); - yield pclient.addItem(event); + await pclient.addItem(event); ok(gServer.events[2].reminders.useDefault); equal(gServer.events[2].reminders.overrides.length, 1); equal(gServer.events[2].reminders.overrides[0].minutes, 5); @@ -1794,7 +1794,7 @@ add_task(function* test_default_alarms() { // Case #4a: Empty default alarms gServer.calendarListData.defaultReminders = []; gServer.eventsData.defaultReminders = []; - client = yield gServer.getClient(); + client = await gServer.getClient(); pclient = cal.async.promisifyCalendar(client.wrappedJSObject); event = cal.createEvent([ @@ -1806,7 +1806,7 @@ add_task(function* test_default_alarms() { "END:VEVENT" ].join("\r\n")); - yield pclient.addItem(event); + await pclient.addItem(event); ok(gServer.events[0].reminders.useDefault); equal(gServer.events[0].reminders.overrides, undefined); @@ -1815,16 +1815,16 @@ add_task(function* test_default_alarms() { // Case #4b: Read an item with empty default alarms gServer.events = events; - client = yield gServer.getClient(); + client = await gServer.getClient(); pclient = cal.async.promisifyCalendar(client.wrappedJSObject); - item = (yield pclient.getAllItems())[0]; + item = (await pclient.getAllItems())[0]; equal(item.getProperty("X-DEFAULT-ALARM"), "TRUE"); gServer.resetClient(client); }); -add_task(function* test_paginate() { +add_task(async function test_paginate() { gServer.events = [{ kind: "calendar#event", etag: "\"1\"", @@ -1873,7 +1873,7 @@ add_task(function* test_paginate() { Preferences.set("calendar.google.maxResultsPerRequest", 1); - let client = yield gServer.getClient(); + let client = await gServer.getClient(); let pclient = cal.async.promisifyCalendar(client); // Make sure all pages were requested @@ -1882,7 +1882,7 @@ add_task(function* test_paginate() { // ...and we have all items. Not checking props // because the other tests do this sufficiently. - let items = yield pclient.getAllItems(); + let items = await pclient.getAllItems(); equal(items.length, 4); equal(client.getProperty("syncToken.events"), "next-sync-token"); @@ -1891,7 +1891,7 @@ add_task(function* test_paginate() { gServer.resetClient(client); }); -add_task(function* test_incremental_reset() { +add_task(async function test_incremental_reset() { gServer.syncs = [{ token: "1", events: [{ @@ -1926,17 +1926,17 @@ add_task(function* test_incremental_reset() { iCalUID: "fepf8uf6n7n04w7feukucs9n8e@google.com" }] }]; - let client = yield gServer.getClient(); + let client = await gServer.getClient(); let pclient = cal.async.promisifyCalendar(client); - let items = yield pclient.getAllItems(); + let items = await pclient.getAllItems(); equal(items.length, 1); equal(items[0].title, "New Event"); client.refresh(); - yield gServer.waitForLoad(client); + await gServer.waitForLoad(client); - items = yield pclient.getAllItems(); + items = await pclient.getAllItems(); equal(items.length, 1); equal(items[0].title, "New Event 2"); diff --git a/comm/calendar/test/unit/xpcshell-shared.ini b/comm/calendar/test/unit/xpcshell-shared.ini index 495d067fb4..c1d4ccd3ae 100644 --- a/comm/calendar/test/unit/xpcshell-shared.ini +++ b/comm/calendar/test/unit/xpcshell-shared.ini @@ -29,8 +29,8 @@ [test_email_utils.js] [test_freebusy.js] [test_freebusy_service.js] -#[test_gdata_provider.js] -#requesttimeoutfactor = 2 +[test_gdata_provider.js] +requesttimeoutfactor = 2 [test_hashedarray.js] [test_ics.js] [test_ics_parser.js] diff --git a/comm/mail/app.mozbuild b/comm/mail/app.mozbuild index a377f74565..814c4b0754 100644 --- a/comm/mail/app.mozbuild +++ b/comm/mail/app.mozbuild @@ -21,7 +21,8 @@ DIRS += ['/%s' % CONFIG['MOZ_BRANDING_DIRECTORY']] if CONFIG['MOZ_CALENDAR']: DIRS += [ '/%s/calendar/lightning' % CONFIG['commreltopsrcdir'], - '/%s/calendar/timezones' % CONFIG['commreltopsrcdir'] + '/%s/calendar/providers/gdata' % CONFIG['commreltopsrcdir'], + '/%s/calendar/timezones' % CONFIG['commreltopsrcdir'], ] DIRS += [