Coverage for src / cufile_patcher / service.py: 100%

16 statements  

« prev     ^ index     » next       coverage.py v7.13.5, created at 2026-04-11 15:06 +0000

1from __future__ import annotations 

2 

3 

4class HelloWorldPlugin: 

5 name = "hello_world" 

6 

7 def message(self) -> str: 

8 return "Hello, world!" 

9 

10 

11class PluginService: 

12 def __init__(self) -> None: 

13 self._plugins: dict[str, HelloWorldPlugin] = {} 

14 

15 def register(self, plugin: HelloWorldPlugin) -> None: 

16 self._plugins[plugin.name] = plugin 

17 

18 def hello_world(self) -> str: 

19 return self._plugins["hello_world"].message() 

20 

21 

22def create_default_service() -> PluginService: 

23 service = PluginService() 

24 service.register(HelloWorldPlugin()) 

25 return service