'test queries like username=user1,user2,...'

@ddt.data(({'username': [ALICE_USERNAME, STAFF_USERNAME]}, 200, get_mapping_data_by_usernames([ALICE_USERNAME, STAFF_USERNAME])), ({'remote_id': [('remote_' + ALICE_USERNAME), ('remote_' + STAFF_USERNAME), ('remote_' + CARL_USERNAME)]}, 200, get_mapping_data_by_usernames([ALICE_USERNAME, STAFF_USERNAME])), ({'username': [ALICE_USERNAME, CARL_USERNAME, STAFF_USERNAME]}, 200, get_mapping_data_by_usernames([ALICE_USERNAME, STAFF_USERNAME])), ({'username': [ALICE_USERNAME], 'remote_id': [('remote_' + STAFF_USERNAME)]}, 200, get_mapping_data_by_usernames([ALICE_USERNAME, STAFF_USERNAME])))
@ddt.unpack
def test_user_mappings_with_query_params_comma_separated(self, query_params, expect_code, expect_data):

    base_url = reverse('third_party_auth_user_mapping_api', kwargs={'provider_id': PROVIDER_ID_TESTSHIB})
    params = []
    for attr in ['username', 'remote_id']:
        if (attr in query_params):
            params.append('{}={}'.format(attr, ','.join(query_params[attr])))
    url = '{}?{}'.format(base_url, '&'.join(params))
    response = self.client.get(url, HTTP_X_EDX_API_KEY=VALID_API_KEY)
    self._verify_response(response, expect_code, expect_data)
