def test_calculate_hash_no_cracks(self): a = sc.NaiveStrategy([('asdf', .2), ('jjj', .1), ('pwd', .05), ('test', .01)], ['uuuu', 'iiiii']) mock_io = io.StringIO() a.output(mock_io) self.assertEqual('\n'.join(map(str, [-1, -1])) + '\n', mock_io.getvalue())
def test_calculate_hash_output(self): a = sc.NaiveStrategy([('asdf', .2), ('jjj', .1), ('pwd', .05), ('test', .01)], ['jjj', 'pwd', 'ppppppp', 'asdf', 'asdf']) mock_io = io.StringIO() a.output(mock_io) self.assertEqual('\n'.join(map(str, [4, 5, 6, 9, -1])) + '\n', mock_io.getvalue())
def test_calculate_index_map_many(self): a = sc.NaiveStrategy([('asdf', .2), ('jjj', .1)], ['asdf', 'jjj', 'pwd', 'pwd']) self.assertEqual({ 'pwd': [2, 3], 'jjj': [1], 'asdf': [0] }, a.calculate_index_map())
def test_calculate_hash_nums_many(self): a = sc.NaiveStrategy([('asdf', .2), ('jjj', .1), ('pwd', .05), ('test', .01)], ['jjj', 'pwd', 'ppppppp', 'asdf', 'asdf']) self.assertEqual([6, 9, -1, 4, 5], a.calculate_hash_nums())