diff --git a/app/src/main/java/org/tasks/caldav/iCalendar.kt b/app/src/main/java/org/tasks/caldav/iCalendar.kt index 59a752225..95fbb07a8 100644 --- a/app/src/main/java/org/tasks/caldav/iCalendar.kt +++ b/app/src/main/java/org/tasks/caldav/iCalendar.kt @@ -248,7 +248,7 @@ class iCalendar @Inject constructor( } } - private val IS_APPLE_SORT_ORDER = { x: Property? -> x?.name.equals(APPLE_SORT_ORDER, true) } + internal val IS_APPLE_SORT_ORDER = { x: Property? -> x?.name.equals(APPLE_SORT_ORDER, true) } private val IS_OC_HIDESUBTASKS = { x: Property? -> x?.name.equals(OC_HIDESUBTASKS, true) } private val IS_MOZ_SNOOZE_TIME = { x: Property? -> x?.name.equals(MOZ_SNOOZE_TIME, true) } private val IS_MOZ_LASTACK = { x: Property? -> x?.name.equals(MOZ_LASTACK, true) } diff --git a/app/src/test/java/org/tasks/caldav/extensions/XPropTests.kt b/app/src/test/java/org/tasks/caldav/extensions/XPropTests.kt new file mode 100644 index 000000000..ac4669493 --- /dev/null +++ b/app/src/test/java/org/tasks/caldav/extensions/XPropTests.kt @@ -0,0 +1,38 @@ +package org.tasks.caldav.extensions + +import at.bitfire.ical4android.Task +import org.junit.Assert.assertEquals +import org.junit.Assert.assertNull +import org.junit.Test +import org.tasks.caldav.iCalendar.Companion.IS_APPLE_SORT_ORDER +import org.tasks.caldav.iCalendar.Companion.order + +class XPropTests { + @Test + fun setSortOrder() { + val task = Task() + task.order = 12345 + + assertEquals(12345L, task.order) + } + + @Test + fun removeSortOrder() { + val task = Task() + task.order = 12345 + task.order = null + + assertNull(task.order) + assertEquals(0, task.unknownProperties.count(IS_APPLE_SORT_ORDER)) + } + + @Test + fun overwriteSortOrder() { + val task = Task() + task.order = 12345 + task.order = 67890 + + assertEquals(67890L, task.order) + assertEquals(1, task.unknownProperties.count(IS_APPLE_SORT_ORDER)) + } +} \ No newline at end of file