Beispiel #1
0
    def test_select(self):
        objs = TestSubscriber.db.select(Subscriber())
        self.assertEqual(len(objs), 2)
        self.assertEqual(objs[0].getEmail(), 'subscriber email TD')
        
        self.assertEqual(objs[0].getInclude(), 98)
        self.assertEqual(objs[0].getFirst_Name(), 'subscriber first_name TD')
        self.assertEqual(objs[0].getSecond_Name(), 'subscriber second_name TD')
        
        self.assertEqual(objs[1].getEmail(), 'subscriber email TD2')
        
        self.assertEqual(objs[1].getInclude(), 99)
        self.assertEqual(objs[1].getFirst_Name(), 'subscriber first_name TD2')
        self.assertEqual(objs[1].getSecond_Name(), 'subscriber second_name TD2')
        
        
        objs = TestSubscriber.db.select(Subscriber('subscriber email TD'))
        self.assertEqual(len(objs), 1)
        self.assertEqual(objs[0].getEmail(), 'subscriber email TD')
        
        self.assertEqual(objs[0].getInclude(), 98)
        self.assertEqual(objs[0].getFirst_Name(), 'subscriber first_name TD')
        self.assertEqual(objs[0].getSecond_Name(), 'subscriber second_name TD')
        

        objs = TestSubscriber.db.select(Subscriber.createAdhoc({'include': 98, 'first_name': 'subscriber first_name TD', 'second_name': 'subscriber second_name TD'}))
        self.assertEqual(len(objs), 1)
        self.assertEqual(objs[0].getEmail(), 'subscriber email TD')
        
        self.assertEqual(objs[0].getInclude(), 98)
        self.assertEqual(objs[0].getFirst_Name(), 'subscriber first_name TD')
        self.assertEqual(objs[0].getSecond_Name(), 'subscriber second_name TD')
Beispiel #2
0
    def test_delete(self):
        # Disable Foreign Keys checks for this test
        TestSubscriber.db.disableForeignKeys()

        with TestSubscriber.db.transaction() as t:
            TestSubscriber.db.delete(Subscriber('subscriber email TD'))

            objs = TestSubscriber.db.select(Subscriber())
            self.assertEqual(len(objs), 1)

            # force a rollback
            t.fail()
Beispiel #3
0
    def test_update(self):
        # Disable Foreign Keys checks for this test
        TestSubscriber.db.disableForeignKeys()

        with TestSubscriber.db.transaction() as t:
            TestSubscriber.db.upsert(
                    Subscriber('subscriber email TD', 100, 'subscriber first_name TD UPD', 'subscriber second_name TD UPD'))
            objs = TestSubscriber.db.select(Subscriber('subscriber email TD'))

            self.assertEqual(len(objs), 1)
            self.assertEqual(objs[0].getEmail(), 'subscriber email TD')
            

            d = eval("{'include': 100, 'first_name': 'subscriber first_name TD UPD', 'second_name': 'subscriber second_name TD UPD'}")
            for k, v in d.items():
                self.assertEqual(
                        objs[0].__getattribute__('get' + k.title())(), v)

            # force a rollback
            t.fail()

        with TestSubscriber.db.transaction() as t:
            subscriber = TestSubscriber.db.select(Subscriber('subscriber email TD'))[0]
            for k, v in d.items():
                subscriber.__getattribute__('set' + k.title())(v)

            TestSubscriber.db.upsert(subscriber)

            objs = TestSubscriber.db.select(Subscriber('subscriber email TD'))
            self.assertEqual(len(objs), 1)
            self.assertEqual(objs[0].getEmail(), 'subscriber email TD')
            

            for k, v in d.items():
                self.assertEqual(
                        objs[0].__getattribute__('get' + k.title())(), v)

            # force a rollback
            t.fail()
Beispiel #4
0
 def test_repr(self):
     obj = Subscriber('subscriber email TD', 98, 'subscriber first_name TD', 'subscriber second_name TD')
     self.assertEqual(str(obj), "subscriber : Keys {'email': 'subscriber email TD'} : Values {'include': 98, 'first_name': 'subscriber first_name TD', 'second_name': 'subscriber second_name TD'}")
Beispiel #5
0
 def test_isNullable(self):
     obj = Subscriber()
     self.assertTrue(True and obj.isNullable('first_name') and obj.isNullable('second_name'))