aboutsummaryrefslogtreecommitdiff
path: root/tests/mlia/test_core_data_analysis.py
diff options
context:
space:
mode:
authorDiego Russo <diego.russo@arm.com>2022-05-30 13:34:14 +0100
committerDiego Russo <diego.russo@arm.com>2022-05-30 13:34:14 +0100
commit0efca3cadbad5517a59884576ddb90cfe7ac30f8 (patch)
treeabed6cb6fbf3c439fc8d947f505b6a53d5daeb1e /tests/mlia/test_core_data_analysis.py
parent0777092695c143c3a54680b5748287d40c914c35 (diff)
downloadmlia-0efca3cadbad5517a59884576ddb90cfe7ac30f8.tar.gz
Add MLIA codebase0.3.0-rc.1
Add MLIA codebase including sources and tests. Change-Id: Id41707559bd721edd114793618d12ccd188d8dbd
Diffstat (limited to 'tests/mlia/test_core_data_analysis.py')
-rw-r--r--tests/mlia/test_core_data_analysis.py31
1 files changed, 31 insertions, 0 deletions
diff --git a/tests/mlia/test_core_data_analysis.py b/tests/mlia/test_core_data_analysis.py
new file mode 100644
index 0000000..a782159
--- /dev/null
+++ b/tests/mlia/test_core_data_analysis.py
@@ -0,0 +1,31 @@
+# SPDX-FileCopyrightText: Copyright 2022, Arm Limited and/or its affiliates.
+# SPDX-License-Identifier: Apache-2.0
+"""Tests for module data_analysis."""
+from dataclasses import dataclass
+
+from mlia.core.common import DataItem
+from mlia.core.data_analysis import Fact
+from mlia.core.data_analysis import FactExtractor
+
+
+def test_fact_extractor() -> None:
+ """Test fact extractor."""
+
+ @dataclass
+ class SampleFact(Fact):
+ """Sample fact."""
+
+ msg: str
+
+ class SampleExtractor(FactExtractor):
+ """Sample extractor."""
+
+ def analyze_data(self, data_item: DataItem) -> None:
+ self.add_fact(SampleFact(f"Fact for {data_item}"))
+
+ extractor = SampleExtractor()
+ extractor.analyze_data(42)
+ extractor.analyze_data("some data")
+
+ facts = extractor.get_analyzed_data()
+ assert facts == [SampleFact("Fact for 42"), SampleFact("Fact for some data")]