def test_load_get_known_extids() -> None: """Checks PackageLoader.load() fetches known extids efficiently""" storage = Mock(wraps=get_storage("memory")) class StubPackageInfo(BasePackageInfo): pass def MyPackageLoader(PackageLoader): def get_versions(self): return ["v1.0", "v2.0", "v3.0"] def get_package_info(self, version): p_info = StubPackageInfo("http://example.org/") extid_type = "extid-type1" if version in ("v1.0", "v2.0") else "extid-type2" # Versions 1.0 and 2.0 have an extid of a given type, v3.0 has an extid # of a different type patch( p_info, "extid", autospec=True, return_value=(extid_type, f"extid-of-{version}".encode()), ) return p_info loader = PackageLoader(storage, "http://example.org") # passes loader = MyPackageLoader(storage, "http://example.org") # TypeError: MyPackageLoader() takes 1 positional argument but 2 were given