def setUp(self): self.cnx = get_connection(driver='mysql', host='crater', database='maay_test', user='******', password='******') self.querier = MaayQuerier(connection=self.cnx)
def setUp(self): self.cnx = get_connection(driver='mysql', host='localhost', database='maay_test', user='******', password='******') self.querier = MaayQuerier(connection=self.cnx) self.nodeId = '0'*40 self.querier.registerNode(self.nodeId, "127.0.0.1", 6789, 10)
def setUp(self): self.cnx = get_connection(driver='mysql', host='localhost', database='maay_test', user='******', password='******') self.querier = MaayQuerier(connection=self.cnx) self.nodeId = '0'*40 self.querier.registerNode(self.nodeId, "192.168.0.123", 6789, 10)
class QuerierTC(unittest.TestCase): def setUp(self): self.cnx = get_connection(driver='mysql', host='crater', database='maay_test', user='******', password='******') self.querier = MaayQuerier(connection=self.cnx) def tearDown(self): cursor = self.cnx.cursor() for table in ('document_providers', 'document_scores', 'documents', 'files', 'node_interests', 'nodes', 'words'): cursor.execute('DELETE FROM %s' % table) cursor.close() self.cnx.close() def test_execute(self): answ = self.querier._execute('SELECT * from documents') self.assertEquals(list(answ), []) def testIndexDocument(self): text = u"""Le tartuffe, de Jean-Baptiste Poquelin, dit Molière. Le petit chat est mort.""" text = normalizeText(text) digest = sha.sha(text).hexdigest() cursor = self.cnx.cursor() # At this point, database should be emtpy, so no document # should match <digest> matchingDocs = Document.selectWhere(cursor, document_id=digest) self.assertEquals(len(matchingDocs), 0) self.querier.indexDocument('/tmp/Tartuffe.txt', 'Le Tartuffe', text, len(text), 30000, digest, 'text', Document.PUBLISHED_STATE, FileInfo.CREATED_FILE_STATE) matchingDocs = Document.selectWhere(cursor, document_id=digest) self.assertEquals(len(matchingDocs), 1) self.assertEquals(matchingDocs[0].text, text) def test_normalizeText(self): self.assertEquals(normalizeText(u"ÉtùïÄç"), "etuiac")
def start_as_thread(nodeConfig, webpage): localQuerier = MaayQuerier(nodeConfig.db_host, nodeConfig.db_name, nodeConfig.user, nodeConfig.password) global indexer_thread if is_running(): print "Indexer already running", indexer_thread else: print "launching indexer" indexer_thread = Thread(target=runLocally, args=(localQuerier, [webpage],)) indexer_thread.start()
def requestAvatarId(self, creds): try: querier = MaayQuerier(host=self.dbhost, database=self.dbname, user=creds.username, password=creds.password) except MaayAuthenticationError: print "Got Authentication Error !" return failure.Failure(error.UnauthorizedLogin()) self.realm.createUserSession(creds.username, querier) return defer.succeed(creds.username)
class QuerierTC(unittest.TestCase): def setUp(self): self.cnx = get_connection(driver='mysql', host='localhost', database='maay_test', user='******', password='******') self.querier = MaayQuerier(connection=self.cnx) self.nodeId = '0' * 40 self.querier.registerNode(self.nodeId, "192.168.0.123", 6789, 10) def tearDown(self): cursor = self.cnx.cursor() for table in ('document_providers', 'document_scores', 'documents', 'files', 'node_interests', 'nodes', 'words'): cursor.execute('DELETE FROM %s' % table) cursor.close() self.querier.close() def test_execute(self): answ = self.querier._execute('SELECT * from documents') self.assertEquals(list(answ), []) def testIndexDocument(self): text = u"""Le tartuffe, de Jean-Baptiste Poquelin, dit Molière. Le petit chat est mort.""" text = normalizeText(text) digest = sha.sha(text).hexdigest() cursor = self.cnx.cursor() # At this point, database should be emtpy, so no document # should match <digest> title = 'Le Tartuffe' matchingDocs = Document.selectWhere(cursor, document_id=digest) self.assertEquals(len(matchingDocs), 0) self.querier.indexDocument( '0' * 40, FutureDocument(filename='/tmp/Tartuffe.txt', title=title, text=text, fileSize=len(text), lastModificationTime=30000, content_hash=digest, mime_type='text', state=Document.PUBLISHED_STATE, file_state=FileInfo.CREATED_FILE_STATE)) matchingDocs = Document.selectWhere(cursor, document_id=digest) self.assertEquals(len(matchingDocs), 1) self.assertEquals(matchingDocs[0].text, '%s %s' % (title, text)) def test_normalizeText(self): self.assertEquals(normalizeText(u"ÉtùïÄç"), "etuiac")
class QuerierTC(unittest.TestCase): def setUp(self): self.cnx = get_connection(driver='mysql', host='localhost', database='maay_test', user='******', password='******') self.querier = MaayQuerier(connection=self.cnx) self.nodeId = '0'*40 self.querier.registerNode(self.nodeId, "192.168.0.123", 6789, 10) def tearDown(self): cursor = self.cnx.cursor() for table in ('document_providers', 'document_scores', 'documents', 'files', 'node_interests', 'nodes', 'words'): cursor.execute('DELETE FROM %s' % table) cursor.close() self.querier.close() def test_execute(self): answ = self.querier._execute('SELECT * from documents') self.assertEquals(list(answ), []) def testIndexDocument(self): text = u"""Le tartuffe, de Jean-Baptiste Poquelin, dit Molière. Le petit chat est mort.""" text = normalizeText(text) digest = sha.sha(text).hexdigest() cursor = self.cnx.cursor() # At this point, database should be emtpy, so no document # should match <digest> title = 'Le Tartuffe' matchingDocs = Document.selectWhere(cursor, document_id=digest) self.assertEquals(len(matchingDocs), 0) self.querier.indexDocument('0'*40, FutureDocument( filename='/tmp/Tartuffe.txt', title=title, text=text, fileSize=len(text), lastModificationTime=30000, content_hash=digest, mime_type='text', state=Document.PUBLISHED_STATE, file_state=FileInfo.CREATED_FILE_STATE)) matchingDocs = Document.selectWhere(cursor, document_id=digest) self.assertEquals(len(matchingDocs), 1) self.assertEquals(matchingDocs[0].text, '%s %s' % (title, text)) def test_normalizeText(self): self.assertEquals(normalizeText(u"ÉtùïÄç"), "etuiac")
def indexJustOneFile(nodeConfig, filepath, words = None): localQuerier = MaayQuerier(nodeConfig.db_host, nodeConfig.db_name, nodeConfig.user, nodeConfig.password) thread = Thread(target=_just_one, args=(localQuerier, filepath, words)) thread.start()