-
Notifications
You must be signed in to change notification settings - Fork 2.1k
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
PBS Bid Adapter: add dchain (demand chain object) to prebid server adapter #6383
Merged
Merged
Changes from 5 commits
Commits
Show all changes
6 commits
Select commit
Hold shift + click to select a range
469545e
Update index.js
patmmccann eb9f645
Update prebidServerBidAdapter_spec.js
patmmccann 88b8e5e
Update prebidServerBidAdapter_spec.js
patmmccann bf93799
Update prebidServerBidAdapter_spec.js
patmmccann badef13
Update prebidServerBidAdapter_spec.js
patmmccann 6c67638
Update index.js
patmmccann File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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.
Based on the unit test below, dchain is an object, not a stringified object, so I think there's a problem here.
This isn't a deep copy -- believe the right way to copy a full object would be something like this:
@ChrisHuie - please confirm?
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.
happy to make that change, but i'm curious why my test would have passed if this is a problem
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.
I think I am fully understanding what you are asking. Object.assign doesn't exactly deep copy but it does create a new clone from the source object that copies over the properties and is then allocated differently in memory. The "=" sign, in this case, instead is referencing the source property which acts just like a pointer to the same memory slot. So if bidObject.meta.dchain changes then bid.ext.dchain would also change and vice-versa I believe. With object.assign changing the property wouldn't affect bid.ext.dchain or the other way around.
I think object.assign is better for the side effect reason but shouldn't impact these tests
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.
i changed to utils.deepClone