Code
Explorer
You are a developer and looking for Shopware projects?
Apply Now!
setCompany example
public
function
getAdditionalAddressLine1
(
)
{
return
$this
->additionalAddressLine1;
}
/** * Transfer values from the new address object */
public
function
fromAddress
(
Address
$address
)
{
$this
->
setCompany
(
(string)
$address
->
getCompany
(
)
)
;
$this
->
setDepartment
(
(string)
$address
->
getDepartment
(
)
)
;
$this
->
setSalutation
(
(string)
$address
->
getSalutation
(
)
)
;
$this
->
setFirstName
(
(string)
$address
->
getFirstname
(
)
)
;
$this
->
setLastName
(
(string)
$address
->
getLastname
(
)
)
;
$this
->
setStreet
(
(string)
$address
->
getStreet
(
)
)
;
$this
->
setCity
(
(string)
$address
->
getCity
(
)
)
;
$this
->
setZipCode
(
(string)
$address
->
getZipcode
(
)
)
;
$this
->
setAdditionalAddressLine1
(
(string)
$address
->
getAdditionalAddressLine1
(
)
)
;
$this
->
setAdditionalAddressLine2
(
(string)
$address
->
getAdditionalAddressLine2
(
)
)
;
$this
->
setCountry
(
$address
->
getCountry
(
)
)
;
$this
->
setPhone
(
$address
->
getPhone
(
)
)
;
public
function
getAdditionalAddressLine1
(
)
{
return
$this
->additionalAddressLine1;
}
/** * Transfer values from the new address object */
public
function
fromAddress
(
Address
$address
)
{
$this
->
setCompany
(
(string)
$address
->
getCompany
(
)
)
;
$this
->
setDepartment
(
(string)
$address
->
getDepartment
(
)
)
;
$this
->
setSalutation
(
(string)
$address
->
getSalutation
(
)
)
;
$this
->
setFirstName
(
(string)
$address
->
getFirstname
(
)
)
;
$this
->
setLastName
(
(string)
$address
->
getLastname
(
)
)
;
$this
->
setStreet
(
(string)
$address
->
getStreet
(
)
)
;
$this
->
setCity
(
(string)
$address
->
getCity
(
)
)
;
$this
->
setZipCode
(
(string)
$address
->
getZipcode
(
)
)
;
$this
->
setAdditionalAddressLine1
(
(string)
$address
->
getAdditionalAddressLine1
(
)
)
;
$this
->
setAdditionalAddressLine2
(
(string)
$address
->
getAdditionalAddressLine2
(
)
)
;
$this
->
setCountry
(
$address
->
getCountry
(
)
)
;
$this
->
setPhone
(
(string)
$address
->
getPhone
(
)
)
;
'currencyId' => Defaults::CURRENCY,
'amount' => 0,
]
,
'vatIdPattern' => '(DE)?[0-9]{9}',
]
;
$countryRepository
->
update
(
[
$data
]
, Context::
createDefaultContext
(
)
)
;
$country
=
$countryRepository
->
search
(
$criteria
, Context::
createDefaultContext
(
)
)
->
getEntities
(
)
->
first
(
)
;
static
::
assertNotNull
(
$country
)
;
$customer
=
new
CustomerEntity
(
)
;
$customer
->
setCompany
(
'ABC Company'
)
;
$customer
->
setVatIds
(
[
'DE123123123'
]
)
;
$context
->
expects
(
static
::
once
(
)
)
->
method
(
'getShippingLocation'
)
->
willReturn
(
ShippingLocation::
createFromCountry
(
$country
)
)
;
$context
->
expects
(
static
::
once
(
)
)
->
method
(
'getCustomer'
)
->
willReturn
(
$customer
)
;
$taxDetector
=
$this
->
getContainer
(
)
->
get
(
TaxDetector::
class
)
;
class
IsCompanyCustomerRuleTest
extends
TestCase
{
public
function
testThatNonExistingCustomerDoesNotMatch
(
)
: void
{
$this
->
matchRuleWithCustomer
(
new
IsCompanyRule
(
true
)
, null, false
)
;
$this
->
matchRuleWithCustomer
(
new
IsCompanyRule
(
false
)
, null, false
)
;
}
public
function
testThatCustomerWithCompanyMatchesCorrectly
(
)
: void
{
$customer
=
new
CustomerEntity
(
)
;
$customer
->
setCompany
(
'shopware AG'
)
;
$this
->
matchRuleWithCustomer
(
new
IsCompanyRule
(
true
)
,
$customer
, true
)
;
$this
->
matchRuleWithCustomer
(
new
IsCompanyRule
(
false
)
,
$customer
, false
)
;
}
public
function
testThatCustomerWithoutCompanyMatchesCorrectly
(
)
: void
{
$customer
=
new
CustomerEntity
(
)
;
$this
->
matchRuleWithCustomer
(
new
IsCompanyRule
(
true
)
,
$customer
, false
)
;
$this
->
matchRuleWithCustomer
(
new
IsCompanyRule
(
false
)
,
$customer
, true
)
;
}
$customerData
)
;
}
private
function
buildCustomerEntity
(
string
$id
)
: CustomerEntity
{
$customerEntity
=
new
CustomerEntity
(
)
;
$customerEntity
->
setId
(
$id
)
;
$customerEntity
->
setEmail
(
'test@example.org'
)
;
$customerEntity
->
setFirstName
(
'Max'
)
;
$customerEntity
->
setLastName
(
'Smith'
)
;
$customerEntity
->
setTitle
(
'Dr.'
)
;
$customerEntity
->
setCompany
(
'Acme Inc.'
)
;
$customerEntity
->
setCustomerNumber
(
'ABC123XY'
)
;
$customerEntity
->
setRemoteAddress
(
'Test street 123, NY'
)
;
$customerEntity
->
setCustomFields
(
[
'customerGroup' => 'premium', 'origin' => 'newsletter', 'active' => true
]
)
;
return
$customerEntity
;
}
}
$this
->countryHydrator =
$countryHydrator
;
$this
->attributeHydrator =
$attributeHydrator
;
}
/** * @return Address */
public
function
hydrate
(
array
$data
)
{
$address
=
new
Address
(
)
;
$address
->
setId
(
(int)
$data
[
'__address_id'
]
)
;
$address
->
setCompany
(
$data
[
'__address_company'
]
)
;
$address
->
setDepartment
(
$data
[
'__address_department'
]
)
;
$address
->
setSalutation
(
$data
[
'__address_salutation'
]
)
;
$address
->
setTitle
(
$data
[
'__address_title'
]
)
;
$address
->
setFirstname
(
$data
[
'__address_firstname'
]
)
;
$address
->
setLastname
(
$data
[
'__address_lastname'
]
)
;
$address
->
setStreet
(
$data
[
'__address_street'
]
)
;
$address
->
setZipcode
(
$data
[
'__address_zipcode'
]
)
;
$address
->
setCity
(
$data
[
'__address_city'
]
)
;
$address
->
setCountryId
(
(int)
$data
[
'__address_country_id'
]
)
;
$address
->
setStateId
(
(int)
$data
[
'__address_state_id'
]
)
;
$address
->
setVatId
(
$data
[
'__address_ustid'
]
)
;