Пример #1
0
    def test_crud_ad(self):

        account = AccountFactory(remote_id=ACCOUNT_ID)
        client = ClientFactory(remote_id=CLIENT_ID, account=account)
        campaign = Campaign.remote.create(account=account, client=client, name='Test_campaign1', day_limit=1000, all_limit=2000)
        image = Image(**IMAGE_INITIAL_FIELDS)
        self.objects_to_delete += [campaign]

        self.assertTrue(campaign.remote_id > 0)

        # create
        ad = Ad(campaign=campaign, name='Test_ad1', status=False, cost_type=0, image=image, cpc=100,
            layout__title='111', layout__link_url='http://ya.ru', layout__description='q'*50)
        ad.save()
        self.objects_to_delete += [ad]

        # create another
        image.id = None
        ad = Ad.remote.create(campaign=campaign, name='Test_ad2', status=False, cost_type=0, image=image, cpc=100,
            layout__title='111', layout__link_url='http://ya.ru', layout__description='q'*50)
        self.objects_to_delete += [ad]

        self.assertTrue(ad.remote_id > 0)
        self.assertEqual(ad.name, 'Test_ad2')
        self.assertEqual(ad.status, False)
        self.assertEqual(ad.cost_type, 0)
        self.assertEqual(ad.cpc, 100)

        # update
        ad.name = 'Test_ad3'
        ad.save()
        campaign.fetch_ads(ids=[ad.remote_id])
        ad1 = Ad.objects.get(remote_id=ad.remote_id)

        self.assertTrue(ad1.name == ad.name == 'Test_ad3')
        self.assertEqual(ad1.cpc, 100)

        # delete
        ad1.delete()
        self.assertEqual(Ad.objects.filter(remote_id=ad.remote_id)[0].archived, True)
        campaign.fetch_ads(ids=[ad.remote_id])
        self.assertEqual(Ad.objects.filter(remote_id=ad.remote_id)[0].archived, True)

        campaign.delete()
        self.objects_to_delete = []