Exemplo n.º 1
0
def test_search_communications():
    impl = FooSearch()
    host = 'localhost'
    port = find_port()
    timeout = 5

    terms = ['foo', 'bar']
    query = SearchQuery(type=SearchType.COMMUNICATIONS,
                        terms=[t for t in terms])

    with SubprocessSearchServiceWrapper(impl, host, port, timeout=timeout):
        transport = TSocket.TSocket(host, port)
        transport = TTransport.TFramedTransport(transport)
        protocol = TCompactProtocol.TCompactProtocolAccelerated(transport)

        cli = SearchService.Client(protocol)
        transport.open()
        res = cli.search(query)
        transport.close()

        assert res.uuid.uuidString == '12345678-1234-5678-1234-567812345678'
        assert len(res.searchResultItems) == 2
        assert res.searchResultItems[0].communicationId == 'foo'
        assert res.searchResultItems[0].score == 42.
        assert res.searchResultItems[1].communicationId == 'bar'
        assert res.searchResultItems[1].score == 42.
        assert res.metadata.tool == 'Foo Search'
Exemplo n.º 2
0
def test_annotate():
    impl = NoopAnnotateCommunicationService()
    host = 'localhost'
    port = find_port()
    timeout = 5

    comm_id = '1-2-3-4'
    comm = create_comm(comm_id)

    comm_uuid_uuidString = comm.uuid.uuidString
    comm_metadata_tool = comm.metadata.tool
    comm_metadata_timestamp = comm.metadata.timestamp

    with SubprocessAnnotateCommunicationServiceWrapper(impl, host, port,
                                                       timeout=timeout):
        transport = TSocket.TSocket(host, port)
        transport = TTransport.TFramedTransport(transport)
        protocol = TCompactProtocol.TCompactProtocolAccelerated(transport)

        cli = AnnotateCommunicationService.Client(protocol)
        transport.open()
        res = cli.annotate(comm)
        transport.close()

        assert res.id == comm_id
        assert res.uuid.uuidString == comm_uuid_uuidString
        assert res.metadata.tool == comm_metadata_tool
        assert res.metadata.timestamp == comm_metadata_timestamp
Exemplo n.º 3
0
def test_annotate():
    impl = NoopAnnotateCommunicationService()
    host = 'localhost'
    port = find_port()
    timeout = 5

    comm_id = '1-2-3-4'
    comm = create_comm(comm_id)

    comm_uuid_uuidString = comm.uuid.uuidString
    comm_metadata_tool = comm.metadata.tool
    comm_metadata_timestamp = comm.metadata.timestamp

    with SubprocessAnnotateCommunicationServiceWrapper(impl,
                                                       host,
                                                       port,
                                                       timeout=timeout):
        transport = TSocket.TSocket(host, port)
        transport = TTransport.TFramedTransport(transport)
        protocol = TCompactProtocol.TCompactProtocolAccelerated(transport)

        cli = AnnotateCommunicationService.Client(protocol)
        transport.open()
        res = cli.annotate(comm)
        transport.close()

        assert res.id == comm_id
        assert res.uuid.uuidString == comm_uuid_uuidString
        assert res.metadata.tool == comm_metadata_tool
        assert res.metadata.timestamp == comm_metadata_timestamp
Exemplo n.º 4
0
def test_search_communications():
    impl = FooSearch()
    host = 'localhost'
    port = find_port()
    timeout = 5

    terms = ['foo', 'bar']
    query = SearchQuery(type=SearchType.COMMUNICATIONS,
                        terms=[t for t in terms])

    with SubprocessSearchServiceWrapper(impl, host, port, timeout=timeout):
        transport = TSocket.TSocket(host, port)
        transport = TTransport.TFramedTransport(transport)
        protocol = TCompactProtocol.TCompactProtocolAccelerated(transport)

        cli = SearchService.Client(protocol)
        transport.open()
        res = cli.search(query)
        transport.close()

        assert res.uuid.uuidString == '12345678-1234-5678-1234-567812345678'
        assert len(res.searchResultItems) == 2
        assert res.searchResultItems[0].communicationId == 'foo'
        assert res.searchResultItems[0].score == 42.
        assert res.searchResultItems[1].communicationId == 'bar'
        assert res.searchResultItems[1].score == 42.
        assert res.metadata.tool == 'Foo Search'
