def test_mat_view_date_rounding(self): tableCursor = table3Cursor(self.context) mViewCursor = mView4Cursor(self.context) tableCursor.deleteAll() self.assertEquals(0, mViewCursor.count()) datetime1 = LocalDateTime.of(2000, Month.AUGUST, 5, 10, 5, 32) date1 = datetime1.truncatedTo(ChronoUnit.DAYS) tableCursor.numb = 5 tableCursor.date = Timestamp.valueOf(datetime1) tableCursor.insert() tableCursor.clear() datetime2 = LocalDateTime.of(2000, Month.AUGUST, 5, 22, 5, 32) tableCursor.numb = 2 tableCursor.date = Timestamp.valueOf(datetime2) tableCursor.insert() tableCursor.clear() datetime3 = LocalDateTime.of(2000, Month.AUGUST, 6, 10, 5, 32) date2 = datetime3.truncatedTo(ChronoUnit.DAYS) tableCursor.numb = 5 tableCursor.date = Timestamp.valueOf(datetime3) tableCursor.insert() tableCursor.clear() self.assertEquals(2, mViewCursor.count()) mViewCursor.get(Timestamp.valueOf(date1)) self.assertEquals(7, mViewCursor.s) mViewCursor.get(Timestamp.valueOf(date2)) self.assertEquals(5, mViewCursor.s)
def test_getdate_in_view(self): tableCursor = getDateForViewCursor(self.context) tableCursor.deleteAll() viewCursor = viewWithGetDateCursor(self.context) self.assertEquals(0, viewCursor.count()) tableCursor.date = Timestamp.valueOf(LocalDateTime.now().minusDays(1)) tableCursor.insert() self.assertEquals(0, viewCursor.count()) tableCursor.clear() tableCursor.date = Timestamp.valueOf(LocalDateTime.now().plusDays(1)) tableCursor.insert() self.assertEquals(1, viewCursor.count())
def _testInFilterWithAdditionalLookup(self, a, b, g): aTableCursor = aFilterCursor(self.context) bTableCursor = bFilterCursor(self.context) gTableCursor = gFilterCursor(self.context) aTableCursor.deleteAll() bTableCursor.deleteAll() gTableCursor.deleteAll() timestamp = Timestamp.valueOf(LocalDateTime.now()) self._fillTablesForTestInFilterWithRangeOnOtherCursor(aTableCursor, bTableCursor, timestamp) gTableCursor.createDate = timestamp gTableCursor.num1 = 5 gTableCursor.num2 = -30 gTableCursor.insert() gTableCursor.clear() gTableCursor.createDate = timestamp gTableCursor.num1 = 6 gTableCursor.num2 = -40 gTableCursor.insert() gTableCursor.clear() gTableCursor.createDate = timestamp gTableCursor.num1 = 1 gTableCursor.num2 = -41 gTableCursor.insert() gTableCursor.clear() gTableCursor.createDate = timestamp gTableCursor.num1 = 1 gTableCursor.num2 = -42 gTableCursor.insert() gTableCursor.clear() lookup = a.setIn(b).add("date", "created").add("number1", "numb1") additionalLookup = lookup.and(g).add("date", "createDate").add("number1", "num1") self.assertEquals(3, a.count()) b.setRange('numb2', -40) self.assertEquals(2, a.count()) a.first() self.assertEquals(5, a.number1) self.assertEquals(-10, a.number2) a.navigate('>') self.assertEquals(6, a.number1) self.assertEquals(-20, a.number2) g.setRange('num2', -30) self.assertEquals(1, a.count()) a.first() self.assertEquals(5, a.number1) self.assertEquals(-10, a.number2)
def _testInFilterWithRangeInOtherCursorAfterSetIn(self, a, b): aTableCursor = aFilterCursor(self.context) bTableCursor = bFilterCursor(self.context) aTableCursor.deleteAll() bTableCursor.deleteAll() timestamp = Timestamp.valueOf(LocalDateTime.now()) self._fillTablesForTestInFilterWithRangeOnOtherCursor(aTableCursor, bTableCursor, timestamp) lookup = a.setIn(b).add("date", "created").add("number1", "numb1") self.assertEquals(3, a.count()) b.setRange('numb2', -40) self.assertEquals(2, a.count()) a.first() self.assertEquals(5, a.number1) self.assertEquals(-10, a.number2) a.navigate('>') self.assertEquals(6, a.number1) self.assertEquals(-20, a.number2)
def _testInFilterForIndices(self, a, b): aTableCursor = aFilterCursor(self.context) bTableCursor = bFilterCursor(self.context) aTableCursor.deleteAll() bTableCursor.deleteAll() timestamp = Timestamp.valueOf(LocalDateTime.now()) aTableCursor.date = timestamp aTableCursor.number1 = 5 aTableCursor.number2 = -10 aTableCursor.insert() aTableCursor.clear() aTableCursor.date = timestamp aTableCursor.number1 = 1 aTableCursor.number2 = -20 aTableCursor.insert() aTableCursor.clear() aTableCursor.date = Timestamp.valueOf(LocalDateTime.now().plusDays(1)) aTableCursor.number2 = -30 aTableCursor.insert() aTableCursor.clear() bTableCursor.created = timestamp bTableCursor.numb1 = 2 bTableCursor.numb2 = -40 bTableCursor.insert() bTableCursor.clear() bTableCursor.created = timestamp bTableCursor.numb1 = 5 bTableCursor.numb2 = -50 bTableCursor.insert() bTableCursor.clear() lookup = a.setIn(b).add("date", "created") self.assertEquals(2, a.count()) lookup = a.setIn(b).add("date", "created").add("number1", "numb1") self.assertEquals(1, a.count()) a.setIn(b).add("date", "created").add("number1", "numb1").add("number2", "numb2") self.assertEquals(0, a.count())
def _testInFilterWithRangeInMainCursor(self, a, b): aTableCursor = aFilterCursor(self.context) bTableCursor = bFilterCursor(self.context) aTableCursor.deleteAll() bTableCursor.deleteAll() timestamp = Timestamp.valueOf(LocalDateTime.now()) aTableCursor.date = timestamp aTableCursor.number1 = 5 aTableCursor.number2 = -10 aTableCursor.insert() aTableCursor.clear() aTableCursor.date = timestamp aTableCursor.number1 = 1 aTableCursor.number2 = -20 aTableCursor.insert() aTableCursor.clear() aTableCursor.date = Timestamp.valueOf(LocalDateTime.now().plusDays(1)) aTableCursor.number2 = -30 aTableCursor.insert() aTableCursor.clear() bTableCursor.created = timestamp bTableCursor.numb1 = 2 bTableCursor.numb2 = -40 bTableCursor.insert() bTableCursor.clear() bTableCursor.created = timestamp bTableCursor.numb1 = 5 bTableCursor.numb2 = -50 bTableCursor.insert() bTableCursor.clear() a.setRange('number1', 5) lookup = a.setIn(b).add("date", "created") self.assertEquals(1, a.count()) a.first()
def test_getXRec(self): cursor = tXRecCursor(self.context) cursor.deleteAll() id = 1 num = 10 cost = 10.2 title = 'product' isActive = True created = Timestamp.valueOf( LocalDateTime.of(2018, Month.of(1), 11, 19, 15)) cursor.num = num cursor.cost = cost cursor.title = title cursor.isActive = isActive cursor.created = created xRec = cursor.getXRec() self._assertXRecCursorFields(xRec, None, None, None, None, None, None) cursor.insert() self._assertXRecCursorFields(xRec, None, None, None, None, None, None) cursor.clear() xRec = cursor.getXRec() self._assertXRecCursorFields(xRec, None, None, None, None, None, None) cursor.get(1) self._assertXRecCursorFields(xRec, id, num, cost, title, isActive, created) cursor.num = num + 1 cursor.cost = cost + 1 cursor.title = title + 'asd' cursor.isActive = False cursor.created = Timestamp.valueOf( LocalDateTime.of(2017, Month.of(1), 11, 19, 15)) self._assertXRecCursorFields(xRec, id, num, cost, title, isActive, created)
def test_count_with_getdate_condition(self): tableCursor = countGetDateCondCursor(self.context) tableCursor.deleteAll() viewCursor = viewCountGetDateCondCursor(self.context) viewCursor.first() self.assertEquals(0, viewCursor.c) tableCursor.insert() tableCursor.clear() tableCursor.date = Timestamp.valueOf( LocalDateTime.now().minusSeconds(2)) tableCursor.insert() viewCursor.first() self.assertEquals(0, viewCursor.c) tableCursor.clear() tableCursor.date = Timestamp.valueOf(LocalDateTime.now().plusDays(1)) tableCursor.insert() viewCursor.first() self.assertEquals(1, viewCursor.c)
def _fillTablesForTestInFilterWithRangeOnOtherCursor(self, a, b, timestamp): a.date = timestamp a.number1 = 5 a.number2 = -10 a.insert() a.clear() a.date = timestamp a.number1 = 6 a.number2 = -20 a.insert() a.clear() a.date = timestamp a.number1 = 1 a.number2 = -20 a.insert() a.clear() a.date = Timestamp.valueOf(LocalDateTime.now().plusDays(1)) a.number2 = -30 a.insert() a.clear() b.created = timestamp b.numb1 = 6 b.numb2 = -40 b.insert() b.clear() b.created = timestamp b.numb1 = 5 b.numb2 = -40 b.insert() b.clear() b.created = timestamp b.numb1 = 1 b.numb2 = -41 b.insert() b.clear()