fix: remove test content script from production manifest
- Removed content_scripts entry that injected test code into all pages - Modified test-lib.js to dynamically inject content script only during tests - Test code no longer affects production users 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
parent
86f5c86f4f
commit
e6f025335a
@ -26,13 +26,6 @@
|
||||
"32": "assets/icon-addon.svg",
|
||||
"64": "assets/icon-addon.svg"
|
||||
},
|
||||
"content_scripts": [
|
||||
{
|
||||
"matches": ["<all_urls>"],
|
||||
"js": ["lib/tests/test-content-script.js"],
|
||||
"run_at": "document_end"
|
||||
}
|
||||
],
|
||||
"permissions": [
|
||||
"proxy",
|
||||
"storage",
|
||||
|
||||
@ -1,14 +1,36 @@
|
||||
// Test library for Marionette-based extension verification
|
||||
// This JavaScript code runs in the browser context via Marionette
|
||||
|
||||
/**
|
||||
* Inject test content script into the page
|
||||
* @returns {Promise<boolean>} - True if injection successful
|
||||
*/
|
||||
async function injectTestContentScript() {
|
||||
// Read the content script file
|
||||
const response = await fetch(browser.runtime.getURL('lib/tests/test-content-script.js'));
|
||||
const scriptCode = await response.text();
|
||||
|
||||
// Inject it into the page
|
||||
const script = document.createElement('script');
|
||||
script.textContent = scriptCode;
|
||||
document.documentElement.appendChild(script);
|
||||
script.remove();
|
||||
|
||||
// Wait a bit for script to initialize
|
||||
await new Promise(resolve => setTimeout(resolve, 100));
|
||||
|
||||
return document.body.getAttribute('data-rentgen-injected') === 'true';
|
||||
}
|
||||
|
||||
/**
|
||||
* Test that background script performs computation correctly
|
||||
* @param {number} testValue - Input value for computation
|
||||
* @returns {Promise<number|null>} - Computed result or null on failure
|
||||
*/
|
||||
function testBackgroundComputation(testValue) {
|
||||
// Check if content script loaded
|
||||
if (!document.body.getAttribute('data-rentgen-injected')) {
|
||||
async function testBackgroundComputation(testValue) {
|
||||
// Inject content script first
|
||||
const injected = await injectTestContentScript();
|
||||
if (!injected) {
|
||||
return -1; // Content script not loaded
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user