-
Notifications
You must be signed in to change notification settings - Fork 2.3k
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
Decouple adblock engines from component loading methods #19366
Comments
@antonok-edm could you help @brave/legacy_qa with specific test cases (particularly in high impact areas) that we could use to check this one? There are a number of previous issues related to adblock, so any assistance you can provide in focusing in on the scope would be appreciated. cc @rebron due to this being a large refactor per brave/brave-core#10994 (comment) |
@LaurenWags in terms of high impact areas, it'd definitely be good to check that ads on popular sites are still blocked consistently (in particular YouTube and perhaps some news sites). It could be good to double-check the test plan from brave/brave-core#11621. Other than that, I don't have a good sense of where there might be any issues (or I would have fixed them already 😉). We do have a decent amount of automated test coverage here, but creativity would be appreciated! |
Verified 'Passed' using
Testcase 1: Verify when Brave flag is enabled, cookie notice is dismissed and when disabled, cookie notice is displayed again I. Enable
II. Disable #brave-adblock-cookie-list-default in brave://flags
Testcase #2 - Verify cookie banner is dismissed with aggressive mode in Shields I. Enable #brave-adblock-cookie-list-default in brave://flags
II. Disable
Testcase #3 - Manually toggle `Easylist-Cookie List - Filter Obtrusive Cookie Notices'
Note: In addition to above testing, verified |
Verified
Testcase 1: Verify when Brave flag is enabled, cookie notice is dismissed and when disabled, cookie notice is displayed again I. Enable
II. Disable #brave-adblock-cookie-list-default in brave://flags
Testcase 2 - Verify cookie banner is dismissed with aggressive mode in Shields I. Enable #brave-adblock-cookie-list-default in brave://flags
II. Disable
Testcase 3 - Manually toggle `Easylist-Cookie List - Filter Obtrusive Cookie Notices'
NOTE: after enabling
Note: In addition to above testing, verified |
Verification completed using Beta Testcase 1: Disable/Enable
Test Case 2: Verify cookie banner is dismissed with aggressive mode in Shields
Issue encountered: when enabling adblock cooklie-list flag, and also with aggressive ad shields mode, cookie banner shows up but quickly blocked on page load on gulfnews. Test Case 3: Manually toggle
|
Verification passed on
Testcase 1: Verify when Brave flag is enabled, cookie notice is dismissed and when disabled, cookie notice is displayed again I. Enable
II. Disable #brave-adblock-cookie-list-default in brave://flags
Testcase 2 - Verify cookie banner is dismissed with aggressive mode in Shields I. Enable #brave-adblock-cookie-list-default in brave://flags
II. Disable
Testcase 3 - Manually toggle `Easylist-Cookie List - Filter Obtrusive Cookie Notices'
NOTE: after enabling
Note: In addition to above testing, verified |
Initially, adblock engines were only loaded with sources from Brave's component server. Over time, additional adblock engines were added that load from the browser's local preferences (custom filters) or from remote 3rd party servers (subscription lists). The code is still structured to support the initial use-case, which is confusing and limits future improvements. Once this is implemented properly, it will unblock future work like being able to combine the engines together for performance reasons, or untangling threading concerns.
This should ultimately be achieved by removing
BraveComponent
from theAdBlockService
inheritance tree, and replacing it with a commonSourceProvider
interface that is generic enough to be implemented by the necessary components, custom filters loader, or subscription lists.The text was updated successfully, but these errors were encountered: