Adam Shaw 7 лет назад
Родитель
Сommit
b4e882689f
2 измененных файлов с 17 добавлено и 0 удалено
  1. 6 0
      src/datelib/formatting-native.ts
  2. 11 0
      tests/automated/datelib/main.js

+ 6 - 0
src/datelib/formatting-native.ts

@@ -42,9 +42,15 @@ export class NativeFormatter implements DateFormatter {
 
     let full0 = formatZonedMarker(start, context, standardSettings)
     let full1 = formatZonedMarker(end, context, standardSettings)
+
+    if (full0 === full1) {
+      return full0
+    }
+
     let partialFormatSettings = computePartialFormattingOptions(standardSettings, biggestUnitForPartial)
     let partial0 = formatZonedMarker(start, context, partialFormatSettings)
     let partial1 = formatZonedMarker(end, context, partialFormatSettings)
+
     let insertion = findCommonInsertion(full0, partial0, full1, partial1)
     let separator = this.extendedSettings.separator || DEFAULT_SEPARATOR
 

+ 11 - 0
tests/automated/datelib/main.js

@@ -194,6 +194,17 @@ fdescribe('datelib', function() {
         expect(s).toBe('June 8 - 9, 2018')
       })
 
+      it('works with different days of same month, with inprecise formatter', function() {
+        var formatter = createFormatter({
+          month: 'long',
+          year: 'numeric'
+        })
+        var m0 = env.createMarker('2018-06-08')
+        var m1 = env.createMarker('2018-06-09')
+        var s = env.formatRange(m0, m1, formatter)
+        expect(s).toBe('June 2018')
+      })
+
       it('works with different day/month of same year', function() {
         var m0 = env.createMarker('2018-06-08')
         var m1 = env.createMarker('2018-07-09')