diff --git a/tienda_ilusion/don_confiao/templates/don_confiao/purchase.html b/tienda_ilusion/don_confiao/templates/don_confiao/purchase.html
index 4386551..0a23b0e 100644
--- a/tienda_ilusion/don_confiao/templates/don_confiao/purchase.html
+++ b/tienda_ilusion/don_confiao/templates/don_confiao/purchase.html
@@ -1,6 +1,9 @@
{% extends 'don_confiao/base.html' %}
{% block content %}
{% load static %}
+
-
@@ -26,6 +28,7 @@
{{ summary_form }}
+
diff --git a/tienda_ilusion/don_confiao/tests/test_buy_form.py b/tienda_ilusion/don_confiao/tests/test_buy_form.py
new file mode 100644
index 0000000..5a61817
--- /dev/null
+++ b/tienda_ilusion/don_confiao/tests/test_buy_form.py
@@ -0,0 +1,22 @@
+from django.test import Client, TestCase
+from ..models import Product
+
+
+class TestBuyForm(TestCase):
+ def setUp(self):
+ self.client = Client()
+ self.product = Product()
+ self.product.name = "Arroz"
+ self.product.price = 5000
+ self.product.save()
+
+ def test_buy_contains_products_list(self):
+ response = self.client.get('/don_confiao/comprar')
+ self.assertIn(
+ self.product.name,
+ response.context['list_products']
+ )
+ content = response.content.decode('utf-8')
+ self.assertIn('5000', content)
+ self.assertIn('Arroz', content)
+ self.assertIn(str(self.product.id), content)
diff --git a/tienda_ilusion/don_confiao/views.py b/tienda_ilusion/don_confiao/views.py
index 962c605..35b0e0d 100644
--- a/tienda_ilusion/don_confiao/views.py
+++ b/tienda_ilusion/don_confiao/views.py
@@ -8,8 +8,16 @@ from .forms import ImportProductsForm, PurchaseForm, SaleLineFormSet, Reconcilia
import csv
import io
+import json
+from decimal import Decimal
+class DecimalEncoder(json.JSONEncoder):
+ def default(self, obj):
+ if isinstance(obj, Decimal):
+ return float(obj)
+ return json.JSONEncoder.default(self, obj)
+
def index(request):
return render(request, 'don_confiao/index.html')
@@ -47,6 +55,7 @@ def buy(request):
'sale_form': sale_form,
'linea_formset': line_formset,
'summary_form': sale_summary_form,
+ 'list_products': json.dumps(Product.to_list(), cls=DecimalEncoder),
}
)