Loading src/CommerceTicketInterface.php +1 −1 Original line number Diff line number Diff line Loading @@ -23,7 +23,7 @@ interface CommerceTicketInterface extends ContentEntityInterface, EntityOwnerInt * Sets the ticket title. * * @param string $ticket_number * The ticket ticket number. * The ticket number. * * @return \Drupal\commerce_ticketing\CommerceTicketInterface * The called ticket entity. Loading tests/src/Kernel/MailQueueTest.php +1 −10 Original line number Diff line number Diff line Loading @@ -5,7 +5,6 @@ namespace Drupal\Tests\commerce_ticketing\Kernel; use Drupal\commerce_order\Entity\Order; use Drupal\commerce_order\Entity\OrderInterface; use Drupal\commerce_payment\Entity\Payment; use Drupal\user\Entity\User; /** * Tests the ticket emails. Loading Loading @@ -73,15 +72,7 @@ class MailQueueTest extends TicketKernelTestBase { assert($order instanceof OrderInterface); $this->assertCount(1, $order->getItems()); $payment = Payment::create([ 'type' => 'payment_default', 'payment_gateway' => $this->paymentGateway->id(), 'order_id' => $order->id(), 'amount' => $order->getTotalPrice(), 'state' => 'completed', ]); $payment->save(); $order->save(); $this->addPayment($order); $this->assertEquals(0, \Drupal::queue('commerce_ticketing_send_ticket_receipt_worker')->numberOfItems()); } Loading tests/src/Kernel/TicketCreationTest.php +64 −0 Original line number Diff line number Diff line Loading @@ -2,6 +2,10 @@ namespace Drupal\Tests\commerce_ticketing\Kernel; use Drupal\commerce_order\Entity\Order; use Drupal\commerce_order\Entity\OrderInterface; use Drupal\commerce_product\Entity\Product; use Drupal\commerce_product\Entity\ProductVariation; use Drupal\commerce_ticketing\Entity\CommerceTicket; /** Loading @@ -19,6 +23,66 @@ class TicketCreationTest extends TicketKernelTestBase { $this->addPayment(); $tickets = CommerceTicket::loadMultiple(); $this->assertCount(1, $tickets); $ticket = reset($tickets); $this->assertEquals($ticket->label(), 'Ticket ' . $this->variation->label()); } /** * Tests ticket creation with a really long title. */ public function testTicketCreationLongTitle() { $this->assertCount(0, $this->tickets); $customer = $this->createUser([], ['view own commerce_ticket', 'view own commerce_order', 'view commerce_product']); /** @var \Drupal\commerce_order\Entity\OrderInterface $order */ $order = Order::create([ 'type' => 'default', 'state' => 'draft', 'mail' => $customer->getEmail(), 'uid' => $customer->id(), 'ip_address' => '127.0.0.1', 'store_id' => $this->store->id(), 'payment_gateway' => $this->paymentGateway->id(), ]); $variation = ProductVariation::create([ 'type' => 'ticket', 'sku' => strtolower($this->randomMachineName()), 'title' => $this->randomString(44), 'price' => [ 'number' => '10.00', 'currency_code' => 'USD', ], 'status' => 1, ]); $variation->save(); $product = Product::create([ 'type' => 'ticket', 'title' => $this->randomMachineName(), 'stores' => [$this->store], 'variations' => [$variation], ]); $product->save(); $variation = $this->reloadEntity($variation); // Add the item to the cart. $order_item = $this->orderItemStorage->createFromPurchasableEntity($variation); $order_item->save(); $order->addItem($order_item); // Save and reload to have a fresh order. $order->save(); $order = $this->reloadEntity($order); assert($order instanceof OrderInterface); $this->assertCount(1, $order->getItems()); $this->addPayment($order); $tickets = CommerceTicket::loadMultiple(); $this->assertCount(1, $tickets); $ticket = reset($tickets); $this->assertEquals($ticket->label(), substr($this->t('Ticket') . ' ' . $variation->label(), 0, 50)); } } tests/src/Kernel/TicketKernelTestBase.php +3 −0 Original line number Diff line number Diff line Loading @@ -101,6 +101,7 @@ abstract class TicketKernelTestBase extends CartKernelTestBase { $this->variation = ProductVariation::create([ 'type' => 'ticket', 'sku' => strtolower($this->randomMachineName()), 'title' => $this->randomString(), 'price' => [ 'number' => '10.00', 'currency_code' => 'USD', Loading @@ -108,6 +109,8 @@ abstract class TicketKernelTestBase extends CartKernelTestBase { 'status' => 1, ]); $this->variation->save(); // Product is needed to control the permissions on the variations. // @see \Drupal\commerce_product\ProductVariationAccessControlHandler::checkAccess() $this->product = Product::create([ 'type' => 'ticket', 'title' => $this->randomMachineName(), Loading Loading
src/CommerceTicketInterface.php +1 −1 Original line number Diff line number Diff line Loading @@ -23,7 +23,7 @@ interface CommerceTicketInterface extends ContentEntityInterface, EntityOwnerInt * Sets the ticket title. * * @param string $ticket_number * The ticket ticket number. * The ticket number. * * @return \Drupal\commerce_ticketing\CommerceTicketInterface * The called ticket entity. Loading
tests/src/Kernel/MailQueueTest.php +1 −10 Original line number Diff line number Diff line Loading @@ -5,7 +5,6 @@ namespace Drupal\Tests\commerce_ticketing\Kernel; use Drupal\commerce_order\Entity\Order; use Drupal\commerce_order\Entity\OrderInterface; use Drupal\commerce_payment\Entity\Payment; use Drupal\user\Entity\User; /** * Tests the ticket emails. Loading Loading @@ -73,15 +72,7 @@ class MailQueueTest extends TicketKernelTestBase { assert($order instanceof OrderInterface); $this->assertCount(1, $order->getItems()); $payment = Payment::create([ 'type' => 'payment_default', 'payment_gateway' => $this->paymentGateway->id(), 'order_id' => $order->id(), 'amount' => $order->getTotalPrice(), 'state' => 'completed', ]); $payment->save(); $order->save(); $this->addPayment($order); $this->assertEquals(0, \Drupal::queue('commerce_ticketing_send_ticket_receipt_worker')->numberOfItems()); } Loading
tests/src/Kernel/TicketCreationTest.php +64 −0 Original line number Diff line number Diff line Loading @@ -2,6 +2,10 @@ namespace Drupal\Tests\commerce_ticketing\Kernel; use Drupal\commerce_order\Entity\Order; use Drupal\commerce_order\Entity\OrderInterface; use Drupal\commerce_product\Entity\Product; use Drupal\commerce_product\Entity\ProductVariation; use Drupal\commerce_ticketing\Entity\CommerceTicket; /** Loading @@ -19,6 +23,66 @@ class TicketCreationTest extends TicketKernelTestBase { $this->addPayment(); $tickets = CommerceTicket::loadMultiple(); $this->assertCount(1, $tickets); $ticket = reset($tickets); $this->assertEquals($ticket->label(), 'Ticket ' . $this->variation->label()); } /** * Tests ticket creation with a really long title. */ public function testTicketCreationLongTitle() { $this->assertCount(0, $this->tickets); $customer = $this->createUser([], ['view own commerce_ticket', 'view own commerce_order', 'view commerce_product']); /** @var \Drupal\commerce_order\Entity\OrderInterface $order */ $order = Order::create([ 'type' => 'default', 'state' => 'draft', 'mail' => $customer->getEmail(), 'uid' => $customer->id(), 'ip_address' => '127.0.0.1', 'store_id' => $this->store->id(), 'payment_gateway' => $this->paymentGateway->id(), ]); $variation = ProductVariation::create([ 'type' => 'ticket', 'sku' => strtolower($this->randomMachineName()), 'title' => $this->randomString(44), 'price' => [ 'number' => '10.00', 'currency_code' => 'USD', ], 'status' => 1, ]); $variation->save(); $product = Product::create([ 'type' => 'ticket', 'title' => $this->randomMachineName(), 'stores' => [$this->store], 'variations' => [$variation], ]); $product->save(); $variation = $this->reloadEntity($variation); // Add the item to the cart. $order_item = $this->orderItemStorage->createFromPurchasableEntity($variation); $order_item->save(); $order->addItem($order_item); // Save and reload to have a fresh order. $order->save(); $order = $this->reloadEntity($order); assert($order instanceof OrderInterface); $this->assertCount(1, $order->getItems()); $this->addPayment($order); $tickets = CommerceTicket::loadMultiple(); $this->assertCount(1, $tickets); $ticket = reset($tickets); $this->assertEquals($ticket->label(), substr($this->t('Ticket') . ' ' . $variation->label(), 0, 50)); } }
tests/src/Kernel/TicketKernelTestBase.php +3 −0 Original line number Diff line number Diff line Loading @@ -101,6 +101,7 @@ abstract class TicketKernelTestBase extends CartKernelTestBase { $this->variation = ProductVariation::create([ 'type' => 'ticket', 'sku' => strtolower($this->randomMachineName()), 'title' => $this->randomString(), 'price' => [ 'number' => '10.00', 'currency_code' => 'USD', Loading @@ -108,6 +109,8 @@ abstract class TicketKernelTestBase extends CartKernelTestBase { 'status' => 1, ]); $this->variation->save(); // Product is needed to control the permissions on the variations. // @see \Drupal\commerce_product\ProductVariationAccessControlHandler::checkAccess() $this->product = Product::create([ 'type' => 'ticket', 'title' => $this->randomMachineName(), Loading