Code
Explorer
You are a developer and looking for Shopware projects?
Apply Now!
cartExists example
public
function
testReplaceUpdatesCartTokenToo
(
)
: void
{
$token
= Random::
getAlphanumericString
(
32
)
;
$context
=
$this
->
getContainer
(
)
->
get
(
SalesChannelContextFactory::
class
)
->
create
(
$token
, TestDefaults::SALES_CHANNEL
)
;
$cart
=
new
Cart
(
$token
)
;
$cart
->
addLineItems
(
new
LineItemCollection
(
[
new
LineItem
(
'test', 'test', Uuid::
randomHex
(
)
, 10
)
]
)
)
;
$this
->
getContainer
(
)
->
get
(
CartPersister::
class
)
->
save
(
$cart
,
$context
)
;
static
::
assertTrue
(
$this
->
cartExists
(
$token
)
)
;
$newToken
=
$this
->contextPersister->
replace
(
$token
,
$context
)
;
static
::
assertTrue
(
$this
->
cartExists
(
$newToken
)
)
;
static
::
assertFalse
(
$this
->
cartExists
(
$token
)
)
;
}
public
function
testCustomerIdColumnIsBeingUsed
(
)
: void
{
$customerId
=
$this
->
createCustomer
(
)
;
$token
= Random::
getAlphanumericString
(
32
)
;
$currentContextToken
= Random::
getAlphanumericString
(
32
)
;
$currentContext
=
$this
->
createSalesChannelContext
(
$currentContextToken
)
;
$this
->contextPersister->
save
(
$currentContextToken
,
[
]
,
$currentContext
->
getSalesChannel
(
)
->
getId
(
)
,
$this
->customerId
)
;
$cart
=
new
Cart
(
$currentContextToken
)
;
$cart
->
add
(
new
LineItem
(
Uuid::
randomHex
(
)
, LineItem::CUSTOM_LINE_ITEM_TYPE
)
)
;
$this
->
getContainer
(
)
->
get
(
CartPersister::
class
)
->
save
(
$cart
,
$currentContext
)
;
static
::
assertTrue
(
$this
->
cartExists
(
$currentContextToken
)
)
;
static
::
assertTrue
(
$this
->
contextExists
(
$currentContextToken
)
)
;
$newContext
=
$this
->cartRestorer->
restore
(
$this
->customerId,
$currentContext
)
;
static
::
assertTrue
(
$this
->
cartExists
(
$newContext
->
getToken
(
)
)
)
;
static
::
assertTrue
(
$this
->
contextExists
(
$newContext
->
getToken
(
)
)
)
;
static
::
assertFalse
(
$this
->
cartExists
(
$currentContextToken
)
)
;
static
::
assertFalse
(
$this
->
contextExists
(
$currentContextToken
)
)
;
}