Beispiel #1
0
class TestClientTermsApi(unittest.TestCase):
    def setUp(self):
        self.client = FullClient(apiKey=conf.API_KEY,
                                 apiServer=conf.BASE_PATH,
                                 retinaName=conf.RETINA_NAME)

    def testTerms(self):
        terms = self.client.getTerms(term="apple",
                                     getFingerprint=True,
                                     startIndex=0,
                                     maxResults=5)
        self.assertTrue(len(terms) == 1)
        self.assertTrue(terms[0].term == "apple")
        self.assertTrue("NOUN" in terms[0].pos_types)
        self.assertTrue(terms[0].df > 0.0001)
        self.assertGreater(len(terms[0].fingerprint.positions), 100)

        terms100 = self.client.getTerms("app*", startIndex=0, maxResults=100)
        self.assertEqual(len(terms100), 100)

    def testContexts(self):
        contexts = self.client.getContextsForTerm(term="apple",
                                                  getFingerprint=True,
                                                  startIndex=0,
                                                  maxResults=3)
        self.assertTrue(contexts != None)
        self.assertEqual(3, len(contexts))
        c0 = contexts[0]
        self.assertGreater(len(c0.fingerprint.positions), 100)
        self.assertTrue(conf.isString(c0.context_label))
        self.assertTrue(c0.context_id == 0)

    def testSimilarTerms(self):
        terms = self.client.getSimilarTermsForTerm(term="apple",
                                                   contextId=0,
                                                   posType="NOUN",
                                                   getFingerprint=True,
                                                   startIndex=0,
                                                   maxResults=8)
        self.assertTrue(terms != None)
        self.assertEqual(8, len(terms))
        t0 = terms[0]
        self.assertTrue(len(t0.fingerprint.positions) > 0)
        self.assertTrue(t0 != None)
        self.assertTrue("NOUN" in t0.pos_types)

    def testExceptionTerms(self):
        exceptionOccurred = False
        try:
            terms = self.client.getSimilarTermsForTerm(term="apple",
                                                       posType="wrong")
        except CorticalioException:
            exceptionOccurred = True
        self.assertTrue(exceptionOccurred)
Beispiel #2
0
class TestClientTextApi(unittest.TestCase):
    def setUp(self):
        self.client = FullClient(apiKey=conf.API_KEY,
                                 apiServer=conf.BASE_PATH,
                                 retinaName=conf.RETINA_NAME)

    def testText(self):
        fp = self.client.getFingerprintForText(inputText)
        self.assertNotEqual(fp, None)
        self.assertGreater(len(fp.positions), 500)

    def testKeywords(self):
        termList = self.client.getKeywordsForText(inputText)
        self.assertGreater(len(termList), 2)
        self.assertTrue(conf.isString(termList[0]))

    def testTokenize(self):
        sentences = self.client.getTokensForText(inputText)
        self.assertGreater(len(sentences), 10)
        self.assertTrue(conf.isString(sentences[0]))
        firstSentence = sentences[0].split(',')
        self.assertEqual(firstSentence[0], "george")
        self.assertGreater(len(firstSentence), 10)

        verbsSentences = self.client.getTokensForText(inputText, POStags="VB")
        for verb in verbsSentences[0].split(","):
            self.assertTrue("VERB" in self.client.getTerms(
                term=verb)[0].pos_types)

    def testSlices(self):
        texts = self.client.getSlicesForText(inputText,
                                             getFingerprint=True,
                                             startIndex=0,
                                             maxResults=2)
        self.assertEqual(len(texts), 2)
        self.assertEqual(texts[0].text.split(' ')[0], "George")
        self.assertGreater(len(texts[0].fingerprint.positions), 100)

    def testBulk(self):
        fingerprints = self.client.getFingerprintsForTexts(bulkTexts,
                                                           sparsity=1.0)
        self.assertEqual(len(fingerprints), 4)
        for fp in fingerprints:
            self.assertGreater(len(fp.positions), 100)

    def testLanguageDetection(self):
        self.assertEqual(
            self.client.getLanguageForText("I have a dream!").language,
            "English")
        self.assertEqual(
            self.client.getLanguageForText("Ich bin ein").wiki_url,
            "http://en.wikipedia.org/wiki/German_language")
        self.assertEqual(
            self.client.getLanguageForText(
                "Der var så dejligt ude på landet.").iso_tag, "da")
