|
| 1 | +FEELOperatorsTest |
| 2 | + |
| 3 | +Negative date time |
| 4 | +# self.assertEqual(-124649967477, self.getLib().dateTimeValue(self.makeDateAndTime("-1980-01-01T01:02:03.0004"))) |
| 5 | +# self.assertEqual(-124649971137, self.getLib().dateTimeValue(self.makeDateAndTime("-1980-01-01T01:02:03+01:01"))) |
| 6 | +# self.assertEqual(-124649967477, self.getLib().dateTimeValue(self.makeDateAndTime("-1980-01-01T01:02:03@Etc/UTC"))) |
| 7 | + |
| 8 | +Both are timedelta |
| 9 | +# self.assertFalse(self.getLib().durationIs(self.makeDuration("P0Y"), self.makeDuration("P0D"))) |
| 10 | + |
| 11 | +BaseFEELLibTest |
| 12 | + |
| 13 | +Negative dates |
| 14 | + # year must be in the range [-999,999,999..999,999,999]. |
| 15 | +# self.assertEqualsDateTime("999999999-10-11", self.getLib().date(self.getLib().date("999999999-10-11"))) |
| 16 | +# self.assertEqualsDateTime("-999999999-10-11", self.getLib().date(self.getLib().date("-999999999-10-11"))) |
| 17 | +# self.assertIsNone(self.getLib().date(self.getLib().date("9999999991-10-11"))) |
| 18 | +# self.assertIsNone(self.getLib().date(self.getLib().date("-9999999991-10-11"))) |
| 19 | + |
| 20 | + |
| 21 | +BaseStandardFEELLibTest |
| 22 | + |
| 23 | +Overflow in duration |
| 24 | +# self.assertEqualsDateTime("P2129706043D", self.getLib().duration("P2129706043D")) |
| 25 | + |
| 26 | +Missing fraction |
| 27 | +# self.assertEqualsDateTime("PT0S", self.getLib().duration("PT0.S")) |
| 28 | + |
| 29 | +# self.assertEqualsNumber(self.makeNumber("-10"), self.getLib().decimal(self.makeNumber("-10"), self.makeNumber(Long.MAX_VALUE))) |
| 30 | + |
| 31 | +DefaultStandardFEELLibTest |
| 32 | + |
| 33 | +Rounding to 60 secs, failing validation |
| 34 | +# self.assertEqualsDateTime("P2Y9M", self.getLib().yearsAndMonthsDuration( |
| 35 | +# self.makeDateAndTime("2015-12-31T23:59:59.9999999"), self.makeDateAndTime("2018-10-01T12:32:59.111111"))) |
| 36 | + |
| 37 | +Z in time -> UTC |
| 38 | +# self.assertEqual("11:00:01Z", self.getLib().string(self.makeTime("11:00:01Z"))) |
| 39 | + |
| 40 | +Offset in mili seconds |
| 41 | +# self.assertEqual("11:59:45+02:45:55", |
| 42 | +# self.getLib().string(self.getLib().time(self.makeNumber(11), self.makeNumber(59), self.makeNumber(45), self.getLib().duration("PT2H45M55S")))) |
| 43 | +# self.assertEqual("11:59:45-02:45:55", |
| 44 | +# self.getLib().string(self.getLib().time(self.makeNumber(11), self.makeNumber(59), self.makeNumber(45), self.getLib().duration("-PT2H45M55S")))) |
| 45 | + |
| 46 | +Z is not +00:00 |
| 47 | +# self.assertEqual("00:00:00Z", self.getLib().string(self.getLib().time(self.makeDate("2017-08-10")))) |
| 48 | + |
| 49 | +Precision is micro (6 digits) and padding |
| 50 | +# self.assertEqual("2011-12-31T10:15:30.987@Europe/Paris", self.getLib().string(self.makeDateAndTime("2011-12-31T10:15:30.987@Europe/Paris"))) |
| 51 | +# self.assertEqual("2011-12-31T10:15:30.123456789@Europe/Paris", self.getLib().string(self.makeDateAndTime("2011-12-31T10:15:30.123456789@Europe/Paris"))) |
| 52 | +# self.assertEqual("999999999-12-31T23:59:59.999999999@Europe/Paris", self.getLib().string(self.makeDateAndTime("999999999-12-31T23:59:59.999999999@Europe/Paris"))) |
| 53 | +# self.assertEqual("-999999999-12-31T23:59:59.999999999+02:00", self.getLib().string(self.makeDateAndTime("-999999999-12-31T23:59:59.999999999+02:00"))) |
| 54 | +# self.assertEqual("2017-01-01T23:59:01.123456789@Europe/Paris", |
| 55 | +# self.getLib().string(self.getLib().dateAndTime(self.makeDate("2017-01-01"), self.makeTime("23:59:01.123456789@Europe/Paris")))) |
| 56 | +# self.assertEqual("2017-09-05T09:15:30.987654321@Europe/Paris", |
| 57 | +# self.getLib().string(self.getLib().dateAndTime(self.makeDateAndTime("2017-09-05T10:20:00"), self.makeTime("09:15:30.987654321@Europe/Paris")))) |
| 58 | +# self.assertEqual("2017-09-05T09:15:30.987654321@Europe/Paris", self.getLib().string( |
| 59 | +# self.getLib().dateAndTime(self.makeDateAndTime("2017-09-05T10:20:00-01:00"), self.makeTime("09:15:30.987654321@Europe/Paris")))) |
| 60 | +# self.assertEqual("2017-09-05T09:15:30.987654321@Europe/Paris", self.getLib().string( |
| 61 | +# self.getLib().dateAndTime(self.makeDateAndTime("2017-09-05T10:20:00@Europe/Paris"), self.makeTime("09:15:30.987654321@Europe/Paris")))) |
| 62 | + |
| 63 | +Both are UTC |
| 64 | +# self.assertEqual("Z", self.getLib().timezone(self.makeDateAndTime("2018-12-10T12:01:02Z"))) |
| 65 | +# self.assertEqual("Etc/UTC", self.getLib().timezone(self.makeDateAndTime("2018-12-10T12:01:02@Etc/UTC"))) |
| 66 | + |
| 67 | +# Deviations from ISO |
| 68 | +https://www.w3.org/TR/xmlschema-2/#deviantformats |
0 commit comments