Решение на Трета задача от Мария Гроздева
Обратно към всички решения
Към профила на Мария Гроздева
Резултати
- 3 точки от тестове
- 0 бонус точки
- 3 точки общо
- 11 успешни тест(а)
- 8 неуспешни тест(а)
Код
Лог от изпълнението
.FF..F..F..F..F..FF
Failures:
1) Inventory with no discounts has some constraints on prices and counts
Failure/Error: expect { cart.add 'Existing', -1 }.to raise_error
expected Exception but nothing was raised
# /tmp/d20111115-5847-1s7ejjh/spec.rb:61:in `block (3 levels) in <top (required)>'
# ./lib/homework/run_with_timeout.rb:5:in `block (3 levels) in <top (required)>'
# ./lib/homework/run_with_timeout.rb:5:in `block (2 levels) in <top (required)>'
2) Inventory with no discounts can print an invoice
Failure/Error: cart.invoice.should eq <<INVOICE
expected: "+------------------------------------------------+----------+\n| Name qty | price |\n+------------------------------------------------+----------+\n| Green Tea 1 | 0.79 |\n| Earl Grey 3 | 2.97 |\n| Black Coffee 2 | 3.98 |\n+------------------------------------------------+----------+\n| TOTAL | 7.74 |\n+------------------------------------------------+----------+\n"
got: "---------------------------------------------------------------\n| Name qty | price|\n---------------------------------------------------------------\n| Green Tea | 1.00 | \n| Earl Grey | 3.00 | \n| Black Coffee | 2.00 | \n---------------------------------------------------------------\n\n| TOTAL | 7.74 |\n---------------------------------------------------------------\n"
(compared using ==)
Diff:
@@ -1,10 +1,11 @@
-+------------------------------------------------+----------+
-| Name qty | price |
-+------------------------------------------------+----------+
-| Green Tea 1 | 0.79 |
-| Earl Grey 3 | 2.97 |
-| Black Coffee 2 | 3.98 |
-+------------------------------------------------+----------+
-| TOTAL | 7.74 |
-+------------------------------------------------+----------+
+---------------------------------------------------------------
+| Name qty | price|
+---------------------------------------------------------------
+| Green Tea | 1.00 |
+| Earl Grey | 3.00 |
+| Black Coffee | 2.00 |
+---------------------------------------------------------------
+
+| TOTAL | 7.74 |
+---------------------------------------------------------------
# /tmp/d20111115-5847-1s7ejjh/spec.rb:73:in `block (3 levels) in <top (required)>'
# ./lib/homework/run_with_timeout.rb:5:in `block (3 levels) in <top (required)>'
# ./lib/homework/run_with_timeout.rb:5:in `block (2 levels) in <top (required)>'
3) Inventory with a 'buy X, get one free' promotion shows the discount in the invoice
Failure/Error: cart.invoice.should eq <<INVOICE
expected: "+------------------------------------------------+----------+\n| Name qty | price |\n+------------------------------------------------+----------+\n| Green Tea 3 | 3.00 |\n| (buy 2, get 1 free) | -1.00 |\n| Red Tea 8 | 16.00 |\n| (buy 4, get 1 free) | -2.00 |\n+------------------------------------------------+----------+\n| TOTAL | 16.00 |\n+------------------------------------------------+----------+\n"
got: "---------------------------------------------------------------\n| Name qty | price|\n---------------------------------------------------------------\n|Green Tea 3| 3.00 |\n|(by 2, get 1 free) | -1.00 |\n|Red Tea 8| 16.00 |\n|(by 4, get 1 free) | -2.00 |\n---------------------------------------------------------------\n\n| TOTAL | 16.00 |\n---------------------------------------------------------------\n"
(compared using ==)
Diff:
@@ -1,11 +1,12 @@
-+------------------------------------------------+----------+
-| Name qty | price |
-+------------------------------------------------+----------+
-| Green Tea 3 | 3.00 |
-| (buy 2, get 1 free) | -1.00 |
-| Red Tea 8 | 16.00 |
-| (buy 4, get 1 free) | -2.00 |
-+------------------------------------------------+----------+
-| TOTAL | 16.00 |
-+------------------------------------------------+----------+
+---------------------------------------------------------------
+| Name qty | price|
+---------------------------------------------------------------
+|Green Tea 3| 3.00 |
+|(by 2, get 1 free) | -1.00 |
+|Red Tea 8| 16.00 |
+|(by 4, get 1 free) | -2.00 |
+---------------------------------------------------------------
+
+| TOTAL | 16.00 |
+---------------------------------------------------------------
# /tmp/d20111115-5847-1s7ejjh/spec.rb:111:in `block (3 levels) in <top (required)>'
# ./lib/homework/run_with_timeout.rb:5:in `block (3 levels) in <top (required)>'
# ./lib/homework/run_with_timeout.rb:5:in `block (2 levels) in <top (required)>'
4) Inventory with a '% off for every n' promotion shows the discount in the invoice
Failure/Error: cart.invoice.should eq <<INVOICE
expected: "+------------------------------------------------+----------+\n| Name qty | price |\n+------------------------------------------------+----------+\n| Green Tea 4 | 4.00 |\n| (get 10% off for every 4) | -0.40 |\n| Red Tea 8 | 16.00 |\n| (get 20% off for every 5) | -2.00 |\n+------------------------------------------------+----------+\n| TOTAL | 17.60 |\n+------------------------------------------------+----------+\n"
got: "---------------------------------------------------------------\n| Name qty | price|\n---------------------------------------------------------------\n|Green Tea 4| 4.00 |\n|(get 10% off for every 4) | -0.40 |\n|Red Tea 8| 16.00 |\n|(get 20% off for every 5) | -2.00 |\n---------------------------------------------------------------\n\n| TOTAL | 17.60 |\n---------------------------------------------------------------\n"
(compared using ==)
Diff:
@@ -1,11 +1,12 @@
-+------------------------------------------------+----------+
-| Name qty | price |
-+------------------------------------------------+----------+
-| Green Tea 4 | 4.00 |
-| (get 10% off for every 4) | -0.40 |
-| Red Tea 8 | 16.00 |
-| (get 20% off for every 5) | -2.00 |
-+------------------------------------------------+----------+
-| TOTAL | 17.60 |
-+------------------------------------------------+----------+
+---------------------------------------------------------------
+| Name qty | price|
+---------------------------------------------------------------
+|Green Tea 4| 4.00 |
+|(get 10% off for every 4) | -0.40 |
+|Red Tea 8| 16.00 |
+|(get 20% off for every 5) | -2.00 |
+---------------------------------------------------------------
+
+| TOTAL | 17.60 |
+---------------------------------------------------------------
# /tmp/d20111115-5847-1s7ejjh/spec.rb:154:in `block (3 levels) in <top (required)>'
# ./lib/homework/run_with_timeout.rb:5:in `block (3 levels) in <top (required)>'
# ./lib/homework/run_with_timeout.rb:5:in `block (2 levels) in <top (required)>'
5) Inventory with a '% off of every item after the nth' promotion shows the discount in the ivnoice
Failure/Error: cart.invoice.should eq <<INVOICE
expected: "+------------------------------------------------+----------+\n| Name qty | price |\n+------------------------------------------------+----------+\n| Green Tea 12 | 12.00 |\n| (10% off of every after the 10th) | -0.20 |\n| Red Tea 20 | 40.00 |\n| (20% off of every after the 15th) | -2.00 |\n+------------------------------------------------+----------+\n| TOTAL | 49.80 |\n+------------------------------------------------+----------+\n"
got: "---------------------------------------------------------------\n| Name qty | price|\n---------------------------------------------------------------\n|Green Tea 12| 12.00 |\n|(10 off of every after the 10th) | -0.20 |\n|Red Tea 20| 40.00 |\n|(20 off of every after the 15th) | -2.00 |\n---------------------------------------------------------------\n\n| TOTAL | 49.80 |\n---------------------------------------------------------------\n"
(compared using ==)
Diff:
@@ -1,11 +1,12 @@
-+------------------------------------------------+----------+
-| Name qty | price |
-+------------------------------------------------+----------+
-| Green Tea 12 | 12.00 |
-| (10% off of every after the 10th) | -0.20 |
-| Red Tea 20 | 40.00 |
-| (20% off of every after the 15th) | -2.00 |
-+------------------------------------------------+----------+
-| TOTAL | 49.80 |
-+------------------------------------------------+----------+
+---------------------------------------------------------------
+| Name qty | price|
+---------------------------------------------------------------
+|Green Tea 12| 12.00 |
+|(10 off of every after the 10th) | -0.20 |
+|Red Tea 20| 40.00 |
+|(20 off of every after the 15th) | -2.00 |
+---------------------------------------------------------------
+
+| TOTAL | 49.80 |
+---------------------------------------------------------------
# /tmp/d20111115-5847-1s7ejjh/spec.rb:197:in `block (3 levels) in <top (required)>'
# ./lib/homework/run_with_timeout.rb:5:in `block (3 levels) in <top (required)>'
# ./lib/homework/run_with_timeout.rb:5:in `block (2 levels) in <top (required)>'
6) Inventory with a '% off' coupon shows the discount in the invoice
Failure/Error: cart.invoice.should eq <<INVOICE
expected: "+------------------------------------------------+----------+\n| Name qty | price |\n+------------------------------------------------+----------+\n| Green Tea 10 | 10.00 |\n| Coupon TEA-TIME - 20% off | -2.00 |\n+------------------------------------------------+----------+\n| TOTAL | 8.00 |\n+------------------------------------------------+----------+\n"
got: "---------------------------------------------------------------\n| Name qty | price|\n---------------------------------------------------------------\n| Green Tea | 10.00 | \n|Coupon TEA-TIME -20% off | -2.00 |\n---------------------------------------------------------------\n\n| TOTAL | 8.00 |\n---------------------------------------------------------------\n"
(compared using ==)
Diff:
@@ -1,9 +1,10 @@
-+------------------------------------------------+----------+
-| Name qty | price |
-+------------------------------------------------+----------+
-| Green Tea 10 | 10.00 |
-| Coupon TEA-TIME - 20% off | -2.00 |
-+------------------------------------------------+----------+
-| TOTAL | 8.00 |
-+------------------------------------------------+----------+
+---------------------------------------------------------------
+| Name qty | price|
+---------------------------------------------------------------
+| Green Tea | 10.00 |
+|Coupon TEA-TIME -20% off | -2.00 |
+---------------------------------------------------------------
+
+| TOTAL | 8.00 |
+---------------------------------------------------------------
# /tmp/d20111115-5847-1s7ejjh/spec.rb:240:in `block (3 levels) in <top (required)>'
# ./lib/homework/run_with_timeout.rb:5:in `block (3 levels) in <top (required)>'
# ./lib/homework/run_with_timeout.rb:5:in `block (2 levels) in <top (required)>'
7) Inventory with an 'amount off' coupon shows the discount in the invoice
Failure/Error: cart.invoice.should eq <<INVOICE
expected: "+------------------------------------------------+----------+\n| Name qty | price |\n+------------------------------------------------+----------+\n| Green Tea 5 | 5.00 |\n| Coupon TEA-TIME - 10.00 off | -5.00 |\n+------------------------------------------------+----------+\n| TOTAL | 0.00 |\n+------------------------------------------------+----------+\n"
got: "---------------------------------------------------------------\n| Name qty | price|\n---------------------------------------------------------------\n| Green Tea | 5.00 | \n|Coupon TEA-TIME -0.1E2 off | -5.00 |\n---------------------------------------------------------------\n\n| TOTAL | 0.00 |\n---------------------------------------------------------------\n"
(compared using ==)
Diff:
@@ -1,9 +1,10 @@
-+------------------------------------------------+----------+
-| Name qty | price |
-+------------------------------------------------+----------+
-| Green Tea 5 | 5.00 |
-| Coupon TEA-TIME - 10.00 off | -5.00 |
-+------------------------------------------------+----------+
-| TOTAL | 0.00 |
-+------------------------------------------------+----------+
+---------------------------------------------------------------
+| Name qty | price|
+---------------------------------------------------------------
+| Green Tea | 5.00 |
+|Coupon TEA-TIME -0.1E2 off | -5.00 |
+---------------------------------------------------------------
+
+| TOTAL | 0.00 |
+---------------------------------------------------------------
# /tmp/d20111115-5847-1s7ejjh/spec.rb:281:in `block (3 levels) in <top (required)>'
# ./lib/homework/run_with_timeout.rb:5:in `block (3 levels) in <top (required)>'
# ./lib/homework/run_with_timeout.rb:5:in `block (2 levels) in <top (required)>'
8) Inventory with multiple discounts can print an invoice
Failure/Error: cart.invoice.should eq <<INVOICE
expected: "+------------------------------------------------+----------+\n| Name qty | price |\n+------------------------------------------------+----------+\n| Green Tea 8 | 22.32 |\n| (buy 1, get 1 free) | -11.16 |\n| Black Coffee 5 | 14.95 |\n| (get 20% off for every 2) | -2.39 |\n| Milk 5 | 8.95 |\n| (30% off of every after the 3rd) | -1.07 |\n| Cereal 3 | 7.47 |\n| Coupon BREAKFAST - 10% off | -3.91 |\n+------------------------------------------------+----------+\n| TOTAL | 35.16 |\n+------------------------------------------------+----------+\n"
got: "---------------------------------------------------------------\n| Name qty | price|\n---------------------------------------------------------------\n|Green Tea 8| 22.32 |\n|(by 1, get 1 free) | -11.16 |\n|Black Coffee 5| 14.95 |\n|(get 20% off for every 2) | -2.39 |\n|Milk 5| 8.95 |\n|(30 off of every after the 3th) | -1.07 |\n| Cereal | 3.00 | \n|Coupon BREAKFAST -10% off | -3.91 |\n---------------------------------------------------------------\n\n| TOTAL | 35.16 |\n---------------------------------------------------------------\n"
(compared using ==)
Diff:
@@ -1,15 +1,16 @@
-+------------------------------------------------+----------+
-| Name qty | price |
-+------------------------------------------------+----------+
-| Green Tea 8 | 22.32 |
-| (buy 1, get 1 free) | -11.16 |
-| Black Coffee 5 | 14.95 |
-| (get 20% off for every 2) | -2.39 |
-| Milk 5 | 8.95 |
-| (30% off of every after the 3rd) | -1.07 |
-| Cereal 3 | 7.47 |
-| Coupon BREAKFAST - 10% off | -3.91 |
-+------------------------------------------------+----------+
-| TOTAL | 35.16 |
-+------------------------------------------------+----------+
+---------------------------------------------------------------
+| Name qty | price|
+---------------------------------------------------------------
+|Green Tea 8| 22.32 |
+|(by 1, get 1 free) | -11.16 |
+|Black Coffee 5| 14.95 |
+|(get 20% off for every 2) | -2.39 |
+|Milk 5| 8.95 |
+|(30 off of every after the 3th) | -1.07 |
+| Cereal | 3.00 |
+|Coupon BREAKFAST -10% off | -3.91 |
+---------------------------------------------------------------
+
+| TOTAL | 35.16 |
+---------------------------------------------------------------
# /tmp/d20111115-5847-1s7ejjh/spec.rb:309:in `block (3 levels) in <top (required)>'
# ./lib/homework/run_with_timeout.rb:5:in `block (3 levels) in <top (required)>'
# ./lib/homework/run_with_timeout.rb:5:in `block (2 levels) in <top (required)>'
Finished in 0.57576 seconds
19 examples, 8 failures
Failed examples:
rspec /tmp/d20111115-5847-1s7ejjh/spec.rb:47 # Inventory with no discounts has some constraints on prices and counts
rspec /tmp/d20111115-5847-1s7ejjh/spec.rb:64 # Inventory with no discounts can print an invoice
rspec /tmp/d20111115-5847-1s7ejjh/spec.rb:104 # Inventory with a 'buy X, get one free' promotion shows the discount in the invoice
rspec /tmp/d20111115-5847-1s7ejjh/spec.rb:147 # Inventory with a '% off for every n' promotion shows the discount in the invoice
rspec /tmp/d20111115-5847-1s7ejjh/spec.rb:190 # Inventory with a '% off of every item after the nth' promotion shows the discount in the ivnoice
rspec /tmp/d20111115-5847-1s7ejjh/spec.rb:233 # Inventory with a '% off' coupon shows the discount in the invoice
rspec /tmp/d20111115-5847-1s7ejjh/spec.rb:274 # Inventory with an 'amount off' coupon shows the discount in the invoice
rspec /tmp/d20111115-5847-1s7ejjh/spec.rb:295 # Inventory with multiple discounts can print an invoice
История (1 версия и 0 коментара)
Мария обнови решението на 07.11.2011 16:47 (преди около 13 години)