Skip to content

Commit 89259ed

Browse files
committed
addressed reviews
1 parent c026eaa commit 89259ed

File tree

3 files changed

+0
-100
lines changed

3 files changed

+0
-100
lines changed

nodescraper/cli/helper.py

Lines changed: 0 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -313,33 +313,6 @@ def extract_analyzer_args_from_model(
313313
return None
314314

315315

316-
def extract_collector_args_from_model(
317-
plugin_cls: type, data_model: BaseModel, logger: logging.Logger
318-
) -> Optional[BaseModel]:
319-
"""Extract collector args from a plugin and a data model.
320-
321-
Args:
322-
plugin_cls (type): The plugin class from registry.
323-
data_model (BaseModel): System data model.
324-
logger (logging.Logger): logger.
325-
326-
Returns:
327-
Optional[BaseModel]: Instance of collector args model or None if unavailable.
328-
"""
329-
if not hasattr(plugin_cls, "COLLECTOR_ARGS") or not plugin_cls.COLLECTOR_ARGS:
330-
logger.warning(
331-
"Plugin: %s does not support reference config creation. No collector args defined.",
332-
getattr(plugin_cls, "__name__", str(plugin_cls)),
333-
)
334-
return None
335-
336-
try:
337-
return plugin_cls.COLLECTOR_ARGS.build_from_model(data_model)
338-
except NotImplementedError as e:
339-
logger.info("%s: %s", plugin_cls.__name__, str(e))
340-
return None
341-
342-
343316
def generate_reference_config(
344317
results: list[PluginResult], plugin_reg: PluginRegistry, logger: logging.Logger
345318
) -> PluginConfig:
@@ -378,9 +351,6 @@ def generate_reference_config(
378351
if a_args:
379352
plugins[obj.source]["analysis_args"] = a_args.model_dump(exclude_none=True)
380353

381-
c_args = extract_collector_args_from_model(plugin, data_model, logger)
382-
if c_args:
383-
plugins[obj.source]["collector_args"] = c_args.model_dump(exclude_none=True)
384354
plugin_config.plugins = plugins
385355

386356
return plugin_config

nodescraper/plugins/inband/process/collector_args.py

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -25,20 +25,7 @@
2525
###############################################################################
2626

2727
from nodescraper.models import CollectorArgs
28-
from nodescraper.plugins.inband.process.processdata import ProcessDataModel
2928

3029

3130
class ProcessCollectorArgs(CollectorArgs):
3231
top_n_process: int = 10
33-
34-
@classmethod
35-
def build_from_model(cls, datamodel: ProcessDataModel) -> "ProcessCollectorArgs":
36-
"""build analyzer args from data model
37-
38-
Args:
39-
datamodel (BiosDataModel): data model for plugin
40-
41-
Returns:
42-
ProcessCollectorArgs: instance of analyzer args class
43-
"""
44-
return cls(top_n_process=datamodel.kfd_process)

test/unit/framework/test_cli_helper.py

Lines changed: 0 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,6 @@
3939
from nodescraper.cli import cli
4040
from nodescraper.cli.helper import (
4141
build_config,
42-
extract_collector_args_from_model,
4342
find_datamodel_and_result,
4443
)
4544
from nodescraper.configregistry import ConfigRegistry
@@ -182,59 +181,3 @@ def build_from_model(cls, datamodel):
182181
assert isinstance(cfg, PluginConfig)
183182
assert set(cfg.plugins) == {parent}
184183
assert cfg.plugins[parent]["analysis_args"] == {}
185-
186-
187-
def test_no_collector_args_defined(caplog):
188-
class NoArgsPlugin:
189-
pass
190-
191-
caplog.set_level(logging.WARNING)
192-
res = extract_collector_args_from_model(
193-
NoArgsPlugin, DummyDataModel(foo=1), logging.getLogger()
194-
)
195-
assert res is None
196-
assert "does not support reference config creation" in caplog.text
197-
198-
199-
def test_collector_args_none(caplog):
200-
class NoneArgsPlugin:
201-
COLLECTOR_ARGS = None
202-
203-
caplog.set_level(logging.WARNING)
204-
res = extract_collector_args_from_model(
205-
NoneArgsPlugin, DummyDataModel(foo=1), logging.getLogger()
206-
)
207-
assert res is None
208-
assert "does not support reference config creation" in caplog.text
209-
210-
211-
def test_successful_build_from_model():
212-
class MyArgs(BaseModel):
213-
a: int
214-
215-
@classmethod
216-
def build_from_model(cls, dm):
217-
return cls(a=dm.foo)
218-
219-
class GoodPlugin:
220-
COLLECTOR_ARGS = MyArgs
221-
222-
dm = DummyDataModel(foo=42)
223-
args = extract_collector_args_from_model(GoodPlugin, dm, logging.getLogger())
224-
assert isinstance(args, MyArgs)
225-
assert args.a == 42
226-
227-
228-
def test_build_from_model_not_implemented(caplog):
229-
class BadArgs(BaseModel):
230-
@classmethod
231-
def build_from_model(cls, dm):
232-
raise NotImplementedError("not implemented")
233-
234-
class BadPlugin:
235-
COLLECTOR_ARGS = BadArgs
236-
237-
caplog.set_level(logging.INFO)
238-
res = extract_collector_args_from_model(BadPlugin, DummyDataModel(foo=7), logging.getLogger())
239-
assert res is None
240-
assert "not implemented" in caplog.text

0 commit comments

Comments
 (0)