-
Notifications
You must be signed in to change notification settings - Fork 2.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[InternalQA] Fix crash when disconnecting from Netsuite #47232
Conversation
@eVoloshchak Please copy/paste the Reviewer Checklist from here into a new comment on this PR and complete it. If you have the K2 extension, you can simply click: [this button] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Waiting for information on how to get access to credentials for integrations (in this case Netsuite).
Meanwhile, @ShridharGoel, could you please take care of the lint error?
Hi, where you able to get the credentials? |
Do we have any updates on this? |
Finally got my hands on NetSuite credentials and managed to reproduce this scenario, apologies for the delay @ShridharGoel |
Updated. |
@ShridharGoel, could you also populate the Screenshots/Videos section please? |
Actually I don't have NetSuite credentials.
|
@ShridharGoel, the issue is still reproducible with the fix. I did some more digging since you don't have the test credentials:
const policyTagValueList = policyTagList
.filter((tag) => tag && tag.tags)
.map(({tags}) => Object.values(tags))
.flat(); This was correctly proposed by you, we should use this condition useEffect(() => {
let updatedTagsString = TransactionUtils.getTag(transaction);
policyTagLists.forEach((tagList, index) => {
const isTagListRequired = tagList.required ?? false;
if (!isTagListRequired) {
return;
}
const enabledTags = Object.values(tagList.tags).filter((tag) => tag.enabled);
if (enabledTags.length !== 1 || TransactionUtils.getTag(transaction, index)) {
return;
}
updatedTagsString = IOUUtils.insertTagIntoTransactionTagsString(updatedTagsString, enabledTags.at(0)?.name ?? '', index);
});
if (updatedTagsString !== TransactionUtils.getTag(transaction) && updatedTagsString) {
IOU.setMoneyRequestTag(transactionID, updatedTagsString);
}
// Keep 'transaction' out to ensure that we autoselect the option only once
// eslint-disable-next-line react-compiler/react-compiler, react-hooks/exhaustive-deps
}, [policyTagLists, policyTags]); |
71d8806
to
19b7eb2
Compare
Reviewer Checklist
Screenshots/VideosAndroid: NativeScreen.Recording.2024-11-04.at.21.40.34.movAndroid: mWeb ChromeScreen.Recording.2024-11-04.at.21.50.17.moviOS: NativeScreen.Recording.2024-11-04.at.21.32.40.moviOS: mWeb SafariScreen.Recording.2024-11-04.at.21.35.23.movMacOS: Chrome / SafariScreen.Recording.2024-11-04.at.21.18.52.movMacOS: DesktopScreen.Recording.2024-11-04.at.21.53.48.mov |
@ShridharGoel, please add the following step to test steps:
|
Added. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
Can we fix the eslint warnings? |
The error doesn't seem to be related to the changes in this PR, @ShridharGoel, could you pull the latest main please? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@marcaaron, eslint error is gone, this is ready for your review
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
@ShridharGoel Is this internal QA and can we check it off the list? |
🚀 Deployed to staging by https://github.com/marcaaron in version: 9.0.60-0 🚀
|
@kavimuru You can go ahead with the testing if you have Netsuite access. |
🚀 Deployed to production by https://github.com/francoisl in version: 9.0.60-3 🚀
|
Details
Fix crash when disconnecting from Netsuite.
Fixed Issues
$ #46508
PROPOSAL: #46508 (comment)
Tests
8 Click on FAB > Submit Expense > Manual > Enter an amount
QA Steps
8 Click on FAB > Submit Expense > Manual > Enter an amount
PR Author Checklist
### Fixed Issues
section aboveTests
sectionOffline steps
sectionQA steps
sectiontoggleReport
and notonIconClick
)myBool && <MyComponent />
.src/languages/*
files and using the translation methodSTYLE.md
) were followedAvatar
, I verified the components usingAvatar
are working as expected)StyleUtils.getBackgroundAndBorderStyle(theme.componentBG)
)Avatar
is modified, I verified thatAvatar
is working as expected in all cases)Design
label and/or tagged@Expensify/design
so the design team can review the changes.ScrollView
component to make it scrollable when more elements are added to the page.main
branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to theTest
steps.Screenshots/Videos
Android: Native
Android: mWeb Chrome
iOS: Native
iOS: mWeb Safari
MacOS: Chrome / Safari
MacOS: Desktop