Exemplo n.º 1
0
class TestSimilarities(unittest.TestCase):
    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)
        self._mcr = mongo_connection_record
        self._transformer = None

    def setUp(self):
        if self._transformer is None:
            self._transformer = Similarities(self._mcr)

    def test_similarity_threshold(self):
        threshold = self._transformer.similarity_threshold
        self.assertIsInstance(threshold, float, "Is returned type a float?")
        self.assertGreaterEqual(threshold, 0, "Is return value >=0?")
        self.assertLessEqual(threshold, 1.0, "Is return value <=1?")

    def test_lsi_index_mapping(self):
        self.assertIsInstance(self._transformer.lsi_index_mapping, dict, "Is return type a dict?")

    def test_calculate_similarities(self):
        import numpy
        sims = self._transformer.calculate_similarities()
        self.assertIsInstance(sims, defaultdict, "Is return type defaultdict?")
        self.assertTrue(
                all([isinstance(t, tuple) and isinstance(t[0], int) and isinstance(t[1], numpy.float32) for l in
                     sims.values()
                     for
                     t in l]),
                "Are values a list of tuples (int - LSI model index, numpy.float32 - sim threshold)?")
Exemplo n.º 2
0
 def setUp(self):
     if self._transformer is None:
         self._transformer = Similarities(self._mcr)