Jelajahi Sumber

rename to weekLabel in locales

Adam Shaw 7 tahun lalu
induk
melakukan
e80fcb66fd
65 mengubah file dengan 57 tambahan dan 2196 penghapusan
  1. 1 1
      locale/ar-dz.js
  2. 1 1
      locale/ar-kw.js
  3. 1 1
      locale/ar-ly.js
  4. 1 1
      locale/ar-ma.js
  5. 1 1
      locale/ar-sa.js
  6. 1 1
      locale/ar-tn.js
  7. 1 1
      locale/ar.js
  8. 1 1
      locale/bs.js
  9. 1 1
      locale/ca.js
  10. 1 1
      locale/cs.js
  11. 1 1
      locale/da.js
  12. 1 1
      locale/de.js
  13. 1 1
      locale/el.js
  14. 1 1
      locale/es-us.js
  15. 1 1
      locale/es.js
  16. 1 1
      locale/et.js
  17. 1 1
      locale/eu.js
  18. 1 1
      locale/fa.js
  19. 1 1
      locale/fi.js
  20. 1 1
      locale/fr-ca.js
  21. 1 1
      locale/fr-ch.js
  22. 1 1
      locale/fr.js
  23. 1 1
      locale/gl.js
  24. 1 1
      locale/he.js
  25. 1 1
      locale/hi.js
  26. 1 1
      locale/hr.js
  27. 1 1
      locale/hu.js
  28. 1 1
      locale/id.js
  29. 1 1
      locale/is.js
  30. 1 1
      locale/it.js
  31. 1 1
      locale/ja.js
  32. 1 1
      locale/ka.js
  33. 1 1
      locale/kk.js
  34. 1 1
      locale/ko.js
  35. 1 1
      locale/lb.js
  36. 1 1
      locale/lt.js
  37. 1 1
      locale/lv.js
  38. 1 1
      locale/mk.js
  39. 1 1
      locale/ms.js
  40. 1 1
      locale/nb.js
  41. 1 1
      locale/nn.js
  42. 1 1
      locale/pl.js
  43. 1 1
      locale/pt-br.js
  44. 1 1
      locale/pt.js
  45. 1 1
      locale/ro.js
  46. 1 1
      locale/ru.js
  47. 1 1
      locale/sk.js
  48. 1 1
      locale/sl.js
  49. 1 1
      locale/sq.js
  50. 1 1
      locale/sr-cyrl.js
  51. 1 1
      locale/sr.js
  52. 1 1
      locale/sv.js
  53. 1 1
      locale/tr.js
  54. 1 1
      locale/uk.js
  55. 1 1
      locale/vi.js
  56. 1 1
      locale/zh-cn.js
  57. 1 1
      locale/zh-tw.js
  58. 0 173
      tests/automated/legacy/formatRange.js
  59. 0 194
      tests/automated/legacy/moment-ambig.js
  60. 0 656
      tests/automated/legacy/moment-construct.js
  61. 0 74
      tests/automated/legacy/moment-formatting.js
  62. 0 97
      tests/automated/legacy/moment-misc.js
  63. 0 102
      tests/automated/legacy/monthNames.js
  64. 0 97
      tests/automated/legacy/monthNamesShort.js
  65. 0 746
      tests/automated/legacy/updateEvent.js

+ 1 - 1
locale/ar-dz.js

@@ -15,7 +15,7 @@ defineLocale("ar-dz", {
     day: "يوم",
     day: "يوم",
     list: "أجندة"
     list: "أجندة"
   },
   },
-  weekHeader: "أسبوع",
+  weekLabel: "أسبوع",
   allDayText: "اليوم كله",
   allDayText: "اليوم كله",
   eventLimitText: "أخرى",
   eventLimitText: "أخرى",
   noEventsMessage: "أي أحداث لعرض"
   noEventsMessage: "أي أحداث لعرض"

+ 1 - 1
locale/ar-kw.js

@@ -15,7 +15,7 @@ defineLocale("ar-kw", {
     day: "يوم",
     day: "يوم",
     list: "أجندة"
     list: "أجندة"
   },
   },
-  weekHeader: "أسبوع",
+  weekLabel: "أسبوع",
   allDayText: "اليوم كله",
   allDayText: "اليوم كله",
   eventLimitText: "أخرى",
   eventLimitText: "أخرى",
   noEventsMessage: "أي أحداث لعرض"
   noEventsMessage: "أي أحداث لعرض"

+ 1 - 1
locale/ar-ly.js

@@ -15,7 +15,7 @@ defineLocale("ar-ly", {
     day: "يوم",
     day: "يوم",
     list: "أجندة"
     list: "أجندة"
   },
   },
-  weekHeader: "أسبوع",
+  weekLabel: "أسبوع",
   allDayText: "اليوم كله",
   allDayText: "اليوم كله",
   eventLimitText: "أخرى",
   eventLimitText: "أخرى",
   noEventsMessage: "أي أحداث لعرض"
   noEventsMessage: "أي أحداث لعرض"

+ 1 - 1
locale/ar-ma.js

@@ -15,7 +15,7 @@ defineLocale("ar-ma", {
     day: "يوم",
     day: "يوم",
     list: "أجندة"
     list: "أجندة"
   },
   },
-  weekHeader: "أسبوع",
+  weekLabel: "أسبوع",
   allDayText: "اليوم كله",
   allDayText: "اليوم كله",
   eventLimitText: "أخرى",
   eventLimitText: "أخرى",
   noEventsMessage: "أي أحداث لعرض"
   noEventsMessage: "أي أحداث لعرض"

+ 1 - 1
locale/ar-sa.js

@@ -15,7 +15,7 @@ defineLocale("ar-sa", {
     day: "يوم",
     day: "يوم",
     list: "أجندة"
     list: "أجندة"
   },
   },
-  weekHeader: "أسبوع",
+  weekLabel: "أسبوع",
   allDayText: "اليوم كله",
   allDayText: "اليوم كله",
   eventLimitText: "أخرى",
   eventLimitText: "أخرى",
   noEventsMessage: "أي أحداث لعرض"
   noEventsMessage: "أي أحداث لعرض"

+ 1 - 1
locale/ar-tn.js

@@ -15,7 +15,7 @@ defineLocale("ar-tn", {
     day: "يوم",
     day: "يوم",
     list: "أجندة"
     list: "أجندة"
   },
   },
-  weekHeader: "أسبوع",
+  weekLabel: "أسبوع",
   allDayText: "اليوم كله",
   allDayText: "اليوم كله",
   eventLimitText: "أخرى",
   eventLimitText: "أخرى",
   noEventsMessage: "أي أحداث لعرض"
   noEventsMessage: "أي أحداث لعرض"

+ 1 - 1
locale/ar.js

@@ -15,7 +15,7 @@ defineLocale("ar", {
     day: "يوم",
     day: "يوم",
     list: "أجندة"
     list: "أجندة"
   },
   },
-  weekHeader: "أسبوع",
+  weekLabel: "أسبوع",
   allDayText: "اليوم كله",
   allDayText: "اليوم كله",
   eventLimitText: "أخرى",
   eventLimitText: "أخرى",
   noEventsMessage: "أي أحداث لعرض"
   noEventsMessage: "أي أحداث لعرض"

+ 1 - 1
locale/bs.js

@@ -14,7 +14,7 @@ defineLocale("bs", {
     day: "Dan",
     day: "Dan",
     list: "Raspored"
     list: "Raspored"
   },
   },