Exemplo n.º 5
0
def test_relay_container_fetch_handler():
    comm_container = {'one': create_comm('one'), 'two': create_comm('two')}

    impl = CommunicationContainerFetchHandler(comm_container)
    host = 'localhost'
    port = find_port()

    with SubprocessFetchCommunicationServiceWrapper(impl, host, port):
        relay_impl = RelayFetchHandler(host, port)
        relay_host = 'localhost'
        relay_port = find_port()

        with SubprocessFetchCommunicationServiceWrapper(
                relay_impl, relay_host, relay_port):
            with FetchCommunicationClientWrapper(relay_host,
                                                 relay_port) as cli:
                assert cli.getCommunicationCount()
                ids = cli.getCommunicationIDs(0, 10)
                assert 'one' in ids
                assert 'two' in ids
                assert 'foo' not in ids
Exemplo n.º 6
0
def test_relay_container_fetch_handler():
    comm_container = {
        'one': create_comm('one'),
        'two': create_comm('two')
    }

    impl = CommunicationContainerFetchHandler(comm_container)
    host = 'localhost'
    port = find_port()

    with SubprocessFetchCommunicationServiceWrapper(impl, host, port):
        relay_impl = RelayFetchHandler(host, port)
        relay_host = 'localhost'
        relay_port = find_port()

        with SubprocessFetchCommunicationServiceWrapper(relay_impl, relay_host, relay_port):
            with FetchCommunicationClientWrapper(relay_host, relay_port) as cli:
                assert cli.getCommunicationCount()
                ids = cli.getCommunicationIDs(0, 10)
                assert 'one' in ids
                assert 'two' in ids
                assert 'foo' not in ids
Exemplo n.º 7
0
def test_fetch_backed_container():
    comm_container = {'one': create_comm('one'), 'two': create_comm('two')}

    impl = CommunicationContainerFetchHandler(comm_container)
    host = 'localhost'
    port = find_port()

    with SubprocessFetchCommunicationServiceWrapper(impl, host, port):
        cc = FetchBackedCommunicationContainer(host, port)
        assert len(cc) == 2
        assert 'one' in cc
        assert 'two' in cc
        for comm_id in cc:
            comm = cc[comm_id]
            assert validate_communication(comm)
Exemplo n.º 8
0
def test_get_metadata():
    impl = NoopAnnotateCommunicationService()
    host = 'localhost'
    port = find_port()
    timeout = 5

    with SubprocessAnnotateCommunicationServiceWrapper(impl, host, port,
                                                       timeout=timeout):
        transport = TSocket.TSocket(host, port)
        transport = TTransport.TFramedTransport(transport)
        protocol = TCompactProtocol.TCompactProtocolAccelerated(transport)

        cli = AnnotateCommunicationService.Client(protocol)
        transport.open()
        metadata = cli.getMetadata()
        transport.close()

        assert NoopAnnotateCommunicationService.METADATA_TOOL == metadata.tool
Exemplo n.º 9
0
def test_fetch_backed_container():
    comm_container = {
        'one': create_comm('one'),
        'two': create_comm('two')
    }

    impl = CommunicationContainerFetchHandler(comm_container)
    host = 'localhost'
    port = find_port()

    with SubprocessFetchCommunicationServiceWrapper(impl, host, port):
        cc = FetchBackedCommunicationContainer(host, port)
        assert len(cc) == 2
        assert 'one' in cc
        assert 'two' in cc
        for comm_id in cc:
            comm = cc[comm_id]
            assert validate_communication(comm)
Exemplo n.º 10
0
def test_get_metadata():
    impl = NoopAnnotateCommunicationService()
    host = 'localhost'
    port = find_port()
    timeout = 5

    with SubprocessAnnotateCommunicationServiceWrapper(impl,
                                                       host,
                                                       port,
                                                       timeout=timeout):
        transport = TSocket.TSocket(host, port)
        transport = TTransport.TFramedTransport(transport)
        protocol = TCompactProtocol.TCompactProtocolAccelerated(transport)

        cli = AnnotateCommunicationService.Client(protocol)
        transport.open()
        metadata = cli.getMetadata()
        transport.close()

        assert NoopAnnotateCommunicationService.METADATA_TOOL == metadata.tool