diff options
Diffstat (limited to 'src/argaze.test/GazeAnalysis/NGram.py')
-rw-r--r-- | src/argaze.test/GazeAnalysis/NGram.py | 46 |
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__': |