Exemplo n.º 1
0
def get_products_data_with_mock(fake_data_path: str,
                                file_name: str,
                                nb_files=1,
                                nb_pages=None):
    """
    Get products data with mock.
    :param fake_data_path:
    :param file_name:
    :param nb_files:
    :param nb_pages:
    :return:
    """
    file_name_list = [
        "%s%s.json" % (file_name, file_num)
        for file_num in range(1, nb_files + 1)
    ]
    fake_data_products = []
    for filename in file_name_list:
        with open(os.path.join(fake_data_path, filename), 'r') as file:
            fake_data_products.append(file.read())

    with requests_mock.Mocker() as mock:
        for index, fake_data in enumerate(fake_data_products):
            mock.get(Product.get_list_api_url(index + 1), text=fake_data)
        if not nb_pages:
            data = Product.get_api_data_list()
        else:
            data = Product.get_api_data_list(nb_pages=nb_pages)

    return data
Exemplo n.º 2
0
 def test_get_url_for_product_list(self):
     """
     Test url getters for product list.
     :return:
     """
     url = Product.get_list_api_url(9)
     self.assertIsNotNone(url)
     self.assertIn('9', url)