-  weekHeader: "Sed",
+  weekLabel: "Sed",
   allDayText: "Cijeli dan",
   allDayText: "Cijeli dan",
   eventLimitText: function(n) {
   eventLimitText: function(n) {
     return "+ još " + n;
     return "+ još " + n;

+ 1 - 1
locale/ca.js

@@ -14,7 +14,7 @@ defineLocale("ca", {
     day: "Dia",
     day: "Dia",
     list: "Agenda"
     list: "Agenda"
   },
   },
-  weekHeader: "Set",
+  weekLabel: "Set",
   allDayText: "Tot el dia",
   allDayText: "Tot el dia",
   eventLimitText: "més",
   eventLimitText: "més",
   noEventsMessage: "No hi ha esdeveniments per mostrar"
   noEventsMessage: "No hi ha esdeveniments per mostrar"

+ 1 - 1
locale/cs.js

@@ -14,7 +14,7 @@ defineLocale("cs", {
     day: "Den",
     day: "Den",
     list: "Agenda"
     list: "Agenda"
   },
   },
-  weekHeader: "Týd",
+  weekLabel: "Týd",
   allDayText: "Celý den",
   allDayText: "Celý den",
   eventLimitText: function(n) {
   eventLimitText: function(n) {
     return "+další: " + n;
     return "+další: " + n;

+ 1 - 1
locale/da.js

@@ -14,7 +14,7 @@ defineLocale("da", {
     day: "Dag",
     day: "Dag",
     list: "Agenda"
     list: "Agenda"
   },
   },
-  weekHeader: "Uge",
+  weekLabel: "Uge",
   allDayText: "Hele dagen",
   allDayText: "Hele dagen",
   eventLimitText: "flere",
   eventLimitText: "flere",
   noEventsMessage: "Ingen arrangementer at vise"
   noEventsMessage: "Ingen arrangementer at vise"

+ 1 - 1
locale/de.js

@@ -14,7 +14,7 @@ defineLocale("de", {
     day: "Tag",
     day: "Tag",
     list: "Terminübersicht"
     list: "Terminübersicht"
   },
   },
-  weekHeader: "KW",
+  weekLabel: "KW",
   allDayText: "Ganztägig",
   allDayText: "Ganztägig",
   eventLimitText: function(n) {
   eventLimitText: function(n) {
     return "+ weitere " + n;
     return "+ weitere " + n;

+ 1 - 1
locale/el.js

@@ -14,7 +14,7 @@ defineLocale("el", {
     day: "Ημέρα",
     day: "Ημέρα",
     list: "Ατζέντα"
     list: "Ατζέντα"
   },
   },
-  weekHeader: "Εβδ",
+  weekLabel: "Εβδ",
   allDayText: "Ολοήμερο",
   allDayText: "Ολοήμερο",
   eventLimitText: "περισσότερα",
   eventLimitText: "περισσότερα",
   noEventsMessage: "Δεν υπάρχουν γεγονότα για να εμφανιστεί"
   noEventsMessage: "Δεν υπάρχουν γεγονότα για να εμφανιστεί"

+ 1 - 1
locale/es-us.js

@@ -14,7 +14,7 @@ defineLocale("es", {
     day: "Día",
     day: "Día",
     list: "Agenda"
     list: "Agenda"
   },
   },
-  weekHeader: "Sm",
+  weekLabel: "Sm",
   allDayHtml: "Todo<br/>el día",
   allDayHtml: "Todo<br/>el día",
   eventLimitText: "más",
   eventLimitText: "más",
   noEventsMessage: "No hay eventos para mostrar"
   noEventsMessage: "No hay eventos para mostrar"

+ 1 - 1
locale/es.js

@@ -14,7 +14,7 @@ defineLocale("es", {
     day: "Día",
     day: "Día",
     list: "Agenda"
     list: "Agenda"
   },
   },
-  weekHeader: "Sm",
+  weekLabel: "Sm",
   allDayHtml: "Todo<br/>el día",
   allDayHtml: "Todo<br/>el día",
   eventLimitText: "más",
   eventLimitText: "más",
   noEventsMessage: "No hay eventos para mostrar"
   noEventsMessage: "No hay eventos para mostrar"

+ 1 - 1
locale/et.js

@@ -14,7 +14,7 @@ defineLocale("et", {
     day: "Päev",
     day: "Päev",
     list: "Päevakord"
     list: "Päevakord"
   },
   },
-  weekHeader: "näd",
+  weekLabel: "näd",
   allDayText: "Kogu päev",
   allDayText: "Kogu päev",
   eventLimitText: function(n) {
   eventLimitText: function(n) {
     return "+ veel " + n;
     return "+ veel " + n;

+ 1 - 1
locale/eu.js

@@ -14,7 +14,7 @@ defineLocale("eu", {
     day: "Eguna",
     day: "Eguna",
     list: "Agenda"
     list: "Agenda"
   },
   },
-  weekHeader: "As",
+  weekLabel: "As",
   allDayHtml: "Egun<br/>osoa",
   allDayHtml: "Egun<br/>osoa",
   eventLimitText: "gehiago",
   eventLimitText: "gehiago",
   noEventsMessage: "Ez dago ekitaldirik erakusteko"
   noEventsMessage: "Ez dago ekitaldirik erakusteko"

+ 1 - 1
locale/fa.js

@@ -15,7 +15,7 @@ defineLocale("fa", {
     day: "روز",
     day: "روز",
     list: "برنامه"
     list: "برنامه"
   },
   },
-  weekHeader: "هف",
+  weekLabel: "هف",
   allDayText: "تمام روز",
   allDayText: "تمام روز",
   eventLimitText: function(n) {
   eventLimitText: function(n) {
     return "بیش از " + n;
     return "بیش از " + n;

+ 1 - 1
locale/fi.js

@@ -14,7 +14,7 @@ defineLocale("fi", {
     day: "Päivä",
     day: "Päivä",
     list: "Tapahtumat"
     list: "Tapahtumat"
   },
   },
-  weekHeader: "Vk",
+  weekLabel: "Vk",
   allDayText: "Koko päivä",
   allDayText: "Koko päivä",
   eventLimitText: "lisää",
   eventLimitText: "lisää",
   noEventsMessage: "Ei näytettäviä tapahtumia"
   noEventsMessage: "Ei näytettäviä tapahtumia"

+ 1 - 1
locale/fr-ca.js

@@ -11,7 +11,7 @@ defineLocale("fr", {
     day: "Jour",
     day: "Jour",
     list: "Mon planning"
     list: "Mon planning"
   },
   },
-  weekHeader: "Sem.",
+  weekLabel: "Sem.",
   allDayHtml: "Toute la<br/>journée",
   allDayHtml: "Toute la<br/>journée",
   eventLimitText: "en plus",
   eventLimitText: "en plus",
   noEventsMessage: "Aucun événement à afficher"
   noEventsMessage: "Aucun événement à afficher"

+ 1 - 1
locale/fr-ch.js

@@ -15,7 +15,7 @@ defineLocale("fr-ch", {
     day: "Jour",
     day: "Jour",
     list: "Mon planning"
     list: "Mon planning"
   },
   },
-  weekHeader: "Sm",
+  weekLabel: "Sm",
   allDayHtml: "Toute la<br/>journée",
   allDayHtml: "Toute la<br/>journée",
   eventLimitText: "en plus",
   eventLimitText: "en plus",
   noEventsMessage: "Aucun événement à afficher"
   noEventsMessage: "Aucun événement à afficher"

+ 1 - 1
locale/fr.js

@@ -15,7 +15,7 @@ defineLocale("fr", {
     day: "Jour",
     day: "Jour",
     list: "Mon planning"
     list: "Mon planning"
   },
   },
-  weekHeader: "Sem.",
+  weekLabel: "Sem.",
   allDayHtml: "Toute la<br/>journée",
   allDayHtml: "Toute la<br/>journée",
   eventLimitText: "en plus",
   eventLimitText: "en plus",
   noEventsMessage: "Aucun événement à afficher"
   noEventsMessage: "Aucun événement à afficher"

+ 1 - 1
locale/gl.js

@@ -14,7 +14,7 @@ defineLocale("gl", {
     day: "Día",
     day: "Día",
     list: "Axenda"
     list: "Axenda"
   },
   },
-  weekHeader: "Sm",
+  weekLabel: "Sm",
   allDayHtml: "Todo<br/>o día",
   allDayHtml: "Todo<br/>o día",
   eventLimitText: "máis",
   eventLimitText: "máis",
   noEventsMessage: "Non hai eventos para amosar"
   noEventsMessage: "Non hai eventos para amosar"

+ 1 - 1
locale/he.js

@@ -14,5 +14,5 @@ defineLocale("he", {
   allDayText: "כל היום",
   allDayText: "כל היום",
   eventLimitText: "אחר",
   eventLimitText: "אחר",
   noEventsMessage: "אין אירועים להצגה",
   noEventsMessage: "אין אירועים להצגה",
-  weekNumberTitle: "שבוע"
+  weekLabel: "שבוע"
 });
 });

+ 1 - 1
locale/hi.js

@@ -14,7 +14,7 @@ defineLocale("hi", {
     day: "दिन",
     day: "दिन",
     list: "कार्यसूची"
     list: "कार्यसूची"
   },
   },
-  weekHeader: "हफ्ता",
+  weekLabel: "हफ्ता",
   allDayText: "सभी दिन",
   allDayText: "सभी दिन",
   eventLimitText: function(n) {
   eventLimitText: function(n) {
     return "+अधिक " + n;
     return "+अधिक " + n;

+ 1 - 1
locale/hr.js

@@ -14,7 +14,7 @@ defineLocale("hr", {
     day: "Dan",
     day: "Dan",
     list: "Raspored"
     list: "Raspored"
   },
   },
-  weekHeader: "Tje",
+  weekLabel: "Tje",
   allDayText: "Cijeli dan",
   allDayText: "Cijeli dan",
   eventLimitText: function(n) {
   eventLimitText: function(n) {
     return "+ još " + n;
     return "+ još " + n;

+ 1 - 1
locale/hu.js

@@ -14,7 +14,7 @@ defineLocale("hu", {
     day: "Nap",
     day: "Nap",
     list: "Napló"
     list: "Napló"
   },
   },
-  weekHeader: "Hét",
+  weekLabel: "Hét",
   allDayText: "Egész nap",
   allDayText: "Egész nap",
   eventLimitText: "további",
   eventLimitText: "további",
   noEventsMessage: "Nincs megjeleníthető események"
   noEventsMessage: "Nincs megjeleníthető események"

+ 1 - 1
locale/id.js

@@ -14,7 +14,7 @@ defineLocale("id", {
     day: "Hari",
     day: "Hari",
     list: "Agenda"
     list: "Agenda"
   },
   },
-  weekHeader: "Mg",
+  weekLabel: "Mg",
   allDayHtml: "Sehari<br/>penuh",
   allDayHtml: "Sehari<br/>penuh",
   eventLimitText: "lebih",
   eventLimitText: "lebih",
   noEventsMessage: "Tidak ada acara untuk ditampilkan"
   noEventsMessage: "Tidak ada acara untuk ditampilkan"

+ 1 - 1
locale/is.js

@@ -14,7 +14,7 @@ defineLocale("is", {
     day: "Dagur",
     day: "Dagur",
     list: "Dagskrá"
     list: "Dagskrá"
   },
   },
-  weekHeader: "Vika",
+  weekLabel: "Vika",
   allDayHtml: "Allan<br/>daginn",
   allDayHtml: "Allan<br/>daginn",
   eventLimitText: "meira",
   eventLimitText: "meira",
   noEventsMessage: "Engir viðburðir til að sýna"
   noEventsMessage: "Engir viðburðir til að sýna"

+ 1 - 1
locale/it.js

@@ -14,7 +14,7 @@ defineLocale("it", {
     day: "Giorno",
     day: "Giorno",
     list: "Agenda"
     list: "Agenda"
   },
   },
-  weekHeader: "Sm",
+  weekLabel: "Sm",
   allDayHtml: "Tutto il<br/>giorno",
   allDayHtml: "Tutto il<br/>giorno",
   eventLimitText: function(n) {
   eventLimitText: function(n) {
     return "+altri " + n;
     return "+altri " + n;

+ 1 - 1
locale/ja.js

@@ -10,7 +10,7 @@ defineLocale("ja", {
     day: "日",
     day: "日",
     list: "予定リスト"
     list: "予定リスト"
   },
   },
-  weekHeader: "週",
+  weekLabel: "週",
   allDayText: "終日",
   allDayText: "終日",
   eventLimitText: function(n) {
   eventLimitText: function(n) {
     return "他 " + n + " 件";
     return "他 " + n + " 件";

+ 1 - 1
locale/ka.js

@@ -14,7 +14,7 @@ defineLocale("ka", {
     day: "დღე",
     day: "დღე",
     list: "დღის წესრიგი"
     list: "დღის წესრიგი"
   },
   },
-  weekHeader: "კვ",
+  weekLabel: "კვ",
   allDayText: "მთელი დღე",
   allDayText: "მთელი დღე",
   eventLimitText: function(n) {
   eventLimitText: function(n) {
     return "+ კიდევ " + n;
     return "+ კიდევ " + n;

+ 1 - 1
locale/kk.js

@@ -14,7 +14,7 @@ defineLocale("kk", {
     day: "Күн",
     day: "Күн",
     list: "Күн тәртібі"
     list: "Күн тәртібі"
   },
   },
-  weekHeader: "Не",
+  weekLabel: "Не",
   allDayText: "Күні бойы",
   allDayText: "Күні бойы",
   eventLimitText: function(n) {
   eventLimitText: function(n) {
     return "+ тағы " + n;
     return "+ тағы " + n;

+ 1 - 1
locale/ko.js

@@ -10,7 +10,7 @@ defineLocale("ko", {
     day: "일",
     day: "일",
     list: "일정목록"
     list: "일정목록"
   },
   },
-  weekHeader: "주",
+  weekLabel: "주",
   allDayText: "종일",
   allDayText: "종일",
   eventLimitText: "개",
   eventLimitText: "개",
   noEventsMessage: "일정이 없습니다"
   noEventsMessage: "일정이 없습니다"

+ 1 - 1
locale/lb.js

@@ -14,7 +14,7 @@ defineLocale("lb", {
     day: "Dag",
     day: "Dag",
     list: "Terminiwwersiicht"
     list: "Terminiwwersiicht"
   },
   },
-  weekHeader: "W",
+  weekLabel: "W",
   allDayText: "Ganzen Dag",
   allDayText: "Ganzen Dag",
   eventLimitText: "méi",
   eventLimitText: "méi",
   noEventsMessage: "Nee Evenementer ze affichéieren"
   noEventsMessage: "Nee Evenementer ze affichéieren"

+ 1 - 1
locale/lt.js

@@ -14,7 +14,7 @@ defineLocale("lt", {
     day: "Diena",
     day: "Diena",
     list: "Darbotvarkė"
     list: "Darbotvarkė"
   },
   },
-  weekHeader: "SAV",
+  weekLabel: "SAV",
   allDayText: "Visą dieną",
   allDayText: "Visą dieną",
   eventLimitText: "daugiau",
   eventLimitText: "daugiau",
   noEventsMessage: "Nėra įvykių rodyti"
   noEventsMessage: "Nėra įvykių rodyti"

+ 1 - 1
locale/lv.js

@@ -14,7 +14,7 @@ defineLocale("lv", {
     day: "Diena",
     day: "Diena",
     list: "Dienas kārtība"
     list: "Dienas kārtība"
   },
   },
-  weekHeader: "Ned.",
+  weekLabel: "Ned.",
   allDayText: "Visu dienu",
   allDayText: "Visu dienu",
   eventLimitText: function(n) {
   eventLimitText: function(n) {
     return "+vēl " + n;
     return "+vēl " + n;

+ 1 - 1
locale/mk.js

@@ -10,7 +10,7 @@ defineLocale("mk", {
     day: "Ден",
     day: "Ден",
     list: "График"
     list: "График"
   },
   },
-  weekHeader: "Сед",
+  weekLabel: "Сед",
   allDayText: "Цел ден",
   allDayText: "Цел ден",
   eventLimitText: function(n) {
   eventLimitText: function(n) {
     return "+повеќе " + n;
     return "+повеќе " + n;

+ 1 - 1
locale/ms.js

@@ -14,7 +14,7 @@ defineLocale("ms", {
     day: "Hari",
     day: "Hari",
     list: "Agenda"
     list: "Agenda"
   },
   },
-  weekHeader: "Mg",
+  weekLabel: "Mg",
   allDayText: "Sepanjang hari",
   allDayText: "Sepanjang hari",
   eventLimitText: function(n) {
   eventLimitText: function(n) {
     return "masih ada " + n + " acara";
     return "masih ada " + n + " acara";

+ 1 - 1
locale/nb.js

@@ -14,7 +14,7 @@ defineLocale("nb", {
     day: "Dag",
     day: "Dag",
     list: "Agenda"
     list: "Agenda"
   },
   },
-  weekHeader: "Uke",
+  weekLabel: "Uke",
   allDayText: "Hele dagen",
   allDayText: "Hele dagen",
   eventLimitText: "til",
   eventLimitText: "til",
   noEventsMessage: "Ingen hendelser å vise"
   noEventsMessage: "Ingen hendelser å vise"

+ 1 - 1
locale/nn.js

@@ -14,7 +14,7 @@ defineLocale("nn", {
     day: "Dag",
     day: "Dag",
     list: "Agenda"
     list: "Agenda"
   },
   },
-  weekHeader: "Veke",
+  weekLabel: "Veke",
   allDayText: "Heile dagen",
   allDayText: "Heile dagen",
   eventLimitText: "til",
   eventLimitText: "til",
   noEventsMessage: "Ingen hendelser å vise"
   noEventsMessage: "Ingen hendelser å vise"

+ 1 - 1
locale/pl.js

@@ -14,7 +14,7 @@ defineLocale("pl", {
     day: "Dzień",
     day: "Dzień",
     list: "Plan dnia"
     list: "Plan dnia"
   },
   },
-  weekHeader: "Tydz",
+  weekLabel: "Tydz",
   allDayText: "Cały dzień",
   allDayText: "Cały dzień",
   eventLimitText: "więcej",
   eventLimitText: "więcej",
   noEventsMessage: "Brak wydarzeń do wyświetlenia"
   noEventsMessage: "Brak wydarzeń do wyświetlenia"

+ 1 - 1
locale/pt-br.js

@@ -10,7 +10,7 @@ defineLocale("pt-br", {
     day: "Dia",
     day: "Dia",
     list: "Compromissos"
     list: "Compromissos"
   },
   },
-  weekHeader: "Sm",
+  weekLabel: "Sm",
   allDayText: "dia inteiro",
   allDayText: "dia inteiro",
   eventLimitText: function(n) {
   eventLimitText: function(n) {
     return "mais +" + n;
     return "mais +" + n;

+ 1 - 1
locale/pt.js

@@ -14,7 +14,7 @@ defineLocale("pt", {
     day: "Dia",
     day: "Dia",
     list: "Agenda"
     list: "Agenda"
   },
   },
-  weekHeader: "Sem",
+  weekLabel: "Sem",
   allDayText: "Todo o dia",
   allDayText: "Todo o dia",
   eventLimitText: "mais",
   eventLimitText: "mais",
   noEventsMessage: "Não há eventos para mostrar"
   noEventsMessage: "Não há eventos para mostrar"

+ 1 - 1
locale/ro.js

@@ -14,7 +14,7 @@ defineLocale("ro", {
     day: "Zi",
     day: "Zi",
     list: "Agendă"
     list: "Agendă"
   },
   },
-  weekHeader: "Săpt",
+  weekLabel: "Săpt",
   allDayText: "Toată ziua",
   allDayText: "Toată ziua",
   eventLimitText: function(n) {
   eventLimitText: function(n) {
     return "+alte " + n;
     return "+alte " + n;

+ 1 - 1
locale/ru.js

@@ -14,7 +14,7 @@ defineLocale("ru", {
     day: "День",
     day: "День",
     list: "Повестка дня"
     list: "Повестка дня"
   },
   },
-  weekHeader: "Нед",
+  weekLabel: "Нед",
   allDayText: "Весь день",
   allDayText: "Весь день",
   eventLimitText: function(n) {
   eventLimitText: function(n) {
     return "+ ещё " + n;
     return "+ ещё " + n;

+ 1 - 1
locale/sk.js

@@ -14,7 +14,7 @@ defineLocale("sk", {
     day: "Deň",
     day: "Deň",
     list: "Rozvrh"
     list: "Rozvrh"
   },
   },
-  weekHeader: "Ty",
+  weekLabel: "Ty",
   allDayText: "Celý deň",
   allDayText: "Celý deň",
   eventLimitText: function(n) {
   eventLimitText: function(n) {
     return "+ďalšie: " + n;
     return "+ďalšie: " + n;

+ 1 - 1
locale/sl.js

@@ -14,7 +14,7 @@ defineLocale("sl", {
     day: "Dan",
     day: "Dan",
     list: "Dnevni red"
     list: "Dnevni red"
   },
   },
-  weekHeader: "Teden",
+  weekLabel: "Teden",
   allDayText: "Ves dan",
   allDayText: "Ves dan",
   eventLimitText: "več",
   eventLimitText: "več",
   noEventsMessage: "Ni dogodkov za prikaz"
   noEventsMessage: "Ni dogodkov za prikaz"

+ 1 - 1
locale/sq.js

@@ -14,7 +14,7 @@ defineLocale("sq", {
     day: "Ditë",
     day: "Ditë",
     list: "Listë"
     list: "Listë"
   },
   },
-  weekHeader: "Ja",
+  weekLabel: "Ja",
   allDayHtml: "Gjithë<br/>ditën",
   allDayHtml: "Gjithë<br/>ditën",
   eventLimitText: function(n) {
   eventLimitText: function(n) {
     return "+më tepër " + n;
     return "+më tepër " + n;

+ 1 - 1
locale/sr-cyrl.js

@@ -14,7 +14,7 @@ defineLocale("sr-cyrl", {
     day: "Дан",
     day: "Дан",
     list: "Планер"
     list: "Планер"
   },
   },
-  weekHeader: "Сед",
+  weekLabel: "Сед",
   allDayText: "Цео дан",
   allDayText: "Цео дан",
   eventLimitText: function(n) {
   eventLimitText: function(n) {
     return "+ још " + n;
     return "+ још " + n;

+ 1 - 1
locale/sr.js

@@ -14,7 +14,7 @@ defineLocale("sr", {
     day: "Dan",
     day: "Dan",
     list: "Planеr"
     list: "Planеr"
   },
   },
-  weekHeader: "Sed",
+  weekLabel: "Sed",
   allDayText: "Cеo dan",
   allDayText: "Cеo dan",
   eventLimitText: function(n) {
   eventLimitText: function(n) {
     return "+ još " + n;
     return "+ još " + n;

+ 1 - 1
locale/sv.js

@@ -14,7 +14,7 @@ defineLocale("sv", {
     day: "Dag",
     day: "Dag",
     list: "Program"
     list: "Program"
   },
   },
-  weekHeader: "v.",
+  weekLabel: "v.",
   allDayText: "Heldag",
   allDayText: "Heldag",
   eventLimitText: "till",
   eventLimitText: "till",
   noEventsMessage: "Inga händelser att visa"
   noEventsMessage: "Inga händelser att visa"

+ 1 - 1
locale/tr.js

@@ -14,7 +14,7 @@ defineLocale("tr", {
     day: "Gün",
     day: "Gün",
     list: "Ajanda"
     list: "Ajanda"
   },
   },
-  weekHeader: "Hf",
+  weekLabel: "Hf",
   allDayText: "Tüm gün",
   allDayText: "Tüm gün",
   eventLimitText: "daha fazla",
   eventLimitText: "daha fazla",
   noEventsMessage: "Herhangi bir etkinlik görüntülemek için"
   noEventsMessage: "Herhangi bir etkinlik görüntülemek için"

+ 1 - 1
locale/uk.js

@@ -14,7 +14,7 @@ defineLocale("uk", {
     day: "День",
     day: "День",
     list: "Порядок денний"
     list: "Порядок денний"
   },
   },
-  weekHeader: "Тиж",
+  weekLabel: "Тиж",
   allDayText: "Увесь день",
   allDayText: "Увесь день",
   eventLimitText: function(n) {
   eventLimitText: function(n) {
     return "+ще " + n + "...";
     return "+ще " + n + "...";

+ 1 - 1
locale/vi.js

@@ -14,7 +14,7 @@ defineLocale("vi", {
     day: "Ngày",
     day: "Ngày",
     list: "Lịch biểu"
     list: "Lịch biểu"
   },
   },
-  weekHeader: "Tu",
+  weekLabel: "Tu",
   allDayText: "Cả ngày",
   allDayText: "Cả ngày",
   eventLimitText: function(n) {
   eventLimitText: function(n) {
     return "+ thêm " + n;
     return "+ thêm " + n;

+ 1 - 1
locale/zh-cn.js

@@ -15,7 +15,7 @@ defineLocale("zh-cn", {
     day: "日",
     day: "日",
     list: "日程"
     list: "日程"
   },
   },
-  weekHeader: "周",
+  weekLabel: "周",
   allDayText: "全天",
   allDayText: "全天",
   eventLimitText: function(n) {
   eventLimitText: function(n) {
     return "另外 " + n + " 个";
     return "另外 " + n + " 个";

+ 1 - 1
locale/zh-tw.js

@@ -10,7 +10,7 @@ defineLocale("zh-tw", {
     day: "天",
     day: "天",
     list: "活動列表"
     list: "活動列表"
   },
   },
-  weekHeader: "周",
+  weekLabel: "周",
   allDayText: "整天",
   allDayText: "整天",
   eventLimitText: '顯示更多',
   eventLimitText: '顯示更多',
   noEventsMessage: "没有任何活動"
   noEventsMessage: "没有任何活動"

+ 0 - 173
tests/automated/legacy/formatRange.js

@@ -1,173 +0,0 @@
-describe('formatRange', function() {
-
-  it('doesn\'t do any splitting when dates have different years', function() {
-    var s = FullCalendar.formatRange('2014-01-01', '2015-01-01', 'MMMM Do YYYY')
-    expect(s).toEqual('January 1st 2014 - January 1st 2015')
-  })
-
-  it('splits correctly on day when dates have same month', function() {
-    var s = FullCalendar.formatRange('2014-01-01', '2014-01-05', 'MMMM Do YYYY')
-    expect(s).toEqual('January 1st - 5th 2014')
-  })
-
-  it('splits correctly on day when dates have same month and smaller unit in front', function() {
-    var s = FullCalendar.formatRange('2014-01-01', '2014-01-05', 'dddd MMMM Do YYYY')
-    expect(s).toEqual('Wednesday January 1st - Sunday January 5th 2014')
-  })
-
-  it('splits correctly on the time when dates have the same day', function() {
-    var s = FullCalendar.formatRange('2014-01-01T06:00:00', '2014-01-01T08:00:00', 'MMMM Do YYYY h:mma')
-    expect(s).toEqual('January 1st 2014 6:00am - 8:00am')
-  })
-
-  it('splits correctly on the time when dates have the same day and hour but different am/pm', function() {
-    var s = FullCalendar.formatRange('2014-01-01T06:00:00', '2014-01-01T18:00:00', 'MMMM Do YYYY h:mma')
-    expect(s).toEqual('January 1st 2014 6:00am - 6:00pm')
-  })
-
-  it('splits correctly on the time when the dates have the same hour', function() {
-    var s = FullCalendar.formatRange('2014-01-01T06:00:00', '2014-01-01T06:30:00', 'MMMM Do YYYY h:mma')
-    expect(s).toEqual('January 1st 2014 6:00am - 6:30am')
-  })
-
-  it('doesn\'t split a period (German)', function() {
-    var date1 = moment('2014-08-11').locale('de')
-    var date2 = moment('2014-08-17').locale('de')
-    var s = FullCalendar.formatRange(date1, date2, 'll')
-    expect(s).toEqual('11. - 17. Aug. 2014')
-  })
-
-  it('doesn\'t split a period (Czech)', function() {
-    var date1 = moment('2017-01-15').locale('cs')
-    var date2 = moment('2017-01-21').locale('cs')
-    var s = FullCalendar.formatRange(date1, date2, 'D. M. YYYY')
-    expect(s).toEqual('15. - 21. 1. 2017')
-  })
-
-  it('uses non-standalone version of month (Russian)', function() {
-    var date1 = moment('2015-01-02').locale('ru')
-    var date2 = moment('2015-01-08').locale('ru')
-    var s = FullCalendar.formatRange(date1, date2, 'DD MMMM YYYY')
-    expect(s).toEqual('02 - 08 января 2015')
-  })
-
-  it('outputs the single date when the dates have the same day and time', function() {
-    var s = FullCalendar.formatRange('2014-01-01T06:00:00', '2014-01-01T06:00:00', 'MMMM Do YYYY h:mma')
-    expect(s).toEqual('January 1st 2014 6:00am')
-  })
-
-  it('outputs the single date when the dates have the same day and the format string is vague', function() {
-    var s = FullCalendar.formatRange('2014-01-01', '2014-01-01', 'MMMM Do YYYY')
-    expect(s).toEqual('January 1st 2014')
-  })
-
-  it('outputs the single week number when dates have the same week and format string is week', function() {
-    var s = FullCalendar.formatRange('2014-01-01', '2014-01-01', 'W')
-    expect(s).toEqual('1')
-  })
-
-  it('uses a custom separator', function() {
-    var s = FullCalendar.formatRange(
-      '2014-01-01T06:00:00',
-      '2014-01-01T06:30:00',
-      'MMMM Do YYYY h:mma',
-      '<...>'
-    )
-    expect(s).toEqual('January 1st 2014 6:00am<...>6:30am')
-  })
-
-  describe('when called with isRTL', function() {
-
-    it('doesn\'t do any splitting when dates have different years', function() {
-      var s = FullCalendar.formatRange('2014-01-01', '2015-01-01', 'MMMM Do YYYY', null, true)
-      expect(s).toEqual('January 1st 2015 - January 1st 2014')
-    })
-
-    it('splits correctly on day when dates have same month', function() {
-      var s = FullCalendar.formatRange('2014-01-01', '2014-01-05', 'MMMM Do YYYY', null, true)
-      expect(s).toEqual('January 5th - 1st 2014')
-    })
-
-    it('splits correctly on day when dates have same month and smaller unit in front', function() {
-      var s = FullCalendar.formatRange('2014-01-01', '2014-01-05', 'dddd MMMM Do YYYY', null, true)
-      expect(s).toEqual('Sunday January 5th - Wednesday January 1st 2014')
-    })
-
-    it('splits correctly on the time when dates have the same day', function() {
-      var s = FullCalendar.formatRange('2014-01-01T06:00:00', '2014-01-01T08:00:00', 'MMMM Do YYYY h:mma', null, true)
-      expect(s).toEqual('January 1st 2014 8:00am - 6:00am')
-    })
-
-    it('splits correctly on the time when dates have the same day and hour but different am/pm', function() {
-      var s = FullCalendar.formatRange('2014-01-01T06:00:00', '2014-01-01T18:00:00', 'MMMM Do YYYY h:mma', null, true)
-      expect(s).toEqual('January 1st 2014 6:00pm - 6:00am')
-    })
-
-    it('splits correctly on the time when the dates have the same hour', function() {
-      var s = FullCalendar.formatRange('2014-01-01T06:00:00', '2014-01-01T06:30:00', 'MMMM Do YYYY h:mma', null, true)
-      expect(s).toEqual('January 1st 2014 6:30am - 6:00am')
-    })
-
-    it('outputs the single date when the dates have the same day and time', function() {
-      var s = FullCalendar.formatRange('2014-01-01T06:00:00', '2014-01-01T06:00:00', 'MMMM Do YYYY h:mma', null, true)
-      expect(s).toEqual('January 1st 2014 6:00am')
-    })
-
-    it('outputs the single date when the dates have the same day and the format string is vague', function() {
-      var s = FullCalendar.formatRange('2014-01-01', '2014-01-01', 'MMMM Do YYYY', null, true)
-      expect(s).toEqual('January 1st 2014')
-    })
-
-    it('uses a custom separator', function() {
-      var s = FullCalendar.formatRange(
-        '2014-01-01T06:00:00',
-        '2014-01-01T06:30:00',
-        'MMMM Do YYYY h:mma',
-        '<...>',
-        true
-      )
-      expect(s).toEqual('January 1st 2014 6:30am<...>6:00am')
-    })
-
-  })
-
-  describe('when calendar has isRTL', function() {
-
-    it('splits correctly on day when dates have same month', function() {
-      initCalendar({
-        defaultView: 'basicWeek',
-        defaultDate: '2014-05-20',
-        isRTL: true,
-        titleFormat: 'MMMM Do YYYY',
-        titleRangeSeparator: ' - '
-      })
-      expect($('.fc-toolbar h2')).toHaveText('May 24th - 18th 2014')
-    })
-
-  })
-
-  describe('when calendar has a customized locale', function() {
-
-    it('uses locale and splits correctly on day when dates have same month', function() {
-      initCalendar({
-        defaultView: 'basicWeek',
-        defaultDate: '2014-05-20',
-        locale: 'fr',
-        titleFormat: 'dddd MMMM D YYYY',
-        titleRangeSeparator: ' - '
-      })
-      expect($('.fc-toolbar h2')).toHaveText('lundi mai 19 - dimanche mai 25 2014')
-    })
-
-  })
-
-  it('splits correctly on day when dates have same month, when given real moments', function() {
-    var s = FullCalendar.formatRange(
-      moment.utc('2014-01-01'),
-      moment.utc('2015-01-01'),
-      'MMMM Do YYYY'
-    )
-    expect(s).toEqual('January 1st 2014 - January 1st 2015')
-  })
-
-})

+ 0 - 194
tests/automated/legacy/moment-ambig.js

@@ -1,194 +0,0 @@
-
-describe('ambiguously-zoned moment', function() {
-
-  it('has a false hasZone', function() {
-    var mom = FullCalendar.moment.parseZone('2014-06-08T10:00:00')
-    expect(mom.hasZone()).toBe(false)
-  })
-
-  it('has a true hasTime', function() {
-    var mom = FullCalendar.moment.parseZone('2014-06-08T10:00:00')
-    expect(mom.hasTime()).toBe(true)
-  })
-
-  it('has a zero zone', function() {
-    var mom = FullCalendar.moment.parseZone('2014-06-08T10:00:00')
-    expect(mom.utcOffset()).toBe(0)
-  })
-
-  it('formats without a zone part', function() {
-    var mom = FullCalendar.moment.parseZone('2014-06-08T10:00:00')
-    expect(mom.format()).toBe('2014-06-08T10:00:00')
-  })
-
-  it('formats via toISOString without a zone part', function() {
-    var mom = FullCalendar.moment.parseZone('2014-06-08T10:00:00')
-    expect(mom.toISOString()).toBe('2014-06-08T10:00:00')
-  })
-
-  it('formats via toISOString for locales with non-trivial formatting', function() {
-    var mom = FullCalendar.moment.parseZone('2014-06-08T10:00:00').locale('ar')
-    expect(mom.toISOString()).toBe('2014-06-08T10:00:00')
-  })
-
-  it('formats ISO8601 via format() for locales with non-trivial formatting', function() {
-    var mom = FullCalendar.moment.parseZone('2014-06-08T10:00:00').locale('ar')
-    expect(mom.format()).toBe('2014-06-08T10:00:00')
-  })
-
-  it('is correctly cloned', function() {
-    var mom = FullCalendar.moment.parseZone('2014-06-08T10:00:00')
-    var clone = mom.clone()
-    expect(clone.hasZone()).toBe(false)
-    expect(clone.format()).toBe('2014-06-08T10:00:00')
-    expect(clone).not.toBe(mom)
-    clone.add(1, 'months')
-    expect(+clone).not.toBe(+mom)
-  })
-
-  it('can be given a zone via utc', function() {
-    var mom = FullCalendar.moment.parseZone('2014-06-08T10:00:00')
-    expect(mom.hasTime()).toBe(true)
-    expect(mom.hasZone()).toBe(false)
-    expect(mom.utcOffset()).toBe(0)
-    mom.utc()
-    expect(mom.hasTime()).toBe(true)
-    expect(mom.hasZone()).toBe(true)
-    expect(mom.utcOffset()).toBe(0)
-  })
-
-  it('can be given a zone via local', function() {
-    var mom = FullCalendar.moment.parseZone('2014-06-08T10:00:00')
-    var equivDate = new Date(Date.UTC(2014, 5, 8, 10, 0, 0))
-    expect(mom.toArray()).toEqual([ 2014, 5, 8, 10, 0, 0, 0 ])
-    expect(mom.hasTime()).toBe(true)
-    expect(mom.hasZone()).toBe(false)
-    expect(mom.utcOffset()).toBe(0)
-    mom.local()
-    expect(mom.toArray()).toEqual([ 2014, 5, 8, 10, 0, 0, 0 ])
-    expect(mom.hasTime()).toBe(true)
-    expect(mom.hasZone()).toBe(true)
-    expect(mom.utcOffset()).toBe(-equivDate.getTimezoneOffset())
-  })
-
-  it('can be given a zone via zone', function() {
-    var mom = FullCalendar.moment.parseZone('2014-06-08T10:00:00')
-    expect(mom.hasTime()).toBe(true)
-    expect(mom.hasZone()).toBe(false)
-    expect(mom.utcOffset()).toBe(0)
-    mom.utcOffset(-420)
-    expect(mom.hasTime()).toBe(true)
-    expect(mom.hasZone()).toBe(true)
-    expect(mom.utcOffset()).toBe(-420)
-  })
-
-})
-
-describe('ambiguously-timed moment', function() {
-
-  it('has a false hasTime', function() {
-    var mom = FullCalendar.moment.parseZone('2014-06-08')
-    expect(mom.hasTime()).toBe(false)
-  })
-
-  it('has a false hasZone', function() {
-    var mom = FullCalendar.moment.parseZone('2014-06-08')
-    expect(mom.hasZone()).toBe(false)
-  })
-
-  it('has a zero time', function() {
-    var mom = FullCalendar.moment.parseZone('2014-06-08')
-    var time = mom.time()
-    expect(+time).toBe(0)
-  })
-
-  it('formats without a zone part', function() {
-    var mom = FullCalendar.moment.parseZone('2014-06-08')
-    expect(mom.format()).toBe('2014-06-08')
-  })
-
-  it('formats via toISOString without a time part', function() {
-    var mom = FullCalendar.moment.parseZone('2014-06-08')
-    expect(mom.toISOString()).toBe('2014-06-08')
-  })
-
-  it('is correctly cloned', function() {
-    var mom = FullCalendar.moment.parseZone('2014-06-08')
-    var clone = mom.clone()
-    expect(clone.hasTime()).toBe(false)
-    expect(clone.format()).toBe('2014-06-08')
-    expect(clone).not.toBe(mom)
-    clone.add(1, 'months')
-    expect(+clone).not.toBe(+mom)
-  })
-
-  it('can be given a time', function() {
-    var mom = FullCalendar.moment.parseZone('2014-06-08')
-    expect(mom.hasTime()).toBe(false)
-    var time = moment.duration({ hours: 1, minutes: 25 })
-    mom.time(time)
-    expect(mom.hasTime()).toBe(true)
-    expect(+mom.time()).toBe(+time)
-  })
-
-  it('can be given a time and zone via utc', function() {
-    var mom = FullCalendar.moment.parseZone('2014-06-08')
-    expect(mom.hasTime()).toBe(false)
-    expect(mom.hasZone()).toBe(false)
-    expect(mom.utcOffset()).toBe(0)
-    mom.utc()
-    expect(mom.hasTime()).toBe(true)
-    expect(mom.hasZone()).toBe(true)
-    expect(mom.utcOffset()).toBe(0)
-  })
-
-  it('can be given a time and zone via local', function() {
-    var mom = FullCalendar.moment.parseZone('2014-06-08')
-    var equivDate = new Date(2014, 5, 8, 10, 0, 0)
-    expect(mom.toArray()).toEqual([ 2014, 5, 8, 0, 0, 0, 0 ])
-    expect(mom.hasTime()).toBe(false)
-    expect(mom.hasZone()).toBe(false)
-    expect(mom.utcOffset()).toBe(0)
-    mom.local()
-    expect(mom.toArray()).toEqual([ 2014, 5, 8, 0, 0, 0, 0 ])
-    expect(mom.hasTime()).toBe(true)
-    expect(mom.hasZone()).toBe(true)
-    expect(mom.utcOffset()).toBe(-equivDate.getTimezoneOffset())
-  })
-
-  it('can be given a time and zone via zone', function() {
-    var mom = FullCalendar.moment.parseZone('2014-06-08')
-    expect(mom.hasTime()).toBe(false)
-    expect(mom.hasZone()).toBe(false)
-    expect(mom.utcOffset()).toBe(0)
-    mom.utcOffset(-420)
-    expect(mom.hasTime()).toBe(true)
-    expect(mom.hasZone()).toBe(true)
-    expect(mom.utcOffset()).toBe(-420)
-  })
-
-})
-
-describe('unambiguous moment', function() {
-
-  it('can be made ambiguously-zoned via stripZone', function() {
-    var mom = FullCalendar.moment.utc('2014-06-08T10:00:00-0000')
-    expect(mom.hasZone()).toBe(true)
-    expect(mom.hasTime()).toBe(true)
-    mom.stripZone()
-    expect(mom.format()).toBe('2014-06-08T10:00:00')
-    expect(mom.hasZone()).toBe(false)
-    expect(mom.hasTime()).toBe(true)
-  })
-
-  it('can be made ambigously-timed via stripTime', function() {
-    var mom = FullCalendar.moment.utc('2014-06-08T10:00:00-0000')
-    expect(mom.hasTime()).toBe(true)
-    expect(mom.hasZone()).toBe(true)
-    mom.stripTime()
-    expect(mom.format()).toBe('2014-06-08')
-    expect(mom.hasTime()).toBe(false)
-    expect(mom.hasZone()).toBe(false)
-  })
-
-})

+ 0 - 656
tests/automated/legacy/moment-construct.js

@@ -1,656 +0,0 @@
-describe('moment constructor', function() {
-
-  describe('FullCalendar.moment', function() {
-    testDefaultProcessing(FullCalendar.moment)
-  })
-
-  describe('FullCalendar.moment.utc', function() {
-    testForcedUTCProcessing(FullCalendar.moment.utc)
-  })
-
-  describe('FullCalendar.moment.parseZone', function() {
-    testLiteralProcessing(FullCalendar.moment.parseZone)
-  })
-
-  describe('Calendar::moment', function() {
-    [
-      {
-        description: 'when there is no timezone',
-        timezone: false,
-        testMethod: testLiteralProcessing
-      },
-      {
-        description: 'when timezone is local',
-        timezone: 'local',
-        testMethod: testForcedLocalProcessing
-      },
-      {
-        description: 'when timezone is UTC',
-        timezone: 'UTC',
-        testMethod: testForcedUTCProcessing
-      },
-      {
-        description: 'when timezone is custom',
-        timezone: 'America/Unknown',
-        testMethod: testLiteralProcessing
-      }
-    ]
-      .forEach(function(scenario) {
-        describe(scenario.description, function() {
-          scenario.testMethod(function() {
-            initCalendar({
-              timezone: scenario.timezone
-            })
-            return currentCalendar.moment.apply(currentCalendar, arguments)
-          })
-        })
-      })
-  })
-
-  function testDefaultProcessing(construct) {
-
-    describe('when given an ISO8601 string', function() {
-
-      it('is local regardless of inputted zone', function() {
-        var mom = construct('2014-06-08T10:00:00+0130')
-        var simpleMoment = moment('2014-06-08T10:00:00+0130')
-        expect(mom.hasTime()).toBe(true)
-        expect(mom.hasZone()).toBe(true)
-        expect(mom.utcOffset()).toBe(simpleMoment.utcOffset())
-      })
-
-      it('parses as local when no zone', function() {
-        var mom = construct('2014-06-08T10:00:00')
-        var dateEquiv = new Date(2014, 5, 8, 10)
-        expect(mom.toArray()).toEqual([ 2014, 5, 8, 10, 0, 0, 0 ])
-        expect(mom.hasTime()).toBe(true)
-        expect(mom.hasZone()).toBe(true)
-        expect(mom.utcOffset()).toBe(-dateEquiv.getTimezoneOffset())
-      })
-
-      it('accepts an ambiguous time', function() {
-        var mom = construct('2014-06-08')
-        expect(mom.toArray()).toEqual([ 2014, 5, 8, 0, 0, 0, 0 ])
-        expect(mom.hasTime()).toBe(false)
-        expect(mom.hasZone()).toBe(false)
-        expect(mom.utcOffset()).toBe(0)
-      })
-
-      it('assumes first-of-month and ambiguous time when no date-of-month', function() {
-        var mom = construct('2014-06')
-        expect(mom.toArray()).toEqual([ 2014, 5, 1, 0, 0, 0, 0 ])
-        expect(mom.hasTime()).toBe(false)
-        expect(mom.hasZone()).toBe(false)
-        expect(mom.utcOffset()).toBe(0)
-      })
-    })
-
-    it('parses string/format combo as local', function() {
-      var mom = construct('12-25-1995', 'MM-DD-YYYY')
-      var dateEquiv = new Date(1995, 11, 25)
-      expect(mom.toArray()).toEqual([ 1995, 11, 25, 0, 0, 0, 0 ])
-      expect(mom.hasZone()).toBe(true)
-      expect(mom.hasTime()).toBe(true)
-      expect(mom.utcOffset()).toBe(-dateEquiv.getTimezoneOffset())
-    })
-
-    it('is local when given no arguments', function() {
-      var mom = construct()
-      var dateEquiv = new Date()
-      expect(mom.hasTime()).toBe(true)
-      expect(mom.hasZone()).toBe(true)
-      expect(mom.utcOffset()).toBe(-dateEquiv.getTimezoneOffset())
-    })
-
-    it('is local when given a native Date', function() {
-      var date = new Date()
-      var mom = construct(date)
-      expect(mom.hasTime()).toBe(true)
-      expect(mom.hasZone()).toBe(true)
-      expect(mom.utcOffset()).toBe(-date.getTimezoneOffset())
-    })
-
-    describe('when given an array', function() {
-
-      it('is local and has a time when given hours/minutes/seconds', function() {
-        var a = [ 2014, 5, 8, 11, 0, 0 ]
-        var dateEquiv = new Date(2014, 5, 8, 11, 0, 0)
-        var mom = construct(a)
-        expect(mom.toArray()).toEqual([ 2014, 5, 8, 11, 0, 0, 0 ])
-        expect(mom.hasTime()).toBe(true)
-        expect(mom.hasZone()).toBe(true)
-        expect(mom.utcOffset()).toBe(-dateEquiv.getTimezoneOffset())
-      })
-
-      it('is local and has a time even when no hours/minutes/seconds', function() {
-        var a = [ 2014, 5, 8 ]
-        var dateEquiv = new Date(2014, 5, 8)
-        var mom = construct(a)
-        expect(mom.toArray()).toEqual([ 2014, 5, 8, 0, 0, 0, 0 ])
-        expect(mom.hasTime()).toBe(true)
-        expect(mom.hasZone()).toBe(true)
-        expect(mom.utcOffset()).toBe(-dateEquiv.getTimezoneOffset())
-      })
-    })
-
-    describe('when given an existing FullCalendar moment', function() {
-
-      it('remains ambiguously-zoned', function() {
-        var noTzMoment = FullCalendar.moment.parseZone('2014-05-28T00:00:00')
-        var newMoment = construct(noTzMoment)
-        expect(newMoment.toArray()).toEqual([ 2014, 4, 28, 0, 0, 0, 0 ])
-        expect(newMoment.hasTime()).toBe(true)
-        expect(newMoment.hasZone()).toBe(false)
-        expect(newMoment.utcOffset()).toBe(0)
-      })
-
-      it('remains ambiguously-timed', function() {
-        var noTimeMoment = FullCalendar.moment('2014-05-28')
-        var newMoment = construct(noTimeMoment)
-        expect(newMoment.toArray()).toEqual([ 2014, 4, 28, 0, 0, 0, 0 ])
-        expect(newMoment.hasTime()).toBe(false)
-        expect(newMoment.hasZone()).toBe(false)
-        expect(newMoment.utcOffset()).toBe(0)
-      })
-    });
-
-    [
-      { description: 'when given an existing FullCalendar moment', moment: FullCalendar.moment },
-      { description: 'when given an existing basic moment', moment: moment }
-    ]
-      .forEach(function(scenario) {
-        describe(scenario.description, function() {
-
-          it('remains local', function() {
-            var localMoment = scenario.moment('2014-05-28T00:00:00')
-            var newMoment = construct(localMoment)
-            expect(newMoment.toArray()).toEqual([ 2014, 4, 28, 0, 0, 0, 0 ])
-            expect(newMoment.hasTime()).toBe(true)
-            expect(newMoment.hasZone()).toBe(true)
-            expect(newMoment.utcOffset()).toBe(localMoment.utcOffset())
-          })
-
-          it('remains UTC', function() {
-            var utcMoment = scenario.moment.utc('2014-05-28T00:00:00')
-            var newMoment = construct(utcMoment)
-            expect(newMoment.toArray()).toEqual([ 2014, 4, 28, 0, 0, 0, 0 ])
-            expect(newMoment.hasTime()).toBe(true)
-            expect(newMoment.hasZone()).toBe(true)
-            expect(newMoment.utcOffset()).toBe(0)
-          })
-
-          it('remains in a custom timezone', function() {
-            var tzMoment = scenario.moment.parseZone('2014-05-28T00:00:00+13:00')
-            var newMoment = construct(tzMoment)
-            expect(newMoment.toArray()).toEqual([ 2014, 4, 28, 0, 0, 0, 0 ])
-            expect(newMoment.hasTime()).toBe(true)
-            expect(newMoment.hasZone()).toBe(true)
-            expect(newMoment.utcOffset()).toBe(780)
-          })
-
-          it('produces a new moment that is in no way bound to the old', function() {
-            var oldMoment = scenario.moment()
-            var newMoment = construct(oldMoment)
-            expect(newMoment).not.toBe(oldMoment)
-            expect(+newMoment).toBe(+oldMoment)
-            newMoment.add(1, 'months')
-            expect(+newMoment).not.toBe(+oldMoment)
-          })
-        })
-      })
-  }
-
-  function testForcedLocalProcessing(construct) {
-
-    describe('when given an ISO8601 string', function() {
-
-      it('is local regardless of inputted zone', function() {
-        var mom = construct('2014-06-08T10:00:00+0130')
-        var simpleMoment = moment('2014-06-08T10:00:00+0130')
-        expect(mom.hasTime()).toBe(true)
-        expect(mom.hasZone()).toBe(true)
-        expect(mom.utcOffset()).toBe(simpleMoment.utcOffset())
-      })
-
-      it('parses as local when no zone', function() {
-        var mom = construct('2014-06-08T10:00:00')
-        var dateEquiv = new Date(2014, 5, 8, 10)
-        expect(mom.toArray()).toEqual([ 2014, 5, 8, 10, 0, 0, 0 ])
-        expect(mom.hasTime()).toBe(true)
-        expect(mom.hasZone()).toBe(true)
-        expect(mom.utcOffset()).toBe(-dateEquiv.getTimezoneOffset())
-      })
-
-      it('accepts an ambiguous time', function() {
-        var mom = construct('2014-06-08')
-        expect(mom.toArray()).toEqual([ 2014, 5, 8, 0, 0, 0, 0 ])
-        expect(mom.hasTime()).toBe(false)
-        expect(mom.hasZone()).toBe(false)
-        expect(mom.utcOffset()).toBe(0)
-      })
-
-      it('assumes first-of-month and ambiguous time when no date-of-month', function() {
-        var mom = construct('2014-06')
-        expect(mom.toArray()).toEqual([ 2014, 5, 1, 0, 0, 0, 0 ])
-        expect(mom.hasTime()).toBe(false)
-        expect(mom.hasZone()).toBe(false)
-        expect(mom.utcOffset()).toBe(0)
-      })
-    })
-
-    it('parses string/format combo as local', function() {
-      var mom = construct('12-25-1995', 'MM-DD-YYYY')
-      var dateEquiv = new Date(1995, 11, 25)
-      expect(mom.toArray()).toEqual([ 1995, 11, 25, 0, 0, 0, 0 ])
-      expect(mom.hasZone()).toBe(true)
-      expect(mom.hasTime()).toBe(true)
-      expect(mom.utcOffset()).toBe(-dateEquiv.getTimezoneOffset())
-    })
-
-    it('is local when given no arguments', function() {
-      var mom = construct()
-      var dateEquiv = new Date()
-      expect(mom.hasTime()).toBe(true)
-      expect(mom.hasZone()).toBe(true)
-      expect(mom.utcOffset()).toBe(-dateEquiv.getTimezoneOffset())
-    })
-
-    it('is local when given a native Date', function() {
-      var date = new Date()
-      var mom = construct(date)
-      expect(mom.hasTime()).toBe(true)
-      expect(mom.hasZone()).toBe(true)
-      expect(mom.utcOffset()).toBe(-date.getTimezoneOffset())
-    })
-
-    describe('when given an array', function() {
-
-      it('is local and has a time when given hours/minutes/seconds', function() {
-        var a = [ 2014, 5, 8, 11, 0, 0 ]
-        var dateEquiv = new Date(2014, 5, 8, 11, 0, 0)
-        var mom = construct(a)
-        expect(mom.toArray()).toEqual([ 2014, 5, 8, 11, 0, 0, 0 ])
-        expect(mom.hasTime()).toBe(true)
-        expect(mom.hasZone()).toBe(true)
-        expect(mom.utcOffset()).toBe(-dateEquiv.getTimezoneOffset())
-      })
-
-      it('is local and has a time even when no hours/minutes/seconds', function() {
-        var a = [ 2014, 5, 8 ]
-        var dateEquiv = new Date(2014, 5, 8)
-        var mom = construct(a)
-        expect(mom.toArray()).toEqual([ 2014, 5, 8, 0, 0, 0, 0 ])
-        expect(mom.hasTime()).toBe(true)
-        expect(mom.hasZone()).toBe(true)
-        expect(mom.utcOffset()).toBe(-dateEquiv.getTimezoneOffset())
-      })
-    })
-
-    describe('when given an existing FullCalendar moment', function() {
-
-      it('converts to local when ambiguously-zoned', function() {
-        var noTzMoment = FullCalendar.moment.parseZone('2014-05-28T00:00:00')
-        var newMoment = construct(noTzMoment)
-        var dateEquiv = new Date(2014, 4, 28)
-        expect(newMoment.toArray()).toEqual([ 2014, 4, 28, 0, 0, 0, 0 ])
-        expect(newMoment.hasTime()).toBe(true)
-        expect(newMoment.hasZone()).toBe(true)
-        expect(newMoment.utcOffset()).toBe(-dateEquiv.getTimezoneOffset())
-      })
-
-      it('remains ambiguously-timed', function() {
-        var noTimeMoment = FullCalendar.moment('2014-05-28')
-        var newMoment = construct(noTimeMoment)
-        expect(newMoment.toArray()).toEqual([ 2014, 4, 28, 0, 0, 0, 0 ])
-        expect(newMoment.hasTime()).toBe(false)
-        expect(newMoment.hasZone()).toBe(false)
-        expect(newMoment.utcOffset()).toBe(0)
-      })
-    });
-
-    [
-      { description: 'when given an existing FullCalendar moment', moment: FullCalendar.moment },
-      { description: 'when given an existing basic moment', moment: moment }
-    ]
-      .forEach(function(scenario) {
-        describe(scenario.description, function() {
-
-          it('remains local', function() {
-            var localMoment = scenario.moment('2014-05-28T00:00:00')
-            var newMoment = construct(localMoment)
-            expect(newMoment.toArray()).toEqual([ 2014, 4, 28, 0, 0, 0, 0 ])
-            expect(newMoment.hasTime()).toBe(true)
-            expect(newMoment.hasZone()).toBe(true)
-            expect(newMoment.utcOffset()).toBe(localMoment.utcOffset())
-          })
-
-          it('converts to local when UTC', function() {
-            var utcMoment = scenario.moment.utc('2014-05-28T00:00:00')
-            var newMoment = construct(utcMoment)
-            var dateEquiv = new Date(Date.UTC(2014, 4, 28))
-            expect(+newMoment).toBe(+dateEquiv)
-            expect(newMoment.hasTime()).toBe(true)
-            expect(newMoment.hasZone()).toBe(true)
-            expect(newMoment.utcOffset()).toBe(-dateEquiv.getTimezoneOffset())
-          })
-
-          it('converts to local when in a custom zone', function() {
-            var tzMoment = scenario.moment.parseZone('2014-05-28T00:00:00+13:00')
-            var dateEquiv = tzMoment.toDate()
-            var newMoment = construct(tzMoment)
-            expect(+newMoment).toBe(+dateEquiv)
-            expect(newMoment.hasTime()).toBe(true)
-            expect(newMoment.hasZone()).toBe(true)
-            expect(newMoment.utcOffset()).toBe(-dateEquiv.getTimezoneOffset())
-          })
-
-          it('produces a new moment that is in no way bound to the old', function() {
-            var oldMoment = scenario.moment()
-            var newMoment = construct(oldMoment)
-            expect(newMoment).not.toBe(oldMoment)
-            expect(+newMoment).toBe(+oldMoment)
-            newMoment.add(1, 'months')
-            expect(+newMoment).not.toBe(+oldMoment)
-          })
-        })
-      })
-  }
-
-  function testForcedUTCProcessing(construct) {
-
-    describe('when given an ISO8601 string', function() {
-
-      it('is UTC regardless of inputted zone', function() {
-        var mom = construct('2014-06-08T10:00:00+0130')
-        expect(mom.hasTime()).toBe(true)
-        expect(mom.hasZone()).toBe(true)
-        expect(mom.utcOffset()).toBe(0)
-      })
-
-      it('parses as UTC when no zone', function() {
-        var mom = construct('2014-06-08T10:00:00')
-        expect(mom.toArray()).toEqual([ 2014, 5, 8, 10, 0, 0, 0 ])
-        expect(mom.hasTime()).toBe(true)
-        expect(mom.hasZone()).toBe(true)
-        expect(mom.utcOffset()).toBe(0)
-      })
-
-      it('accepts an ambiguous time', function() {
-        var mom = construct('2014-06-08')
-        expect(mom.toArray()).toEqual([ 2014, 5, 8, 0, 0, 0, 0 ])
-        expect(mom.hasTime()).toBe(false)
-        expect(mom.hasZone()).toBe(false)
-        expect(mom.utcOffset()).toBe(0)
-      })
-
-      it('assumes first-of-month and ambiguous time when no date-of-month', function() {
-        var mom = construct('2014-06')
-        expect(mom.toArray()).toEqual([ 2014, 5, 1, 0, 0, 0, 0 ])
-        expect(mom.hasTime()).toBe(false)
-        expect(mom.hasZone()).toBe(false)
-        expect(mom.utcOffset()).toBe(0)
-      })
-    })
-
-    it('parses string/format combo as UTC', function() {
-      var mom = construct('12-25-1995', 'MM-DD-YYYY')
-      expect(mom.toArray()).toEqual([ 1995, 11, 25, 0, 0, 0, 0 ])
-      expect(mom.hasZone()).toBe(true)
-      expect(mom.hasTime()).toBe(true)
-      expect(mom.utcOffset()).toBe(0)
-    })
-
-    it('is UTC when given no arguments', function() {
-      var mom = construct()
-      expect(mom.hasTime()).toBe(true)
-      expect(mom.hasZone()).toBe(true)
-      expect(mom.utcOffset()).toBe(0)
-    })
-
-    it('is UTC when given a native Date', function() {
-      var date = new Date()
-      var mom = construct(date)
-      expect(mom.hasTime()).toBe(true)
-      expect(mom.hasZone()).toBe(true)
-      expect(mom.utcOffset()).toBe(0)
-    })
-
-    describe('when given an array', function() {
-
-      it('is UTC and has a time when given hours/minutes/seconds', function() {
-        var a = [ 2014, 5, 8, 11, 0, 0 ]
-        var mom = construct(a)
-        expect(mom.toArray()).toEqual([ 2014, 5, 8, 11, 0, 0, 0 ])
-        expect(mom.hasTime()).toBe(true)
-        expect(mom.hasZone()).toBe(true)
-        expect(mom.utcOffset()).toBe(0)
-      })
-
-      it('is UTC and has a time even when no hours/minutes/seconds', function() {
-        var a = [ 2014, 5, 8 ]
-        var mom = construct(a)
-        expect(mom.toArray()).toEqual([ 2014, 5, 8, 0, 0, 0, 0 ])
-        expect(mom.hasTime()).toBe(true)
-        expect(mom.hasZone()).toBe(true)
-        expect(mom.utcOffset()).toBe(0)
-      })
-    })
-
-    describe('when given an existing FullCalendar moment', function() {
-
-      it('converts to UTC when ambiguously-zoned', function() {
-        var noTzMoment = FullCalendar.moment.utc('2014-05-28T00:00:00')
-        var newMoment = construct(noTzMoment)
-        expect(newMoment.toArray()).toEqual([ 2014, 4, 28, 0, 0, 0, 0 ])
-        expect(newMoment.hasTime()).toBe(true)
-        expect(newMoment.hasZone()).toBe(true)
-        expect(newMoment.utcOffset()).toBe(0)
-      })
-
-      it('remains ambiguously-timed', function() {
-        var noTimeMoment = FullCalendar.moment('2014-05-28')
-        var newMoment = construct(noTimeMoment)
-        expect(newMoment.toArray()).toEqual([ 2014, 4, 28, 0, 0, 0, 0 ])
-        expect(newMoment.hasTime()).toBe(false)
-        expect(newMoment.hasZone()).toBe(false)
-        expect(newMoment.utcOffset()).toBe(0)
-      })
-    });
-
-    [
-      { description: 'when given an existing FullCalendar moment', moment: FullCalendar.moment },
-      { description: 'when given an existing basic moment', moment: moment }
-    ]
-      .forEach(function(scenario) {
-        describe(scenario.description, function() {
-
-          it('converts to UTC when local', function() {
-            var localMoment = scenario.moment('2014-05-28T00:00:00')
-            var newMoment = construct(localMoment)
-            expect(+newMoment).toBe(+localMoment) // same point in time
-            expect(newMoment.hasTime()).toBe(true)
-            expect(newMoment.hasZone()).toBe(true)
-            expect(newMoment.utcOffset()).toBe(0)
-          })
-
-          it('remains UTC', function() {
-            var utcMoment = scenario.moment.utc('2014-05-28T00:00:00')
-            var newMoment = construct(utcMoment)
-            expect(newMoment.toArray()).toEqual([ 2014, 4, 28, 0, 0, 0, 0 ])
-            expect(newMoment.hasTime()).toBe(true)
-            expect(newMoment.hasZone()).toBe(true)
-            expect(newMoment.utcOffset()).toBe(0)
-          })
-
-          it('converts to UTC when in a custom zone', function() {
-            var tzMoment = scenario.moment.parseZone('2014-05-28T00:00:00+13:00')
-            var newMoment = construct(tzMoment)
-            expect(+newMoment).toBe(+tzMoment) // same point in time
-            expect(newMoment.hasTime()).toBe(true)
-            expect(newMoment.hasZone()).toBe(true)
-            expect(newMoment.utcOffset()).toBe(0)
-          })
-
-          it('produces a new moment that is in no way bound to the old', function() {
-            var oldMoment = scenario.moment.utc()
-            var newMoment = construct(oldMoment)
-            expect(newMoment).not.toBe(oldMoment)
-            expect(+newMoment).toBe(+oldMoment)
-            newMoment.add(1, 'months')
-            expect(+newMoment).not.toBe(+oldMoment)
-          })
-        })
-      })
-  }
-
-  function testLiteralProcessing(construct) {
-
-    describe('when given an ISO8601 string', function() {
-
-      it('retains the inputted zone', function() {
-        var mom = construct('2014-06-08T11:00:00+0130')
-        expect(mom.toArray()).toEqual([ 2014, 5, 8, 11, 0, 0, 0 ])
-        expect(mom.hasTime()).toBe(true)
-        expect(mom.hasZone()).toBe(true)
-        expect(mom.utcOffset()).toBe(90)
-      })
-
-      it('accepts an ambiguous zone', function() {
-        var mom = construct('2014-06-08T11:00:00')
-        expect(mom.toArray()).toEqual([ 2014, 5, 8, 11, 0, 0, 0 ])
-        expect(mom.hasTime()).toBe(true)
-        expect(mom.hasZone()).toBe(false)
-        expect(mom.utcOffset()).toBe(0)
-      })
-
-      it('accepts an ambiguous time', function() {
-        var mom = construct('2014-06-08')
-        expect(mom.toArray()).toEqual([ 2014, 5, 8, 0, 0, 0, 0 ])
-        expect(mom.hasTime()).toBe(false)
-        expect(mom.hasZone()).toBe(false)
-        expect(mom.utcOffset()).toBe(0)
-      })
-
-      it('assumes first-of-month and ambiguous time when no date-of-month', function() {
-        var mom = construct('2014-06')
-        expect(mom.toArray()).toEqual([ 2014, 5, 1, 0, 0, 0, 0 ])
-        expect(mom.hasTime()).toBe(false)
-        expect(mom.hasZone()).toBe(false)
-        expect(mom.utcOffset()).toBe(0)
-      })
-    })
-
-    it('parses string/format combo as UTC', function() {
-      var mom = construct('12-25-1995', 'MM-DD-YYYY')
-      expect(mom.toArray()).toEqual([ 1995, 11, 25, 0, 0, 0, 0 ])
-      expect(mom.hasZone()).toBe(true)
-      expect(mom.hasTime()).toBe(true)
-      expect(mom.utcOffset()).toBe(0)
-    })
-
-    it('is local when given no arguments', function() {
-      var mom = construct()
-      var dateEquiv = new Date()
-      expect(mom.hasTime()).toBe(true)
-      expect(mom.hasZone()).toBe(true)
-      expect(mom.utcOffset()).toBe(-dateEquiv.getTimezoneOffset())
-    })
-
-    it('is local when given a native Date', function() {
-      var date = new Date()
-      var mom = construct(date)
-      expect(mom.hasTime()).toBe(true)
-      expect(mom.hasZone()).toBe(true)
-      expect(mom.utcOffset()).toBe(-date.getTimezoneOffset())
-    })
-
-    describe('when given an array', function() {
-
-      it('is ambiguously-zoned and has a time when given hours/minutes/seconds', function() {
-        var a = [ 2014, 5, 8, 11, 0, 0 ]
-        var mom = construct(a)
-        expect(mom.toArray()).toEqual([ 2014, 5, 8, 11, 0, 0, 0 ])
-        expect(mom.hasTime()).toBe(true)
-        expect(mom.hasZone()).toBe(false)
-        expect(mom.utcOffset()).toBe(0)
-      })
-
-      it('is ambiguously-zoned and has a time even when no hours/minutes/seconds', function() {
-        var a = [ 2014, 5, 8 ]
-        var mom = construct(a)
-        expect(mom.toArray()).toEqual([ 2014, 5, 8, 0, 0, 0, 0 ])
-        expect(mom.hasTime()).toBe(true)
-        expect(mom.hasZone()).toBe(false)
-        expect(mom.utcOffset()).toBe(0)
-      })
-    })
-
-    describe('when given an existing FullCalendar moment', function() {
-
-      it('remains ambiguously-zoned', function() {
-        var noTzMoment = FullCalendar.moment.parseZone('2014-05-28T00:00:00')
-        var newMoment = construct(noTzMoment)
-        expect(newMoment.toArray()).toEqual([ 2014, 4, 28, 0, 0, 0, 0 ])
-        expect(newMoment.hasTime()).toBe(true)
-        expect(newMoment.hasZone()).toBe(false)
-        expect(newMoment.utcOffset()).toBe(0)
-      })
-
-      it('remains ambiguously-timed', function() {
-        var noTimeMoment = FullCalendar.moment('2014-05-28')
-        var newMoment = construct(noTimeMoment)
-        expect(newMoment.toArray()).toEqual([ 2014, 4, 28, 0, 0, 0, 0 ])
-        expect(newMoment.hasTime()).toBe(false)
-        expect(newMoment.hasZone()).toBe(false)
-        expect(newMoment.utcOffset()).toBe(0)
-      })
-    });
-
-    [
-      { description: 'when given an existing FullCalendar moment', moment: FullCalendar.moment },
-      { description: 'when given an existing basic moment', moment: moment }
-    ]
-      .forEach(function(scenario) {
-        describe(scenario.description, function() {
-
-          it('remains local', function() {
-            var localMoment = scenario.moment('2014-05-28T00:00:00')
-            var newMoment = construct(localMoment)
-            expect(newMoment.toArray()).toEqual([ 2014, 4, 28, 0, 0, 0, 0 ])
-            expect(newMoment.hasTime()).toBe(true)
-            expect(newMoment.hasZone()).toBe(true)
-            expect(newMoment.utcOffset()).toBe(localMoment.utcOffset())
-          })
-
-          it('remains UTC', function() {
-            var utcMoment = scenario.moment.utc('2014-05-28T00:00:00')
-            var newMoment = construct(utcMoment)
-            expect(newMoment.toArray()).toEqual([ 2014, 4, 28, 0, 0, 0, 0 ])
-            expect(newMoment.hasTime()).toBe(true)
-            expect(newMoment.hasZone()).toBe(true)
-            expect(newMoment.utcOffset()).toBe(0)
-          })
-
-          it('remains in a custom timezone', function() {
-            var tzMoment = scenario.moment.parseZone('2014-05-28T00:00:00+13:00')
-            var newMoment = construct(tzMoment)
-            expect(newMoment.toArray()).toEqual([ 2014, 4, 28, 0, 0, 0, 0 ])
-            expect(newMoment.hasTime()).toBe(true)
-            expect(newMoment.hasZone()).toBe(true)
-            expect(newMoment.utcOffset()).toBe(780)
-          })
-
-          it('produces a new moment that is in no way bound to the old', function() {
-            var oldMoment = scenario.moment()
-            var newMoment = construct(oldMoment)
-            expect(newMoment).not.toBe(oldMoment)
-            expect(+newMoment).toBe(+oldMoment)
-            newMoment.add(1, 'months')
-            expect(+newMoment).not.toBe(+oldMoment)
-          })
-
-        })
-      })
-  }
-
-})

+ 0 - 74
tests/automated/legacy/moment-formatting.js

@@ -1,74 +0,0 @@
-
-describe('moment date formatting', function() {
-
-  it('should let vanilla momentjs formatting to work correctly', function() {
-    var mom = FullCalendar.moment.utc('2014-05-20T14:00:00')
-    var s1 = mom.format('dddd, MMMM Do YYYY, h:mm:ss a')
-    var s2 = mom.format('ddd, hA Z')
-    expect(s1).toEqual('Tuesday, May 20th 2014, 2:00:00 pm')
-    expect(s2).toEqual('Tue, 2PM +00:00')
-  })
-
-  it('should allow momentjs text escaping', function() {
-    var mom = FullCalendar.moment.utc('2014-05-20T14:00:00')
-    var s = mom.format('MMMM Do YYYY [TIME:] h:mm:ss a')
-    expect(s).toEqual('May 20th 2014 TIME: 2:00:00 pm')
-  })
-
-  it('should correctly output LT (regression)', function() {
-    var mom = FullCalendar.moment.utc('2014-05-20T06:00:00')
-    var s = mom.format('ddd, LT')
-    expect(s).toEqual('Tue, 6:00 AM')
-  })
-
-  it('should correctly output hT (regression)', function() {
-    var mom = FullCalendar.moment.utc('2014-05-20T06:00:00')
-    var s = mom.format('ddd, hT')
-    expect(s).toEqual('Tue, 6A')
-  })
-
-  it('should output A/P with the \'T\' formatting character', function() {
-    var mom1 = FullCalendar.moment.utc('2014-05-20T06:00:00')
-    var mom2 = FullCalendar.moment.utc('2014-05-20T14:00:00')
-    var s1 = mom1.format('ddd, h T')
-    var s2 = mom2.format('ddd, h T')
-    expect(s1).toEqual('Tue, 6 A')
-    expect(s2).toEqual('Tue, 2 P')
-  })
-
-  it('should output A/P with the \'t\' formatting character', function() {
-    var mom1 = FullCalendar.moment.utc('2014-05-20T06:00:00')
-    var mom2 = FullCalendar.moment.utc('2014-05-20T14:00:00')
-    var s1 = mom1.format('ddd, h t')
-    var s2 = mom2.format('ddd, h t')
-    expect(s1).toEqual('Tue, 6 a')
-    expect(s2).toEqual('Tue, 2 p')
-  })
-
-  it('should output non-zero numbers enclosed in parenthesis', function() {
-    var mom = FullCalendar.moment.utc('2014-05-20T06:30:00')
-    var s = mom.format('ddd h(:mm)a')
-    expect(s).toEqual('Tue 6:30am')
-  })
-
-  it('should not output zero numbers enclosed in parenthesis', function() {
-    var mom = FullCalendar.moment.utc('2014-05-20T06:00:00')
-    var s = mom.format('ddd h(:mm)a')
-    expect(s).toEqual('Tue 6am')
-  })
-
-  it('should allow escaping of parenthesis as literal text', function() {
-    var mom = FullCalendar.moment.utc('2014-05-20T06:00:00')
-    var s1 = mom.format('ddd h[(]:mm)a')
-    // var s2 = mom.format('ddd h(:mm[)]a'); // we currently cant nest [] inside ()
-    expect(s1).toEqual('Tue 6(:00)am')
-    // expect(s2).toEqual('Tue 6(:00)am');
-  })
-
-  it('should not allow custom fullCalendar formatting for moments created natively', function() {
-    var mom = moment.utc('2014-11-11T12:00:00')
-    var s = mom.format('MMMM Do YYYY, h(:mm)')
-    expect(s).toEqual('November 11th 2014, 12(:00)')
-  })
-
-})

+ 0 - 97
tests/automated/legacy/moment-misc.js

@@ -1,97 +0,0 @@
-describe('FCMoment::time', function() {
-
-  describe('getter', function() {
-
-    // the scenario where an ambiguously-timed moment's 00:00 time is checked
-    // is taken care of in moment-ambig.js
-
-    it('should return 00:00 for a moment with 00:00 time', function() {
-      var mom = FullCalendar.moment.utc('2014-06-08T00:00:00')
-      var time = mom.time()
-      expect(time).toEqualDuration('00:00')
-    })
-
-    it('should return the time of a moment with a time', function() {
-      var mom = FullCalendar.moment.utc('2014-06-08T07:30:00')
-      var time = mom.time()
-      expect(time).toEqualDuration('07:30')
-    })
-  })
-
-  describe('setter', function() {
-
-    // the scenario where an ambiguously-timed moment is given a time via the setter
-    // is taken care of in moment-ambig.js
-
-    describe('when setting with a Duration', function() {
-
-      it('should give a moment with 00:00 a time', function() {
-        var mom = FullCalendar.moment.utc('2014-06-08T00:00:00')
-        var dur = moment.duration('13:25')
-        mom.time(dur)
-        expect(mom).toEqualMoment('2014-06-08T13:25:00+00:00')
-      })
-
-      it('should overwrite the time of a moment with a time', function() {
-        var mom = FullCalendar.moment.utc('2014-06-08T05:00:00')
-        var dur = moment.duration('13:25')
-        mom.time(dur)
-        expect(mom).toEqualMoment('2014-06-08T13:25:00+00:00')
-      })
-
-      it('should move to next day if greater than 24 hours', function() {
-        var mom = FullCalendar.moment.utc('2014-06-08T00:00:00')
-        var dur = moment.duration('1.01:00:00') // 1 day, 1 hour
-        mom.time(dur)
-        expect(mom).toEqualMoment('2014-06-09T01:00:00+00:00')
-      })
-    })
-
-    describe('when setting with another Moment', function() {
-
-      it('should give a moment with 00:00 a time', function() {
-        var mom1 = FullCalendar.moment.utc('2014-06-09T00:00:00')
-        var mom2 = FullCalendar.moment.utc('2014-07-22T05:30:00') // a Tues, so .days() -> 2
-        mom1.time(mom2)
-        expect(mom1).toEqualMoment('2014-06-09T05:30:00+00:00')
-      })
-
-      it('should overwrite the time of a moment with a time', function() {
-        var mom1 = FullCalendar.moment.utc('2014-06-09T04:15:00')
-        var mom2 = FullCalendar.moment.utc('2014-07-22T05:30:00') // a Tues, so .days() -> 2
-        mom1.time(mom2)
-        expect(mom1).toEqualMoment('2014-06-09T05:30:00+00:00')
-      })
-    })
-  })
-})
-
-describe('FCMoment::week', function() {
-
-  it('computes based on a weekNumberCalculation function', function() {
-    initCalendar({
-      weekNumberCalculation: function(date) {
-        expect(moment.isMoment(date)).toBe(true)
-        return 999
-      }
-    })
-    var mom = currentCalendar.moment()
-    expect(mom.week()).toBe(999)
-  })
-
-  it('computes based on a weekNumberCalculation "ISO" value', function() {
-    initCalendar({
-      weekNumberCalculation: 'ISO'
-    })
-    var mom = currentCalendar.moment('2015-02-22') // is 9 local week, 8 ISO week
-    expect(mom.week()).toBe(8)
-  })
-
-  it('computes based on a weekNumberCalculation "local" value', function() {
-    initCalendar({
-      weekNumberCalculation: 'local'
-    })
-    var mom = currentCalendar.moment('2015-02-22') // is 9 local week, 8 ISO week
-    expect(mom.week()).toBe(9)
-  })
-})

+ 0 - 102
tests/automated/legacy/monthNames.js

@@ -1,102 +0,0 @@
-describe('month name', function() {
-  var referenceDate = '2014-01-01' // The day the world is hung-over
-  var locales = [ 'es', 'fr', 'de', 'zh-cn', 'nl' ]
-
-  pushOptions({
-    defaultDate: referenceDate
-  })
-
-  afterEach(function() {
-    moment.locale('en') // reset moment's global locale
-  });
-
-  [ 'month', 'agendaDay', 'basicDay' ].forEach(function(viewClass, index, viewClasses) {
-    describe('when view is ' + viewClass, function() {
-      pushOptions({
-        defaultView: viewClass
-      })
-
-      describe('when locale is default', function() {
-        beforeEach(function() {
-          moment.locale('en')
-        })
-        pushOptions({
-          locale: 'en'
-        })
-
-        moment.months().forEach(function(month, index, months) {
-          it('should be ' + month, function(done) {
-            initCalendar({
-              defaultDate: FullCalendar.moment(referenceDate).add(index, 'months'),
-              eventAfterAllRender: function() {
-                expect($('.fc-toolbar h2')).toContainText(month)
-                done()
-              }
-            })
-          })
-        })
-      })
-
-      locales.forEach(function(locale, index, locales) {
-        describe('when locale is ' + locale, function() {
-          beforeEach(function() {
-            moment.locale(locale)
-          })
-          pushOptions({
-            locale: locale
-          })
-
-          moment.months().forEach(function(month, index, months) { // `month` will always be English
-            it('should be the translated name for ' + month, function(done) {
-              var localeMonths = moment.months()
-              var localeMonth = localeMonths[index]
-              var defaultDate = FullCalendar.moment(referenceDate).add(index, 'months')
-              initCalendar({
-                defaultDate: defaultDate,
-                eventAfterAllRender: function() {
-                  if (viewClass === 'month') { // with month view check for occurence of the monthname in the title
-                    expect($('.fc-toolbar h2')).toContainText(localeMonth)
-                  } else { // with day views ensure that title contains the properly formatted phrase
-                    expect($('.fc-toolbar h2')).toHaveText(defaultDate.format('LL'))
-                  }
-                  done()
-                }
-              })
-            })
-          })
-        })
-      })
-
-      describe('when names are specified', function() {
-        var months = [
-          'I',
-          'II',
-          'III',
-          'IV',
-          'V',
-          'VI',
-          'VII',
-          'IIX',
-          'IX',
-          'X',
-          'XI',
-          'XII'
-        ]
-
-        months.forEach(function(month, index, months) { // `month` is our custom month name
-          it('should be the translated name for ' + month, function(done) {
-            initCalendar({
-              defaultDate: FullCalendar.moment(referenceDate).add(index, 'months'),
-              monthNames: months,
-              eventAfterAllRender: function() {
-                expect($('.fc-toolbar h2')).toContainText(month)
-                done()
-              }
-            })
-          })
-        })
-      })
-    })
-  })
-
-})

+ 0 - 97
tests/automated/legacy/monthNamesShort.js

@@ -1,97 +0,0 @@
-describe('short month name', function() {
-  var referenceDate = '2014-01-01' // The day the world is hung-over
-  var locales = [ 'es', 'fr', 'de', 'zh-cn', 'nl' ]
-
-  pushOptions({
-    defaultDate: referenceDate
-  })
-
-  afterEach(function() {
-    moment.locale('en') // reset moment's global locale
-  });
-
-  [ 'agendaWeek', 'basicWeek' ].forEach(function(viewClass, index, viewClasses) {
-    describe('when view is ' + viewClass, function() {
-      pushOptions({
-        defaultView: viewClass
-      })
-
-      describe('when locale is default', function() {
-        beforeEach(function() {
-          moment.locale('en')
-        })
-        pushOptions({
-          locale: 'en'
-        })
-
-        moment.monthsShort().forEach(function(monthShort, index) {
-          it('should be ' + monthShort, function(done) {
-            initCalendar({
-              defaultDate: FullCalendar.moment(referenceDate).add(index, 'months'),
-              eventAfterAllRender: function() {
-                expect($('.fc-toolbar h2')).toContainText(monthShort)
-                done()
-              }
-            })
-          })
-        })
-      })
-
-      locales.forEach(function(locale, index, locales) {
-        describe('when locale is ' + locale, function() {
-          beforeEach(function() {
-            moment.locale(locale)
-          })
-          pushOptions({
-            locale: locale
-          })
-
-          moment.monthsShort().forEach(function(monthShort, index) { // `monthShort` will always be English
-            it('should be the translated name for ' + monthShort, function(done) {
-              var localeMonthsShort = moment.monthsShort()
-              var localeMonthShort = localeMonthsShort[index]
-              initCalendar({
-                defaultDate: FullCalendar.moment(referenceDate).add(index, 'months'),
-                eventAfterAllRender: function() {
-                  expect($('.fc-toolbar h2')).toContainText(localeMonthShort)
-                  done()
-                }
-              })
-            })
-          })
-        })
-      })
-
-      describe('when names are specified', function() {
-        var monthsShort = [
-          'I',
-          'II',
-          'III',
-          'IV',
-          'V',
-          'VI',
-          'VII',
-          'IIX',
-          'IX',
-          'X',
-          'XI',
-          'XII'
-        ]
-
-        monthsShort.forEach(function(monthShort, index) { // `monthShort` will be our custom month name
-          it('should be the translated name for ' + monthShort, function(done) {
-            initCalendar({
-              defaultDate: FullCalendar.moment(referenceDate).add(index, 'months'),
-              monthNamesShort: monthsShort,
-              eventAfterAllRender: function() {
-                expect($('.fc-toolbar h2')).toContainText(monthShort)
-                done()
-              }
-            })
-          })
-        })
-      })
-    })
-  })
-
-})

+ 0 - 746
tests/automated/legacy/updateEvent.js

@@ -1,746 +0,0 @@
-describe('updateEvent', function() {
-
-  pushOptions({
-    defaultDate: '2014-05-01',
-    defaultView: 'month'
-  })
-
-  function getMainEvent() {
-    return currentCalendar.clientEvents(function(event) {
-      return event.className[0] === 'mainEvent'
-    })[0]
-  }
-
-  function getRelatedEvent() {
-    return currentCalendar.clientEvents(function(event) {
-      return event.className[0] === 'relatedEvent'
-    })[0]
-  }
-
-  describe('when moving an all-day event\'s start', function() {
-    describe('when a related event doesn\'t have an end', function() {
-      it('should move the start by the delta and leave the end as null', function() {
-        var event, relatedEvent
-
-        initCalendar({
-          events: [
-            { id: '1', start: '2014-05-01', allDay: true, className: 'mainEvent' },
-            { id: '1', start: '2014-05-10', allDay: true, className: 'relatedEvent' }
-          ]
-        })
-
-        event = getMainEvent()
-        event.start.add(2, 'days')
-        currentCalendar.updateEvent(event)
-
-        event = getMainEvent()
-        expect(event.start).toEqualMoment('2014-05-03')
-        expect(event.end).toBeNull()
-
-        relatedEvent = getRelatedEvent()
-        expect(relatedEvent.start).toEqualMoment('2014-05-12')
-        expect(relatedEvent.end).toBeNull()
-      })
-    })
-    describe('when a related event has an end', function() {
-      it('should move the start and end by the delta', function() {
-        var event, relatedEvent
-
-        initCalendar({
-          events: [
-            { id: '1', start: '2014-05-01', allDay: true, className: 'mainEvent' },
-            { id: '1', start: '2014-05-10', end: '2014-05-12', allDay: true, className: 'relatedEvent' }
-          ]
-        })
-
-        event = getMainEvent()
-        event.start.add(2, 'days')
-        expect(event.start).toEqualMoment('2014-05-03')
-        expect(event.end).toBeNull()
-        currentCalendar.updateEvent(event)
-
-        relatedEvent = getRelatedEvent()
-        expect(relatedEvent.start).toEqualMoment('2014-05-12')
-        expect(relatedEvent.end).toEqualMoment('2014-05-14')
-      })
-    })
-  })
-
-  describe('when moving an timed event\'s start', function() {
-    describe('when a related event doesn\'t have an end', function() {
-      it('should move the start by the delta and leave the end as null', function() {
-        var event, relatedEvent
-
-        initCalendar({
-          events: [
-            { id: '1', start: '2014-05-01T12:00:00', allDay: false, className: 'mainEvent' },
-            { id: '1', start: '2014-05-10T06:00:00', allDay: false, className: 'relatedEvent' }
-          ]
-        })
-
-        event = getMainEvent()
-        event.start.add({ days: 2, hours: 2 })
-        currentCalendar.updateEvent(event)
-        expect(event.start).toEqualMoment('2014-05-03T14:00:00')
-        expect(event.end).toBeNull()
-
-        relatedEvent = getRelatedEvent()
-        expect(relatedEvent.start).toEqualMoment('2014-05-12T08:00:00')
-        expect(relatedEvent.end).toBeNull()
-      })
-    })
-    describe('when a related event has an end', function() {
-      it('should move the start and end by the delta', function() {
-        var event, relatedEvent
-
-        initCalendar({
-          events: [
-            { id: '1', start: '2014-05-01T12:00:00', allDay: false, className: 'mainEvent' },
-            { id: '1', start: '2014-05-10T06:00:00', end: '2014-05-12T08:00:00', allDay: false, className: 'relatedEvent' }
-          ]
-        })
-
-        event = getMainEvent()
-        event.start.add({ days: 2, hours: 2 })
-        currentCalendar.updateEvent(event)
-
-        event = getMainEvent()
-        expect(event.start).toEqualMoment('2014-05-03T14:00:00')
-        expect(event.end).toBeNull()
-
-        relatedEvent = getRelatedEvent()
-        expect(relatedEvent.start).toEqualMoment('2014-05-12T08:00:00')
-        expect(relatedEvent.end).toEqualMoment('2014-05-14T10:00:00')
-      })
-    })
-  })
-
-  describe('when moving an all-day event\'s end', function() {
-    describe('when a related event doesn\'t have an end', function() {
-      it('should give the end a default duration plus the delta', function() {
-        var event, relatedEvent
-
-        initCalendar({
-          defaultAllDayEventDuration: { days: 2 },
-          events: [
-            { id: '1', start: '2014-05-01', end: '2014-05-03', allDay: true, className: 'mainEvent' },
-            { id: '1', start: '2014-05-10', allDay: true, className: 'relatedEvent' }
-          ]
-        })
-
-        event = getMainEvent()
-        event.end.add(1, 'days')
-        currentCalendar.updateEvent(event)
-
-        event = getMainEvent()
-        expect(event.start).toEqualMoment('2014-05-01')
-        expect(event.end).toEqualMoment('2014-05-04')
-
-        relatedEvent = getRelatedEvent()
-        expect(relatedEvent.start).toEqualMoment('2014-05-10')
-        expect(relatedEvent.end).toEqualMoment('2014-05-13')
-      })
-    })
-    describe('when a related event has an end', function() {
-      it('should move the end by the delta', function() {
-        var event, relatedEvent
-
-        initCalendar({
-          events: [
-            { id: '1', start: '2014-05-01', end: '2014-05-03', allDay: true, className: 'mainEvent' },
-            { id: '1', start: '2014-05-10', end: '2014-05-13', allDay: true, className: 'relatedEvent' }
-          ]
-        })
-
-        event = getMainEvent()
-        event.end.add(1, 'days')
-        currentCalendar.updateEvent(event)
-
-        event = getMainEvent()
-        expect(event.start).toEqualMoment('2014-05-01')
-        expect(event.end).toEqualMoment('2014-05-04')
-
-        relatedEvent = getRelatedEvent()
-        expect(relatedEvent.start).toEqualMoment('2014-05-10')
-        expect(relatedEvent.end).toEqualMoment('2014-05-14')
-      })
-    })
-  })
-
-  describe('when moving a timed event\'s end', function() {
-    describe('when a related event doesn\'t have an end', function() {
-      describe('when forceEventDuration is off', function() {
-        it('should give the end a default duration plus the delta', function() {
-          var event, relatedEvent
-
-          initCalendar({
-            forceEventDuration: false,
-            defaultTimedEventDuration: { hours: 2 },
-            events: [
-              { id: '1', start: '2014-05-01T12:00:00', end: '2014-05-01T15:00:00', allDay: false, className: 'mainEvent' },
-              { id: '1', start: '2014-05-10T16:00:00', allDay: false, className: 'relatedEvent' }
-            ]
-          })
-
-          event = getMainEvent()
-          event.end.add({ days: 1, hours: 1 })
-          currentCalendar.updateEvent(event)
-
-          event = getMainEvent()
-          expect(event.start).toEqualMoment('2014-05-01T12:00:00')
-          expect(event.end).toEqualMoment('2014-05-02T16:00:00')
-
-          relatedEvent = getRelatedEvent()
-          expect(relatedEvent.start).toEqualMoment('2014-05-10T16:00:00')
-          expect(relatedEvent.end).toEqualMoment('2014-05-11T19:00:00')
-        })
-      })
-      describe('when forceEventDuration is on', function() {
-        it('should reset end based on defaultTimedEventDuration', function() {
-          var event, relatedEvent
-
-          initCalendar({
-            forceEventDuration: true,
-            defaultTimedEventDuration: { hours: 2 },
-            events: [
-              { id: '1', start: '2014-05-01T12:00:00', end: '2014-05-01T15:00:00', allDay: false, className: 'mainEvent' },
-              { id: '1', start: '2014-05-10T16:00:00', end: '2014-05-10T19:00:00', allDay: false, className: 'relatedEvent' }
-            ]
-          })
-
-          event = getMainEvent()
-          event.start.add({ days: 1, hours: -12 })
-          event.end = null
-          currentCalendar.updateEvent(event)
-
-          event = getMainEvent()
-          expect(event.start).toEqualMoment('2014-05-02T00:00:00')
-          expect(event.end).toEqualMoment('2014-05-02T02:00:00')
-
-          relatedEvent = getRelatedEvent()
-          expect(relatedEvent.start).toEqualMoment('2014-05-11T04:00:00')
-          expect(relatedEvent.end).toEqualMoment('2014-05-11T06:00:00')
-        })
-      })
-      describe('when forceEventDuration is turned on late', function() {
-        it('should force a duration when updateEvent called', function() {
-          var event
-
-          initCalendar({
-            defaultTimedEventDuration: { hours: 1 },
-            events: [
-              { id: '1', start: '2014-05-01T12:00:00', allDay: false, className: 'mainEvent' }
-            ]
-          })
-
-          event = getMainEvent()
-          expect(event.start).toEqualMoment('2014-05-01T12:00:00')
-          expect(event.end).toBeNull()
-
-          currentCalendar.option({
-            forceEventDuration: true
-          })
-
-          // should stay the same
-          event = getMainEvent()
-          expect(event.start).toEqualMoment('2014-05-01T12:00:00')
-          expect(event.end).toBeNull()
-
-          event.start.add({ days: 1, hours: -12 })
-          currentCalendar.updateEvent(event)
-
-          // should generate an end
-          event = getMainEvent()
-          expect(event.start).toEqualMoment('2014-05-02T00:00:00')
-          expect(event.end).toEqualMoment('2014-05-02T01:00:00')
-        })
-      })
-    })
-    describe('when a related event has an end', function() {
-      it('should move the end by the delta', function() {
-        var event, relatedEvent
-
-        initCalendar({
-          events: [
-            { id: '1', start: '2014-05-01T12:00:00', end: '2014-05-01T14:00:00', allDay: false, className: 'mainEvent' },
-            { id: '1', start: '2014-05-10T16:00:00', end: '2014-05-10T19:00:00', allDay: false, className: 'relatedEvent' }
-          ]
-        })
-
-        event = getMainEvent()
-        event.end.add({ days: 1, hours: 1 })
-        currentCalendar.updateEvent(event)
-
-        event = getMainEvent()
-        expect(event.start).toEqualMoment('2014-05-01T12:00:00')
-        expect(event.end).toEqualMoment('2014-05-02T15:00:00')
-
-        relatedEvent = getRelatedEvent()
-        expect(relatedEvent.start).toEqualMoment('2014-05-10T16:00:00')
-        expect(relatedEvent.end).toEqualMoment('2014-05-11T20:00:00')
-      })
-    })
-  })
-
-  describe('when moving an all-day event\'s start and end', function() {
-    it('should move the start and end of related events', function() {
-      var event, relatedEvent
-
-      initCalendar({
-        events: [
-          { id: '1', start: '2014-05-01', end: '2014-05-03', allDay: true, className: 'mainEvent' },
-          { id: '1', start: '2014-05-10', end: '2014-05-13', allDay: true, className: 'relatedEvent' }
-        ]
-      })
-
-      event = getMainEvent()
-      event.start.add(2, 'days')
-      event.end.add(3, 'day')
-      currentCalendar.updateEvent(event)
-
-      event = getMainEvent()
-      expect(event.start).toEqualMoment('2014-05-03')
-      expect(event.end).toEqualMoment('2014-05-06')
-
-      relatedEvent = getRelatedEvent()
-      expect(relatedEvent.start).toEqualMoment('2014-05-12')
-      expect(relatedEvent.end).toEqualMoment('2014-05-16')
-    })
-  })
-
-  describe('when moving a timed event\'s start and end', function() {
-    it('should move the start and end of related events', function() {
-      var event, relatedEvent
-
-      initCalendar({
-        events: [
-          { id: '1', start: '2014-05-01T06:00:00', end: '2014-05-03T06:00:00', allDay: false, className: 'mainEvent' },
-          { id: '1', start: '2014-05-10T06:00:00', end: '2014-05-13T06:00:00', allDay: false, className: 'relatedEvent' }
-        ]
-      })
-
-      event = getMainEvent()
-      event.start.add({ days: 2, hours: 1 })
-      event.end.add({ days: 3, hours: 2 })
-      currentCalendar.updateEvent(event)
-
-      event = getMainEvent()
-      expect(event.start).toEqualMoment('2014-05-03T07:00:00')
-      expect(event.end).toEqualMoment('2014-05-06T08:00:00')
-
-      relatedEvent = getRelatedEvent()
-      expect(relatedEvent.start).toEqualMoment('2014-05-12T07:00:00')
-      expect(relatedEvent.end).toEqualMoment('2014-05-16T08:00:00')
-    })
-  })
-
-  describe('when giving a time to an all-day event\'s start', function() {
-    it('should erase the start\'s time and keep the event all-day', function() {
-      var event, relatedEvent
-
-      initCalendar({
-        events: [
-          { id: '1', start: '2014-05-01', end: '2014-05-03', allDay: true, className: 'mainEvent' },
-          { id: '1', start: '2014-05-10', end: '2014-05-13', allDay: true, className: 'relatedEvent' }
-        ]
-      })
-
-      event = getMainEvent()
-      event.start.time('18:00')
-      currentCalendar.updateEvent(event)
-
-      event = getMainEvent()
-      expect(event.allDay).toEqual(true)
-      expect(event.start).toEqualMoment('2014-05-01')
-      expect(event.end).toEqualMoment('2014-05-03')
-
-      relatedEvent = getRelatedEvent()
-      expect(relatedEvent.allDay).toEqual(true)
-      expect(relatedEvent.start).toEqualMoment('2014-05-10')
-      expect(relatedEvent.end).toEqualMoment('2014-05-13')
-    })
-  })
-
-  // issue 2194
-  describe('when accidentally giving a time to an all-day event with moment()', function() {
-    it('should erase the start and end\'s times and keep the event all-day', function() {
-      var event
-
-      initCalendar({
-        events: [
-          { id: '1', start: '2014-05-01', end: '2014-05-03', allDay: true, className: 'mainEvent' }
-        ]
-      })
-
-      event = getMainEvent()
-      event.start = moment('2014-05-01') // won't have an ambig time
-      event.end = moment('2014-05-03') // "
-      currentCalendar.updateEvent(event)
-
-      event = getMainEvent()
-      expect(event.allDay).toEqual(true)
-      expect(event.start).toEqualMoment('2014-05-01')
-      expect(event.end).toEqualMoment('2014-05-03')
-    })
-  })
-
-  describe('when changing an event from all-day to timed', function() {
-    describe('when the event\'s dates remain all-day', function() {
-      it('should make the event and related events allDay=false and 00:00', function() {
-        var event, relatedEvent
-
-        initCalendar({
-          events: [
-            { id: '1', start: '2014-05-01', end: '2014-05-03', allDay: true, className: 'mainEvent' },
-            { id: '1', start: '2014-05-10', end: '2014-05-13', allDay: true, className: 'relatedEvent' }
-          ]
-        })
-
-        event = getMainEvent()
-        event.allDay = false
-        currentCalendar.updateEvent(event)
-
-        event = getMainEvent()
-        expect(event.allDay).toEqual(false)
-        expect(event.start).toEqualMoment('2014-05-01T00:00:00')
-        expect(event.end).toEqualMoment('2014-05-03T00:00:00')
-
-        relatedEvent = getRelatedEvent()
-        expect(relatedEvent.allDay).toEqual(false)
-        expect(relatedEvent.start).toEqualMoment('2014-05-10T00:00:00')
-        expect(relatedEvent.end).toEqualMoment('2014-05-13T00:00:00')
-      })
-    })
-    describe('when the event\'s dates are set to a time', function() {
-      it('should adjust the event and related event\'s allDay/start/end', function() {
-        var event, relatedEvent
-
-        initCalendar({
-          events: [
-            { id: '1', start: '2014-05-01', end: '2014-05-03', allDay: true, className: 'mainEvent' },
-            { id: '1', start: '2014-05-10', end: '2014-05-13', allDay: true, className: 'relatedEvent' }
-          ]
-        })
-
-        event = getMainEvent()
-        event.allDay = false
-        event.start.time('14:00')
-        currentCalendar.updateEvent(event)
-
-        event = getMainEvent()
-        expect(event.allDay).toEqual(false)
-        expect(event.start).toEqualMoment('2014-05-01T14:00:00')
-        expect(event.end).toEqualMoment('2014-05-03T00:00:00')
-
-        relatedEvent = getRelatedEvent()
-        expect(relatedEvent.allDay).toEqual(false)
-        expect(relatedEvent.start).toEqualMoment('2014-05-10T14:00:00')
-        expect(relatedEvent.end).toEqualMoment('2014-05-13T00:00:00')
-      })
-    })
-    describe('when the event\'s start is also moved', function() {
-      it('should adjust the event and related event\'s allDay/start/end', function() {
-        var event, relatedEvent
-
-        initCalendar({
-          events: [
-            { id: '1', start: '2014-05-01', end: '2014-05-03', allDay: true, className: 'mainEvent' },
-            { id: '1', start: '2014-05-10', end: '2014-05-13', allDay: true, className: 'relatedEvent' }
-          ]
-        })
-
-        event = getMainEvent()
-        event.allDay = false
-        event.start.add(1, 'days')
-        currentCalendar.updateEvent(event)
-
-        event = getMainEvent()
-        expect(event.allDay).toEqual(false)
-        expect(event.start).toEqualMoment('2014-05-02T00:00:00')
-        expect(event.end).toEqualMoment('2014-05-03T00:00:00')
-
-        relatedEvent = getRelatedEvent()
-        expect(relatedEvent.allDay).toEqual(false)
-        expect(relatedEvent.start).toEqualMoment('2014-05-11T00:00:00')
-        expect(relatedEvent.end).toEqualMoment('2014-05-13T00:00:00')
-      })
-    })
-  })
-
-  describe('when changing an event from timed to all-day', function() {
-    it('should adjust the event and related event\'s allDay/start/end', function() {
-      var event, relatedEvent
-
-      initCalendar({
-        events: [
-          { id: '1', start: '2014-05-01T06:00:00', end: '2014-05-03T06:00:00', allDay: false, className: 'mainEvent' },
-          { id: '1', start: '2014-05-10T06:00:00', end: '2014-05-13T06:00:00', allDay: false, className: 'relatedEvent' }
-        ]
-      })
-
-      event = getMainEvent()
-      event.allDay = true
-      currentCalendar.updateEvent(event)
-
-      event = getMainEvent()
-      expect(event.allDay).toEqual(true)
-      expect(event.start).toEqualMoment('2014-05-01')
-      expect(event.end).toEqualMoment('2014-05-03')
-
-      relatedEvent = getRelatedEvent()
-      expect(relatedEvent.allDay).toEqual(true)
-      expect(relatedEvent.start).toEqualMoment('2014-05-10')
-      expect(relatedEvent.end).toEqualMoment('2014-05-13')
-    })
-    it('should adjust the event and related event\'s allDay/start/end and account for a new start', function() {
-      var event, relatedEvent
-
-      initCalendar({
-        events: [
-          { id: '1', start: '2014-05-01T06:00:00', end: '2014-05-03T06:00:00', allDay: false, className: 'mainEvent' },
-          { id: '1', start: '2014-05-10T06:00:00', end: '2014-05-13T06:00:00', allDay: false, className: 'relatedEvent' }
-        ]
-      })
-
-      event = getMainEvent()
-      event.allDay = true
-      event.start.add(1, 'days')
-      currentCalendar.updateEvent(event)
-
-      event = getMainEvent()
-      expect(event.allDay).toEqual(true)
-      expect(event.start).toEqualMoment('2014-05-02')
-      expect(event.end).toEqualMoment('2014-05-03')
-
-      relatedEvent = getRelatedEvent()
-      expect(relatedEvent.allDay).toEqual(true)
-      expect(relatedEvent.start).toEqualMoment('2014-05-11')
-      expect(relatedEvent.end).toEqualMoment('2014-05-13')
-    })
-  })
-
-  it('should accept moments that have unnormalized start/end', function() {
-    var event, relatedEvent
-
-    initCalendar({
-      events: [
-        { id: '1', start: '2014-05-01T06:00:00', end: '2014-05-03T06:00:00', allDay: false, className: 'mainEvent' },
-        { id: '1', start: '2014-05-10T06:00:00', end: '2014-05-13T06:00:00', allDay: false, className: 'relatedEvent' }
-      ]
-    })
-
-    event = getMainEvent()
-    event.start = '2014-05-02T06:00:00' // move by 1 day
-    event.end = '2014-05-05T06:00:00' // increase duration by 1 day
-    currentCalendar.updateEvent(event)
-
-    event = getMainEvent()
-    expect(event.allDay).toEqual(false)
-    expect(moment.isMoment(event.start)).toEqual(true)
-    expect(event.start).toEqualMoment('2014-05-02T06:00:00')
-    expect(moment.isMoment(event.end)).toEqual(true)
-    expect(event.end).toEqualMoment('2014-05-05T06:00:00')
-
-    relatedEvent = getRelatedEvent()
-    expect(relatedEvent.allDay).toEqual(false)
-    expect(moment.isMoment(relatedEvent.start)).toEqual(true)
-    expect(relatedEvent.start).toEqualMoment('2014-05-11T06:00:00')
-    expect(moment.isMoment(relatedEvent.end)).toEqual(true)
-    expect(relatedEvent.end).toEqualMoment('2014-05-15T06:00:00')
-  })
-
-  it('should copy color-related properties to related events', function() {
-    var event, relatedEvent
-
-    initCalendar({
-      events: [
-        { id: '1', start: '2014-05-01', end: '2014-05-03', allDay: true, className: 'mainEvent' },
-        { id: '1', start: '2014-05-10', end: '2014-05-13', allDay: true, className: 'relatedEvent' }
-      ]
-    })
-
-    event = getMainEvent()
-    event.color = 'red'
-    currentCalendar.updateEvent(event)
-
-    relatedEvent = getRelatedEvent()
-    expect(relatedEvent.color).toBe('red')
-  })
-
-  it('should copy non-standard properties to related events', function() {
-    var event, relatedEvent
-    var specialObj = {}
-
-    initCalendar({
-      events: [
-        { id: '1', start: '2014-05-01', end: '2014-05-03', allDay: true, className: 'mainEvent' },
-        { id: '1', start: '2014-05-10', end: '2014-05-13', allDay: true, className: 'relatedEvent' }
-      ]
-    })
-
-    event = getMainEvent()
-    event.someForeignKey = '123'
-    event.myObj = specialObj
-    currentCalendar.updateEvent(event)
-
-    relatedEvent = getRelatedEvent()
-    expect(relatedEvent.someForeignKey).toBe('123')
-    expect(relatedEvent.myObj).toBe(specialObj)
-  })
-
-  function whenMovingStart(should) {
-    describe('when moving an timed event\'s start', function() {
-      beforeEach(function() {
-        var event
-
-        initCalendar({
-          events: [
-            { id: '1', start: '2014-05-01T06:00:00+05:00', end: '2014-05-03T06:00:00+05:00', allDay: false, className: 'mainEvent' },
-            { id: '1', start: '2014-05-11T06:00:00+05:00', end: '2014-05-13T06:00:00+05:00', allDay: false, className: 'relatedEvent' }
-          ]
-        })
-
-        event = getMainEvent()
-        event.start.add(2, 'hours')
-        currentCalendar.updateEvent(event)
-      })
-      should()
-    })
-  }
-
-  function whenMovingEnd(should) {
-    describe('when moving a timed event\'s end', function() {
-      beforeEach(function() {
-        var event
-
-        initCalendar({
-          events: [
-            { id: '1', start: '2014-05-01T06:00:00+05:00', end: '2014-05-03T06:00:00+05:00', allDay: false, className: 'mainEvent' },
-            { id: '1', start: '2014-05-11T06:00:00+05:00', end: '2014-05-13T06:00:00+05:00', allDay: false, className: 'relatedEvent' }
-          ]
-        })
-
-        event = getMainEvent()
-        event.end.add(2, 'hours')
-        currentCalendar.updateEvent(event)
-      })
-      should()
-    })
-  }
-
-  function whenMovingToTimed(should) {
-    describe('when moving an all-day event to timed', function() {
-      beforeEach(function() {
-        var event
-
-        initCalendar({
-          events: [
-            { id: '1', start: '2014-05-01', end: '2014-05-03', allDay: true, className: 'mainEvent' },
-            { id: '1', start: '2014-05-11', end: '2014-05-13', allDay: true, className: 'relatedEvent' }
-          ]
-        })
-
-        event = getMainEvent()
-        event.allDay = false
-        currentCalendar.updateEvent(event)
-      })
-      should()
-    })
-  }
-
-  function shouldBeAmbiguouslyZoned() {
-    it('should make the events ambiguously zoned', function() {
-      var event = getMainEvent()
-      var relatedEvent = getRelatedEvent()
-
-      expect(event.start.hasZone()).toEqual(false)
-      if (event.end) {
-        expect(event.end.hasZone()).toEqual(false)
-      }
-
-      expect(relatedEvent.start.hasZone()).toEqual(false)
-      if (relatedEvent.end) {
-        expect(relatedEvent.end.hasZone()).toEqual(false)
-      }
-    })
-  }
-
-  function shouldBeLocal() {
-    it('should make the events local', function() {
-      var event = getMainEvent()
-      var relatedEvent = getRelatedEvent()
-
-      expect(event.start.hasZone()).toEqual(true)
-      expect(event.start._isUTC).toEqual(false)
-      if (event.end) {
-        expect(event.end.hasZone()).toEqual(true)
-        expect(event.end._isUTC).toEqual(false)
-      }
-
-      expect(relatedEvent.start.hasZone()).toEqual(true)
-      expect(relatedEvent.start._isUTC).toEqual(false)
-      if (relatedEvent.end) {
-        expect(relatedEvent.end.hasZone()).toEqual(true)
-        expect(relatedEvent.end._isUTC).toEqual(false)
-      }
-    })
-  }
-
-  function shouldBeUTC() {
-    it('should make the events UTC', function() {
-      var event = getMainEvent()
-      var relatedEvent = getRelatedEvent()
-
-      expect(event.start.hasZone()).toEqual(true)
-      expect(event.start._isUTC).toEqual(true)
-      if (event.end) {
-        expect(event.end.hasZone()).toEqual(true)
-        expect(event.end._isUTC).toEqual(true)
-      }
-
-      expect(event.start.hasZone()).toEqual(true)
-      expect(event.start._isUTC).toEqual(true)
-      if (relatedEvent.end) {
-        expect(relatedEvent.end.hasZone()).toEqual(true)
-        expect(relatedEvent.end._isUTC).toEqual(true)
-      }
-    })
-  }
-
-  describe('when calendar has no timezone', function() {
-    pushOptions({
-      timezone: false
-    })
-    whenMovingStart(shouldBeAmbiguouslyZoned)
-    whenMovingEnd(shouldBeAmbiguouslyZoned)
-    whenMovingToTimed(shouldBeAmbiguouslyZoned)
-  })
-
-  describe('when calendar has a local timezone', function() {
-    pushOptions({
-      timezone: 'local'
-    })
-    whenMovingStart(shouldBeLocal)
-    whenMovingEnd(shouldBeLocal)
-    whenMovingToTimed(shouldBeLocal)
-  })
-
-  describe('when calendar has a UTC timezone', function() {
-    pushOptions({
-      timezone: 'UTC'
-    })
-    whenMovingStart(shouldBeUTC)
-    whenMovingEnd(shouldBeUTC)
-    whenMovingToTimed(shouldBeUTC)
-  })
-
-  describe('when calendar has a custom timezone', function() {
-    pushOptions({
-      timezone: 'America/Chicago'
-    })
-    whenMovingStart(shouldBeAmbiguouslyZoned)
-    whenMovingEnd(shouldBeAmbiguouslyZoned)
-    whenMovingToTimed(shouldBeAmbiguouslyZoned)
-  })
-
-})