aboutsummaryrefslogtreecommitdiff
path: root/src/argaze.test/GazeAnalysis/NGram.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/argaze.test/GazeAnalysis/NGram.py')
-rw-r--r--src/argaze.test/GazeAnalysis/NGram.py46
1 files changed, 29 insertions, 17 deletions
diff --git a/src/argaze.test/GazeAnalysis/NGram.py b/src/argaze.test/GazeAnalysis/NGram.py
index 9608b90..15e1319 100644
--- a/src/argaze.test/GazeAnalysis/NGram.py
+++ b/src/argaze.test/GazeAnalysis/NGram.py
@@ -21,36 +21,48 @@ class TestAOIScanPathAnalyzer(unittest.TestCase):
def test_analyze(self):
"""Test analyze method."""
- ngram_analyzer = NGram.AOIScanPathAnalyzer()
-
aoi_scan_path = GazeFeaturesTest.build_aoi_scan_path(['Foo', 'Bar', 'Shu'], ['Bar', 'Shu', 'Foo', 'Bar', 'Shu', 'Foo'])
# Check aoi scan path
self.assertEqual(len(aoi_scan_path), 6)
- ngram_analysis = ngram_analyzer.analyze(aoi_scan_path, 2)
+ ngram_analyzer = NGram.AOIScanPathAnalyzer(n_min=2, n_max=2)
+ ngram_analyzer.analyze(aoi_scan_path)
# Check 2-gram analysis
- self.assertEqual(len(ngram_analysis), 3)
- self.assertEqual(ngram_analysis[('Bar', 'Shu')], 2)
- self.assertEqual(ngram_analysis[('Shu', 'Foo')], 2)
- self.assertEqual(ngram_analysis[('Foo', 'Bar')], 1)
+ self.assertEqual(len(ngram_analyzer.ngrams_count), 1)
+ self.assertEqual(len(ngram_analyzer.ngrams_count[2]), 3)
+ self.assertEqual(ngram_analyzer.ngrams_count[2][('Bar', 'Shu')], 2)
+ self.assertEqual(ngram_analyzer.ngrams_count[2][('Shu', 'Foo')], 2)
+ self.assertEqual(ngram_analyzer.ngrams_count[2][('Foo', 'Bar')], 1)
- ngram_analysis = ngram_analyzer.analyze(aoi_scan_path, 3)
+ ngram_analyzer = NGram.AOIScanPathAnalyzer(n_min=3, n_max=3)
+ ngram_analyzer.analyze(aoi_scan_path)
# Check 3-gram analysis
- self.assertEqual(len(ngram_analysis), 3)
- self.assertEqual(ngram_analysis[('Bar', 'Shu', 'Foo')], 2)
- self.assertEqual(ngram_analysis[('Shu', 'Foo', 'Bar')], 1)
- self.assertEqual(ngram_analysis[('Foo', 'Bar', 'Shu')], 1)
+ self.assertEqual(len(ngram_analyzer.ngrams_count), 1)
+ self.assertEqual(len(ngram_analyzer.ngrams_count[3]), 3)
+ self.assertEqual(ngram_analyzer.ngrams_count[3][('Bar', 'Shu', 'Foo')], 2)
+ self.assertEqual(ngram_analyzer.ngrams_count[3][('Shu', 'Foo', 'Bar')], 1)
+ self.assertEqual(ngram_analyzer.ngrams_count[3][('Foo', 'Bar', 'Shu')], 1)
- ngram_analysis = ngram_analyzer.analyze(aoi_scan_path, 4)
+ ngram_analyzer = NGram.AOIScanPathAnalyzer(n_min=2, n_max=4)
+ ngram_analyzer.analyze(aoi_scan_path)
# Check 4-gram analysis
- self.assertEqual(len(ngram_analysis), 3)
- self.assertEqual(ngram_analysis[('Bar', 'Shu', 'Foo', 'Bar')], 1)
- self.assertEqual(ngram_analysis[('Shu', 'Foo', 'Bar', 'Shu')], 1)
- self.assertEqual(ngram_analysis[('Foo', 'Bar', 'Shu', 'Foo')], 1)
+ self.assertEqual(len(ngram_analyzer.ngrams_count), 3)
+ self.assertEqual(len(ngram_analyzer.ngrams_count[2]), 3)
+ self.assertEqual(len(ngram_analyzer.ngrams_count[3]), 3)
+ self.assertEqual(len(ngram_analyzer.ngrams_count[4]), 3)
+ self.assertEqual(ngram_analyzer.ngrams_count[2][('Bar', 'Shu')], 2)
+ self.assertEqual(ngram_analyzer.ngrams_count[2][('Shu', 'Foo')], 2)
+ self.assertEqual(ngram_analyzer.ngrams_count[2][('Foo', 'Bar')], 1)
+ self.assertEqual(ngram_analyzer.ngrams_count[3][('Bar', 'Shu', 'Foo')], 2)
+ self.assertEqual(ngram_analyzer.ngrams_count[3][('Shu', 'Foo', 'Bar')], 1)
+ self.assertEqual(ngram_analyzer.ngrams_count[3][('Foo', 'Bar', 'Shu')], 1)
+ self.assertEqual(ngram_analyzer.ngrams_count[4][('Bar', 'Shu', 'Foo', 'Bar')], 1)
+ self.assertEqual(ngram_analyzer.ngrams_count[4][('Shu', 'Foo', 'Bar', 'Shu')], 1)
+ self.assertEqual(ngram_analyzer.ngrams_count[4][('Foo', 'Bar', 'Shu', 'Foo')], 1)
if __name__ == '__main__':