예제 #1
0
 def test_campaign_creation_with_invalid_smartlist_ids(self, token_first, campaign_data):
     """
     Create campaign with invalid smartlist ids, API should raise InvalidUsage 400
     :param string token_first: auth token
     :param dict campaign_data: data to create campaign
     """
     invalid_ids = CampaignsTestsHelpers.INVALID_IDS
     invalid_value_test(URL, campaign_data, 'smartlist_ids', invalid_ids, token_first)
예제 #2
0
 def test_campaign_creation_with_invalid_body_text(self, token_first, campaign_data, smartlist_first):
     """
     Create a campaign with invalid body text, it should raise InvalidUsage 400
     :param string token_first: auth token
     :param dict campaign_data: data to create campaign
     :param dict smartlist_first: Smartlist object
     """
     campaign_data['smartlist_ids'] = [smartlist_first['id']]
     invalid_values = CampaignsTestsHelpers.INVALID_TEXT_VALUES
     invalid_value_test(URL, campaign_data, 'body_text', invalid_values, token_first)
예제 #3
0
 def test_campaign_schedule_with_invalid_frequency_id(
         self, token_first, campaign_in_db):
     """
     Send a POST request to schedule a campaign with data where start datetime is in past. API
     will raise InvalidUsage 400
     :param string token_first: auth token
     :param dict campaign_in_db: campaign object
     """
     url = URL % campaign_in_db['id']
     data = generate_campaign_schedule_data()
     invalid_value_test(url, data, 'frequency_id',
                        CampaignsTestsHelpers.INVALID_FREQUENCY_IDS,
                        token_first)
예제 #4
0
 def test_campaign_update_with_invalid_smartlist_ids(
         self, token_first, campaign_data, campaign_in_db):
     """
     Update campaign with invalid smartlist ids, API should raise InvalidUsage 400
     :param token_first: auth token
     :param campaign_data: data to update push campaign
     :param campaign_in_db: already created push campaign data
     """
     invalid_ids = CampaignsTestsHelpers.INVALID_IDS
     url = URL % campaign_in_db['id']
     invalid_value_test(url,
                        campaign_data,
                        'smartlist_ids',
                        invalid_ids,
                        token_first,
                        method='put')
예제 #5
0
 def test_campaign_reschedule_with_invalid_frequency_ids(
         self, token_first, campaign_in_db, schedule_a_campaign):
     """
     Try to reschedule a campaign with invalid frequency id like -1, API will raise InvalidUsage 400
     :param string token_first: auth token
     :param dict campaign_in_db: campaign object
     :param dict schedule_a_campaign: a fixture to schedule a campaign
     """
     url = URL % campaign_in_db['id']
     data = generate_campaign_schedule_data()
     invalid_value_test(url,
                        data,
                        'frequency_id',
                        CampaignsTestsHelpers.INVALID_FREQUENCY_IDS,
                        token_first,
                        method='put')
예제 #6
0
 def test_campaign_update_with_invalid_url(self, token_first, campaign_data,
                                           smartlist_first, campaign_in_db):
     """
     Update a campaign with invalid uel field, API should raise InvalidUsage 400
     :param token_first: auth token
     :param campaign_data: data to update push campaign
     :param smartlist_first: smartlist objectd
     :param campaign_in_db: already created push campaign data
     """
     campaign_data['smartlist_ids'] = [smartlist_first['id']]
     invalid_names = ['localhost.com', 'abc', '', '  ', None, True]
     url = URL % campaign_in_db['id']
     invalid_value_test(url,
                        campaign_data,
                        'url',
                        invalid_names,
                        token_first,
                        method='put')
예제 #7
0
 def test_campaign_update_with_invalid_name(self, token_first,
                                            campaign_data, smartlist_first,
                                            campaign_in_db):
     """
     Create a campaign with invalid name field, API should raise InvalidUsage 400
     :param token_first: auth token
     :param campaign_data: data to update push campaign
     :param smartlist_first: smartlist objectd
     :param campaign_in_db: already created push campaign data
     """
     campaign_data['smartlist_ids'] = [smartlist_first['id']]
     invalid_names = CampaignsTestsHelpers.INVALID_TEXT_VALUES
     url = URL % campaign_in_db['id']
     invalid_value_test(url,
                        campaign_data,
                        'name',
                        invalid_names,
                        token_first,
                        method='put')