jest-chrome icon indicating copy to clipboard operation
jest-chrome copied to clipboard

Cannot read property 'addListener' of undefined chrome.storage.local.onChanged.addListener

Open juskek opened this issue 1 year ago • 0 comments

Google search terms

jest-chrome chrome.storage.local.onChanged.addListener

Describe the bug

chrome.storage.local.onChanged is undefined

TypeError: Cannot read property 'addListener' of undefined

      166 |         };
      167 |
    > 168 |         chrome.storage.local.onChanged.addListener(

How do we reproduce?

import { renderHook, act } from "@testing-library/react";

import { usePopup } from "../usePopup";
import { chrome } from "jest-chrome";

describe("usePopupRecordBytes", () => {
    it("test", async () => {      
        chrome.storage.local.onChanged.addListener(
            (changes: {
                [key: string]: chrome.storage.StorageChange;
            }) => {
                console.log('foo')
            };
        );

        expect(chrome.storage.local.onChanged.addListener).toHaveBeenCalledTimes(1);
    });
});

Expected behavior

chrome.storage.local.onChanged to be defined so that listeners can be added

Actual behavior

Screenshots

image

Please complete the following information:

  • Library Version: 0.8.0
  • Operating System: macOS
  • Browser: Chrome
  • Node Version: v14.21.2

Additional context

juskek avatar Jul 12 '23 09:07 juskek