Skip to content

Commit 5b98271

Browse files
petro97Shaun Maharaj
andauthored
Updated Profile page (#726)
* Updated Profile page * Updates in Profile page * - test updates, bug fixes for empty elements Co-authored-by: Shaun Maharaj <Shaun.Maharaj@elasticpath.com>
1 parent dc7f920 commit 5b98271

File tree

3 files changed

+9
-6
lines changed

3 files changed

+9
-6
lines changed

src/containers/ProfilePage.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -159,7 +159,7 @@ class ProfilePage extends React.Component<RouteComponentProps, ProfilePageState>
159159

160160
renderShippingAddress() {
161161
const { profileData } = this.state;
162-
if (profileData && profileData._addresses[0]._shippingaddresses && profileData._addresses[0]._shippingaddresses[0]._selector[0]._chosen) {
162+
if (profileData && profileData._addresses && profileData._addresses[0]._shippingaddresses && profileData._addresses[0]._shippingaddresses[0]._selector && profileData._addresses[0]._shippingaddresses[0]._selector[0]._chosen) {
163163
const selectedAddress = profileData._addresses[0]._shippingaddresses[0]._selector[0]._chosen[0]._description[0].address;
164164
const selectedAddressName = profileData._addresses[0]._shippingaddresses[0]._selector[0]._chosen[0]._description[0].name;
165165
return (
@@ -189,7 +189,7 @@ class ProfilePage extends React.Component<RouteComponentProps, ProfilePageState>
189189

190190
renderBillingAddress() {
191191
const { profileData } = this.state;
192-
if (profileData && profileData._addresses[0]._billingaddresses && profileData._addresses[0]._billingaddresses[0]._selector[0]._chosen) {
192+
if (profileData && profileData._addresses && profileData._addresses[0]._billingaddresses && profileData._addresses[0]._billingaddresses[0]._selector && profileData._addresses[0]._billingaddresses[0]._selector[0]._chosen) {
193193
const selectedAddress = profileData._addresses[0]._billingaddresses[0]._selector[0]._chosen[0]._description[0].address;
194194
const selectedAddressName = profileData._addresses[0]._billingaddresses[0]._selector[0]._chosen[0]._description[0].name;
195195
return (

src/containers/b2b/AddressBookPage.tsx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -101,8 +101,8 @@ class AddressBookPage extends React.Component<AddressBookPageProps, AddressBookP
101101
const profileData = await res.json();
102102
if (profileData && profileData._defaultprofile) {
103103
const addressData = profileData._defaultprofile[0]._addresses[0];
104-
const chosenBillingAddress = addressData._billingaddresses[0]._selector[0]._chosen && addressData._billingaddresses[0]._selector[0]._chosen[0]._description[0].self.uri;
105-
const chosenShippingAddress = addressData._shippingaddresses[0]._selector[0]._chosen && addressData._shippingaddresses[0]._selector[0]._chosen[0]._description[0].self.uri;
104+
const chosenBillingAddress = addressData._billingaddresses[0]._selector && addressData._billingaddresses[0]._selector[0]._chosen && addressData._billingaddresses[0]._selector[0]._chosen[0]._description[0].self.uri;
105+
const chosenShippingAddress = addressData._shippingaddresses[0]._selector && addressData._shippingaddresses[0]._selector[0]._chosen && addressData._shippingaddresses[0]._selector[0]._chosen[0]._description[0].self.uri;
106106
this.setState({
107107
profileData: addressData,
108108
chosenBillingUri: chosenBillingAddress,
@@ -141,9 +141,9 @@ class AddressBookPage extends React.Component<AddressBookPageProps, AddressBookP
141141
const newOrEdit = (addressData && addressData.addressUri) ? intl.get('edit') : intl.get('new');
142142
const isChosenBilling = chosenBillingUri === (addressData && addressData.addressUri);
143143
const isChosenShipping = chosenShippingUri === (addressData && addressData.addressUri);
144-
let selectactionShippingUri = addressData && profileData._shippingaddresses[0]._selector[0]._choice
144+
let selectactionShippingUri = addressData && profileData._shippingaddresses[0]._selector && profileData._shippingaddresses[0]._selector[0]._choice
145145
&& profileData._shippingaddresses[0]._selector[0]._choice.find(el => addressData.addressUri === el._description[0].self.uri);
146-
let selectactionBillingUri = addressData && profileData._billingaddresses[0]._selector[0]._choice
146+
let selectactionBillingUri = addressData && profileData._billingaddresses[0]._selector && profileData._billingaddresses[0]._selector[0]._choice
147147
&& profileData._billingaddresses[0]._selector[0]._choice.find(el => addressData.addressUri === el._description[0].self.uri);
148148
selectactionShippingUri = selectactionShippingUri && selectactionShippingUri._selectaction[0].self.uri;
149149
selectactionBillingUri = selectactionBillingUri && selectactionBillingUri._selectaction[0].self.uri;

src/tests/e2e/profile.test.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -269,6 +269,9 @@ describe('Profile', () => {
269269
await page.click(MY_PROFILE);
270270

271271
// Then I can see my addresses
272+
await page.waitFor(3000);
273+
await page.waitForSelector(EDIT_ADDRESS_BUTTON);
274+
await page.click(EDIT_ADDRESS_BUTTON);
272275
await page.waitForSelector(ADDRESS_STREET_NAME);
273276
const element = await page.$(ADDRESS_STREET_NAME);
274277
const text = await page.evaluate(el => el.textContent, element);

0 commit comments

Comments
 (0)