{ "cases": [ { "name": "parseUnixTime(0) => 1970-01-01", "expression": "@{parseUnixTime(0)}", "expected": { "type": "datetime", "value": "1970-01-01 00:00:00" }, "platforms": [ "android", "ios", "web" ] }, { "name": "parseUnixTime(1 second)", "expression": "@{parseUnixTime(1)}", "expected": { "type": "datetime", "value": "1970-01-01 00:00:01" }, "platforms": [ "android", "ios", "web" ] }, { "name": "parseUnixTime(03h02m01s)", "expression": "@{parseUnixTime(10921)}", "expected": { "type": "datetime", "value": "1970-01-01 03:02:01" }, "platforms": [ "android", "ios", "web" ] }, { "name": "nowLocal() > parseUnixTime(0) => true", "expression": "@{nowLocal() > parseUnixTime(0)}", "expected": { "type": "boolean", "value": true }, "platforms": [ "android", "ios", "web" ] }, { "name": "addMillis(parseUnixTime(0), 5000) => 1970-01-01 00:00:05", "expression": "@{addMillis(parseUnixTime(0), 5000)}", "expected": { "type": "datetime", "value": "1970-01-01 00:00:05" }, "platforms": [ "android", "ios", "web" ] }, { "name": "addMillis(parseUnixTime(0), 1000) < addMillis(parseUnixTime(0), 1001) => true", "expression": "@{addMillis(parseUnixTime(0), 1000) < addMillis(parseUnixTime(0), 1001) }", "expected": { "type": "boolean", "value": true }, "platforms": [ "android", "ios", "web" ] }, { "name": "setYear(parseUnixTime(0), 2022) => 2022-01-01 00:00:00", "expression": "@{setYear(parseUnixTime(0), 2022)}", "expected": { "type": "datetime", "value": "2022-01-01 00:00:00" }, "platforms": [ "android", "ios", "web" ] }, { "name": "setMonth(parseUnixTime(0), 3) => 1970-10-01 00:00:00", "expression": "@{setMonth(parseUnixTime(0), 3)}", "expected": { "type": "datetime", "value": "1970-03-01 00:00:00" }, "platforms": [ "android", "ios", "web" ] }, { "name": "setMonth(parseUnixTime(0), 17) => error", "expression": "@{setMonth(parseUnixTime(0), 17)}", "expected": { "type": "error", "value": "Failed to evaluate [setMonth(1970-01-01 00:00:00, 17)]. Expecting month in [1..12], instead got 17." }, "platforms": [ "android", "web", "ios" ] }, { "name": "setMonth(parseUnixTime(0), -5) => error", "expression": "@{setMonth(parseUnixTime(0), -5)}", "expected": { "type": "error", "value": "Failed to evaluate [setMonth(1970-01-01 00:00:00, -5)]. Expecting month in [1..12], instead got -5." }, "platforms": [ "android", "web", "ios" ] }, { "name": "setDay(parseUnixTime(0), 10) => 1970-01-10 00:00:00", "expression": "@{setDay(parseUnixTime(0), 10)}", "expected": { "type": "datetime", "value": "1970-01-10 00:00:00" }, "platforms": [ "android", "ios", "web" ] }, { "name": "setDay(setMonth(parseUnixTime(0), 2), 29) => error", "expression": "@{setDay(setMonth(parseUnixTime(0), 2), 29)}", "expected": { "type": "error", "value": "Failed to evaluate [setDay(1970-02-01 00:00:00, 29)]. Unable to set day 29 for date 1970-02-01 00:00:00." }, "platforms": [ "android", "web", "ios" ] }, { "name": "setDay(parseUnixTime(0), 0) => error", "expression": "@{setDay(parseUnixTime(0), 0)}", "expected": { "type": "error", "value": "Failed to evaluate [setDay(1970-01-01 00:00:00, 0)]. Unable to set day 0 for date 1970-01-01 00:00:00." }, "platforms": [ "android", "web", "ios" ] }, { "name": "setDay(parseUnixTime(0), -5) => error", "expression": "@{setDay(parseUnixTime(0), -5)}", "expected": { "type": "error", "value": "Failed to evaluate [setDay(1970-01-01 00:00:00, -5)]. Unable to set day -5 for date 1970-01-01 00:00:00." }, "platforms": [ "android", "web", "ios" ] }, { "name": "setDay(setMonth(parseUnixTime(0), 2), -1) => 1970-01-31 00:00:00", "expression": "@{setDay(setMonth(parseUnixTime(0), 2), -1)}", "expected": { "type": "datetime", "value": "1970-01-31 00:00:00" }, "platforms": [ "android", "ios", "web" ] }, { "name": "setHours(parseUnixTime(0), 10) => 1970-01-01 10:00:00", "expression": "@{setHours(parseUnixTime(0), 10)}", "expected": { "type": "datetime", "value": "1970-01-01 10:00:00" }, "platforms": [ "android", "ios", "web" ] }, { "name": "setHours(parseUnixTime(0), 77) => error", "expression": "@{setHours(parseUnixTime(0), 77)}", "expected": { "type": "error", "value": "Failed to evaluate [setHours(1970-01-01 00:00:00, 77)]. Expecting hours in [0..23], instead got 77." }, "platforms": [ "android", "web", "ios" ] }, { "name": "setHours(parseUnixTime(0), -5) => error", "expression": "@{setHours(parseUnixTime(0), -5)}", "expected": { "type": "error", "value": "Failed to evaluate [setHours(1970-01-01 00:00:00, -5)]. Expecting hours in [0..23], instead got -5." }, "platforms": [ "android", "web", "ios" ] }, { "name": "setMinutes(parseUnixTime(0), 10) => 1970-01-01 00:10:00", "expression": "@{setMinutes(parseUnixTime(0), 10)}", "expected": { "type": "datetime", "value": "1970-01-01 00:10:00" }, "platforms": [ "android", "ios", "web" ] }, { "name": "setMinutes(parseUnixTime(0), 77) => error", "expression": "@{setMinutes(parseUnixTime(0), 77)}", "expected": { "type": "error", "value": "Failed to evaluate [setMinutes(1970-01-01 00:00:00, 77)]. Expecting minutes in [0..59], instead got 77." }, "platforms": [ "android", "web", "ios" ] }, { "name": "setMinutes(parseUnixTime(0), -5) => error", "expression": "@{setMinutes(parseUnixTime(0), -5)}", "expected": { "type": "error", "value": "Failed to evaluate [setMinutes(1970-01-01 00:00:00, -5)]. Expecting minutes in [0..59], instead got -5." }, "platforms": [ "android", "web", "ios" ] }, { "name": "setSeconds(parseUnixTime(0), 10) => 1970-01-01 00:00:10", "expression": "@{setSeconds(parseUnixTime(0), 10)}", "expected": { "type": "datetime", "value": "1970-01-01 00:00:10" }, "platforms": [ "android", "ios", "web" ] }, { "name": "setSeconds(parseUnixTime(0), 77) => error", "expression": "@{setSeconds(parseUnixTime(0), 77)}", "expected": { "type": "error", "value": "Failed to evaluate [setSeconds(1970-01-01 00:00:00, 77)]. Expecting seconds in [0..59], instead got 77." }, "platforms": [ "android", "web", "ios" ] }, { "name": "setSeconds(parseUnixTime(0), -10) => error", "expression": "@{setSeconds(parseUnixTime(0), -10)}", "expected": { "type": "error", "value": "Failed to evaluate [setSeconds(1970-01-01 00:00:00, -10)]. Expecting seconds in [0..59], instead got -10." }, "platforms": [ "android", "web", "ios" ] }, { "name": "setMillis(parseUnixTime(0), 2) > setMillis(parseUnixTime(0), 1) => true", "expression": "@{setMillis(parseUnixTime(0), 2) > setMillis(parseUnixTime(0), 1)}", "expected": { "type": "boolean", "value": true }, "platforms": [ "android", "ios", "web" ] }, { "name": "setMillis(parseUnixTime(0), 80988) => error", "expression": "@{setMillis(parseUnixTime(0), 80988)}", "expected": { "type": "error", "value": "Failed to evaluate [setMillis(1970-01-01 00:00:00, 80988)]. Expecting millis in [0..999], instead got 80988." }, "platforms": [ "android", "web", "ios" ] }, { "name": "setMillis(parseUnixTime(0), -5) => error", "expression": "@{setMillis(parseUnixTime(0), -5)}", "expected": { "type": "error", "value": "Failed to evaluate [setMillis(1970-01-01 00:00:00, -5)]. Expecting millis in [0..999], instead got -5." }, "platforms": [ "android", "web", "ios" ] }, { "name": "getYear(setYear(parseUnixTime(0), 2022)) => 2022", "expression": "@{getYear(setYear(parseUnixTime(0), 2022))}", "expected": { "type": "integer", "value": 2022 }, "platforms": [ "android", "ios", "web" ] }, { "name": "getMonth(setMonth(parseUnixTime(0), 11)) => 11", "expression": "@{getMonth(setMonth(parseUnixTime(0), 11))}", "expected": { "type": "integer", "value": 11 }, "platforms": [ "android", "ios", "web" ] }, { "name": "getDay(setDay(parseUnixTime(0), 13)) => 13", "expression": "@{getDay(setDay(parseUnixTime(0), 13))}", "expected": { "type": "integer", "value": 13 }, "platforms": [ "android", "ios", "web" ] }, { "name": "getDayOfWeek(parseUnixTime(0)) => 4", "expression": "@{getDayOfWeek(parseUnixTime(0))}", "expected": { "type": "integer", "value": 4 }, "platforms": [ "android", "ios", "web" ] }, { "name": "getDayOfWeek(parseUnixTime(259200)) => 7", "expression": "@{getDayOfWeek(parseUnixTime(259200))}", "expected": { "type": "integer", "value": 7 }, "platforms": [ "android", "ios", "web" ] }, { "name": "getHours(setHours(parseUnixTime(0), 17)) => 17", "expression": "@{getHours(setHours(parseUnixTime(0), 17))}", "expected": { "type": "integer", "value": 17 }, "platforms": [ "android", "ios", "web" ] }, { "name": "getMinutes(setMinutes(parseUnixTime(0), 23)) => 23", "expression": "@{getMinutes(setMinutes(parseUnixTime(0), 23))}", "expected": { "type": "integer", "value": 23 }, "platforms": [ "android", "ios", "web" ] }, { "name": "getSeconds(setSeconds(parseUnixTime(0), 27)) => 27", "expression": "@{getSeconds(setSeconds(parseUnixTime(0), 27))}", "expected": { "type": "integer", "value": 27 }, "platforms": [ "android", "ios", "web" ] }, { "name": "getMillis(setMillis(parseUnixTime(0), 31)) => 31", "expression": "@{getMillis(setMillis(parseUnixTime(0), 31))}", "expected": { "type": "integer", "value": 31 }, "platforms": [ "android", "ios", "web" ] }, { "name": "getMillis(setHours(setMillis(parseUnixTime(0), 31), 17)) => 31", "expression": "@{getMillis(setHours(setMillis(parseUnixTime(0), 31), 17))}", "expected": { "type": "integer", "value": 31 }, "platforms": [ "android", "ios", "web" ] }, { "name": "formatDateAsUTC(setDay(parseUnixTime(0), 13)) => 01/01/1970 00:00:000", "expression": "@{formatDateAsUTC(setDay(parseUnixTime(0), 13), 'dd/MM/yyyy HH:mm:SSS')}", "expected": { "type": "string", "value": "13/01/1970 00:00:000" }, "platforms": [ "android" ] }, { "name": "formatDateAsUTCWithLocale(parseUnixTime(0)) => Thu, Jan 1, 70", "expression": "@{formatDateAsUTCWithLocale(parseUnixTime(0), 'EEE, MMM d, yy', 'en-US')}", "expected": { "type": "string", "value": "Thu, Jan 1, 70" }, "platforms": [ "android" ] }, { "name": "formatDateAsUTCWithLocale(parseUnixTime(0), en-US) => 12 o'clock AM", "expression": "@{formatDateAsUTCWithLocale(parseUnixTime(0), 'hh \\'o\\'\\'clock\\' a', 'en-US')}", "expected": { "type": "string", "value": "12 o'clock AM" }, "platforms": [ "android" ] }, { "name": "formatDateAsUTCWithLocale(parseUnixTime(0), en-US) => 01970 January 01 AD 12:00 AM", "expression": "@{formatDateAsUTCWithLocale(parseUnixTime(0), 'yyyyy MMMM dd GGG hh:mm aaa', 'en-US')}", "expected": { "type": "string", "value": "01970 January 01 AD 12:00 AM" }, "platforms": [ "android" ] }, { "name": "formatDateAsUTCWithLocale(parseUnixTime(0), en-US) => 0:00 AM", "expression": "@{formatDateAsUTCWithLocale(parseUnixTime(0), 'K:mm a', 'en-US')}", "expected": { "type": "string", "value": "0:00 AM" }, "platforms": [ "android" ] }, { "name": "formatDateAsUTCWithLocale(setDay(parseUnixTime(0), 13), en-US) => 1970-01-01T00:00:00.000", "expression": "@{formatDateAsUTCWithLocale(setDay(parseUnixTime(0), 13), 'yyyy-MM-dd\\'T\\'HH:mm:ss.SSS', 'en-US')}", "expected": { "type": "string", "value": "1970-01-13T00:00:00.000" }, "platforms": [ "android" ] }, { "name": "formatDateAsUTCWithLocale(parseUnixTime(0), en-US) => 1970-W01-4", "expression": "@{formatDateAsUTCWithLocale(parseUnixTime(0), 'YYYY-\\'W\\'ww-u', 'en-US')}", "expected": { "type": "string", "value": "1970-W01-4" }, "platforms": [ "android" ] }, { "name": "formatDateAsUTCWithLocale(parseUnixTime(0), ru-RU) => 01970 января 01 н. э. чт", "expression": "@{formatDateAsUTCWithLocale(parseUnixTime(0), 'yyyyy MMMM dd GGG EEE', 'ru-RU')}", "expected": { "type": "string", "value": "01970 января 01 н. э. чт" }, "platforms": [ "android" ] }, { "name": "formatDateAsUTC(parseUnixTime(0), 'dd/MM/yyyy HH:mm Z') => error", "expression": "@{formatDateAsUTC(parseUnixTime(0), 'dd/MM/yyyy HH:mm Z')}", "expected": { "type": "error", "value": "z/Z not supported in [dd/MM/yyyy HH:mm Z]" }, "platforms": [ "android" ] } ] }