diff --git a/Entity/Factory/OrderFactory.php b/Entity/Factory/OrderFactory.php index 062db7f..f808141 100644 --- a/Entity/Factory/OrderFactory.php +++ b/Entity/Factory/OrderFactory.php @@ -10,7 +10,7 @@ ; /** - * @Assert\callback(methods={"isValidCustomer", "pickedOrderItems"}) + * @Assert\Callback(methods={"isValidCustomer"}) */ class OrderFactory { @@ -142,6 +142,7 @@ public function isValidCustomer(ExecutionContext $context) /** * @param ExecutionContext $context * @return void + * @deprecated */ public function pickedOrderItems(ExecutionContext $context) { diff --git a/Entity/Order.php b/Entity/Order.php index a9b129e..e0166ba 100644 --- a/Entity/Order.php +++ b/Entity/Order.php @@ -2,8 +2,10 @@ namespace Acme\PizzaBundle\Entity; -use Doctrine\ORM\Mapping as ORM, - Symfony\Component\Validator\Constraints as Assert; +use + Doctrine\ORM\Mapping as ORM, + Symfony\Component\Validator\Constraints as Assert +; /** * @ORM\Entity @@ -24,6 +26,7 @@ class Order * @var \DateTime * * @ORM\Column(type="datetime") + * @Assert\NotBlank() */ protected $date; @@ -31,6 +34,7 @@ class Order * @var \Acme\PizzaBundle\Entity\Customer * * @ORM\ManyToOne(targetEntity="Customer", cascade={"persist"}) + * @Assert\NotBlank() */ protected $customer; @@ -38,6 +42,7 @@ class Order * @var \Doctrine\Common\Collections\ArrayCollection * * @ORM\OneToMany(targetEntity="OrderItem", mappedBy="order", cascade={"persist"}) + * @Assert\NotBlank() */ protected $items; @@ -156,8 +161,12 @@ public function set($name, $value) $this->setDate($value); break; - case 'id': - $this->setId($value); + case 'customer': + $this->setCustomer($value); + break; + + case 'items': + $this->setItems($value); break; default: @@ -177,12 +186,12 @@ public function set($name, $value) public function get($name) { switch ($name) { - case 'date': - return $this->getDate($value); - case 'id': return $this->getId($value); + case 'date': + return $this->getDate($value); + default: throw new \InvalidArgumentException(sprintf('Generic getter for "%s" is not defined', $name)); } diff --git a/Entity/OrderItem.php b/Entity/OrderItem.php index 5b9ab6e..80a8128 100644 --- a/Entity/OrderItem.php +++ b/Entity/OrderItem.php @@ -2,8 +2,10 @@ namespace Acme\PizzaBundle\Entity; -use Doctrine\ORM\Mapping as ORM, - Symfony\Component\Validator\Constraints as Assert; +use + Doctrine\ORM\Mapping as ORM, + Symfony\Component\Validator\Constraints as Assert +; /** * @ORM\Entity @@ -21,17 +23,17 @@ class OrderItem protected $id; /** - * @var \Acme\PizzaBundle\Entity\Order + * @var Order * * @ORM\ManyToOne(targetEntity="Order", inversedBy="items") */ protected $order; /** - * @var \Acme\PizzaBundle\Entity\Pizza + * @var Pizza * * @ORM\ManyToOne(targetEntity="Pizza") - * @Assert\Type(type="Acme\PizzaBundle\Entity\Pizza", message="You have to pick a pizza from the list") + * @Assert\NotBlank() */ protected $pizza; @@ -39,7 +41,9 @@ class OrderItem * @var integer * * @ORM\Column(type="integer") - * @Assert\Min(0) + * @Assert\NotBlank() + * @Assert\Min(1) + * @Assert\Type("integer") */ protected $count; @@ -56,7 +60,7 @@ public function getId() /** * Set the related order * - * @param \Acme\PizzaBundle\Entity\Order $order + * @param Order $order */ public function setOrder(Order $order) { @@ -66,7 +70,7 @@ public function setOrder(Order $order) /** * Get the related order * - * @return \Acme\PizzaBundle\Entity\Order + * @return Order */ public function getOrder() { @@ -76,7 +80,7 @@ public function getOrder() /** * Set the related pizza * - * @param \Acme\PizzaBundle\Entity\Pizza $pizza + * @param Pizza $pizza */ public function setPizza(Pizza $pizza) { @@ -86,7 +90,7 @@ public function setPizza(Pizza $pizza) /** * Get the related pizza * - * @return \Acme\PizzaBundle\Entity\Pizza + * @return Pizza */ public function getPizza() { @@ -124,12 +128,16 @@ public function getCount() public function set($name, $value) { switch ($name) { - case 'count': - $this->setCount($value); + case 'order': + $this->setOrder($value); break; - case 'id': - $this->setId($value); + case 'pizza': + $this->setPizza($value); + break; + + case 'count': + $this->setCount($value); break; default: diff --git a/README.md b/README.md index e97939c..7366a84 100644 --- a/README.md +++ b/README.md @@ -128,5 +128,5 @@ steps: ``` Now you can run test (assuming that Selenium RC is running `java -jar selenium-server-standalone-2.2.0.jar`) -with `phpunit -c app/ src/Acme/PizzaBundle/Tests/Selenium/` +with `phpunit -c app/ src/Acme/PizzaBundle/Tests/` If you want you can submit other missing tests. diff --git a/Resources/views/Order/index.html.twig b/Resources/views/Order/index.html.twig index 1ca18f5..0f35e02 100644 --- a/Resources/views/Order/index.html.twig +++ b/Resources/views/Order/index.html.twig @@ -8,7 +8,7 @@
Hello customer! We want to serve you a yummy-yummy Pizza!
-