Beispiel #1
0
    def test_uuid_hex(self, db):
        n = NumberModel(external_id=self.uuid_hex)
        n.save()

        obj = NumberModel.objects.get(external_id=uuid.UUID(hex=self.uuid_hex))
        assert isinstance(obj.external_id, uuid.UUID)
        assert obj.external_id == uuid.UUID(hex=self.uuid_hex)
Beispiel #2
0
    def test_decimal(self, db):
        n = NumberModel(a_number=Decimal('100.00'))
        n.save()
        with connection.cursor() as c:
            c.execute("SELECT a_number__c FROM number_object__c;")
            assert c.fetchone()[0] == 100.0

        obj = NumberModel.objects.get()
        assert obj.a_number == Decimal('100.00')
        obj = NumberModel.objects.filter(a_number__gt=Decimal('99')).first()
        assert isinstance(obj.a_number, Decimal)
Beispiel #3
0
    def test_uuid(self, db):
        n = NumberModel()
        n.save()
        with connection.cursor() as c:
            c.execute("SELECT external_id FROM number_object__c;")
            assert c.fetchone()[0] == self.uuid_hex

        obj = NumberModel.objects.get(external_id=self.uuid_hex)
        assert isinstance(obj.external_id, uuid.UUID)
        assert obj.external_id == uuid.UUID(hex=self.uuid_hex)
        obj = NumberModel.objects.get(external_id=uuid.UUID(hex=self.uuid_hex))
        assert isinstance(obj.external_id, uuid.UUID)
        assert obj.external_id == uuid.UUID(hex=self.uuid_hex)
Beispiel #4
0
    def test_check_sf_object_name_concrete(self):
        # the check for concrete models breaks when we try to use a
        # temporary `MyClass`, because `model._meta.app_config` is
        # invalid when just definiting `Meta.app_label`.
        # So for this test we just use an existing model and break
        # it.
        setattr(NumberModel, "sf_object_name", None)

        errors = NumberModel.check()
        assert errors == [
            checks.Error(
                'testapp.NumberModel must define a "sf_object_name".',
                id="heroku_connect.E001",
            )
        ]
Beispiel #5
0
 def test_null(self, db):
     n = NumberModel()
     n.save()
     obj = NumberModel.objects.get()
     assert obj.a_number is None
Beispiel #6
0
 def test_null(self, db):
     n = NumberModel(external_id=None)
     n.save()
     obj = NumberModel.objects.get()
     assert obj.external_id is None