class TestClientTermsApi(unittest.TestCase):
    def setUp(self):
        self.client = FullClient(apiKey=conf.API_KEY, apiServer=conf.BASE_PATH, retinaName=conf.RETINA_NAME)

    def testTerms(self):
        terms = self.client.getTerms(term="apple", getFingerprint=True, startIndex=0, maxResults=5)
        self.assertTrue(len(terms) == 1)
        self.assertTrue(terms[0].term == "apple")
        self.assertTrue("NOUN" in terms[0].pos_types)
        self.assertTrue(terms[0].df > 0.0001)
        self.assertGreater(len(terms[0].fingerprint.positions), 100)

        terms100 = self.client.getTerms("app*", startIndex=0, maxResults=100)
        self.assertEqual(len(terms100), 100)

    def testContexts(self):
        contexts = self.client.getContextsForTerm(term="apple", getFingerprint=True, startIndex=0, maxResults=3)
        self.assertTrue(contexts != None)
        self.assertEqual(3, len(contexts))
        c0 = contexts[0]
        self.assertGreater(len(c0.fingerprint.positions), 100)
        self.assertTrue(conf.isString(c0.context_label))
        self.assertTrue(c0.context_id == 0)

    def testSimilarTerms(self):
        terms = self.client.getSimilarTermsForTerm(
            term="apple", contextId=0, posType="NOUN", getFingerprint=True, startIndex=0, maxResults=8
        )
        self.assertTrue(terms != None)
        self.assertEqual(8, len(terms))
        t0 = terms[0]
        self.assertTrue(len(t0.fingerprint.positions) > 0)
        self.assertTrue(t0 != None)
        self.assertTrue("NOUN" in t0.pos_types)

    def testExceptionTerms(self):
        exceptionOccurred = False
        try:
            terms = self.client.getSimilarTermsForTerm(term="apple", posType="wrong")
        except CorticalioException:
            exceptionOccurred = True
        self.assertTrue(exceptionOccurred)
Beispiel #4
0
class TestClientTextApi(unittest.TestCase):

    def setUp(self):
        self.client = FullClient(apiKey=conf.API_KEY, apiServer=conf.BASE_PATH, retinaName=conf.RETINA_NAME)

    def testText(self):
        fp = self.client.getFingerprintForText(inputText)
        self.assertNotEqual(fp, None)
        self.assertGreater(len(fp.positions), 500)

    def testKeywords(self):
        termList = self.client.getKeywordsForText(inputText)
        self.assertGreater(len(termList), 2)
        self.assertTrue(conf.isString(termList[0]))

    def testTokenize(self):
        sentences = self.client.getTokensForText(inputText)
        self.assertGreater(len(sentences), 10)
        self.assertTrue(conf.isString(sentences[0]))
        firstSentence = sentences[0].split(',')
        self.assertEqual(firstSentence[0], "george")
        self.assertGreater(len(firstSentence), 10)

        verbsSentences = self.client.getTokensForText(inputText, POStags="VB")
        for verb in verbsSentences[0].split(","):
            self.assertTrue("VERB" in self.client.getTerms(term=verb)[0].pos_types)

    def testSlices(self):
        texts = self.client.getSlicesForText(inputText, getFingerprint=True, startIndex=0, maxResults=2)
        self.assertEqual(len(texts), 2)
        self.assertEqual(texts[0].text.split(' ')[0], "George")
        self.assertGreater(len(texts[0].fingerprint.positions), 100)

    def testBulk(self):
        fingerprints = self.client.getFingerprintsForTexts(bulkTexts, sparsity=1.0)
        self.assertEqual(len(fingerprints), 4)
        for fp in fingerprints:
            self.assertGreater(len(fp.positions), 100)
        
    def testLanguageDetection(self):
        self.assertEqual(self.client.getLanguageForText("I have a dream!").language, "English")
        self.assertEqual(self.client.getLanguageForText("Ich bin ein").wiki_url, "http://en.wikipedia.org/wiki/German_language")
        self.assertEqual(self.client.getLanguageForText("Der var så dejligt ude på landet.").iso_tag, "da")