def test_mesmo_produto_em_2supermercados(self):
     supermercado1 = gerar_supermercado("Super1")
     supermercado2 = gerar_supermercado("Super2")
     produto_aleatorio1 = gerar_produto_randomico(categoria=self.categoria)
     ps1 = gerar_produto_supermercado(produto_aleatorio1, supermercado=supermercado1)
     ps2 = gerar_produto_supermercado(produto_aleatorio1, supermercado=supermercado2)
     self.assertTrue(ps1 in get_supermercados_produto(produto_aleatorio1))
     self.assertTrue(ps2 in get_supermercados_produto(produto_aleatorio1))
 def test_mesmo_produto_em_apenas_2supermercados(self):
     supermercado1 = gerar_supermercado("Super1")
     supermercado2 = gerar_supermercado("Super2")
     supermercado3 = gerar_supermercado("Super3")
     produto_aleatorio1 = gerar_produto_randomico(categoria=self.categoria)
     produto_aleatorio2 = gerar_produto_randomico(categoria=self.categoria)
     ps1 = gerar_produto_supermercado(produto_aleatorio1, supermercado=supermercado1)
     ps2 = gerar_produto_supermercado(produto_aleatorio1, supermercado=supermercado2)
     ps3 = gerar_produto_supermercado(produto_aleatorio2, supermercado=supermercado3)
     dados = list(get_supermercados_produto(produto_aleatorio1))
     self.assertTrue(ps1 in dados)
     self.assertTrue(ps2 in dados)
     self.assertFalse(ps3 in dados)
def comparar_produto_preco(request):
    produtos = ProdutoSupermercado.objects.filter(supermercado=request.user.supermercado)
    if 'codigo' in request.GET:
        codigo = request.GET['codigo']
        try:
            produto = Produto.objects.get(codigo_de_barras=codigo)
            supermercados = produto_repository.get_supermercados_produto(produto)
            return render(request,
                          'cliente/comparar_precos.html',
                          {'sp': supermercados,
                           'produto': produto})
        except Produto.DoesNotExist:
            return redirect('/criar_produto')
    return render(request,
                  'supermercado/inicio_comparacao.html',
                  {'produtos': produtos})