コード例 #1
0
    def test_can_get_sum_of_metric(self):
        track = analytics.Track()
        track.add_observation('b', 1)
        track.add_observation('b', 2)

        _, result = track.summarize_and_reset('b')
        self.assertEqual(3, result)
コード例 #2
0
    def test_summarize_resets_metric(self):
        track = analytics.Track()
        track.add_observation('metric', 1)
        track.add_observation('metric', 2)

        track.summarize_and_reset('metric')
        _, result = track.summarize_and_reset('metric')
        self.assertEqual(None, result)
コード例 #3
0
 def get_blob_request_handler_factory(rate):
     self.blob_request_payment_rate_manager = PaymentRateManager(
         self.session.base_payment_rate_manager, rate
     )
     handlers.append(BlobRequestHandlerFactory(
         self.session.blob_manager, self.session.wallet,
         self.blob_request_payment_rate_manager, analytics.Track()
     ))
コード例 #4
0
 def test_file_is_sent_to_consumer(self):
     # TODO: also check that the expected payment values are set
     consumer = proto_helpers.StringTransport()
     test_file = StringIO.StringIO('test')
     track = analytics.Track()
     handler = BlobRequestHandler.BlobRequestHandler(
         None, None, None, track)
     handler.peer = mock.create_autospec(Peer.Peer)
     handler.currently_uploading = mock.Mock()
     handler.read_handle = test_file
     handler.send_blob_if_requested(consumer)
     while consumer.producer:
         consumer.producer.resumeProducing()
     self.assertEqual(consumer.value(), 'test')
コード例 #5
0
    def start_listening():
        logging.debug("Starting the server protocol")
        query_handler_factories = {
            CryptBlobInfoQueryHandlerFactory(stream_info_manager, session.wallet, session.payment_rate_manager):
            True,
            BlobRequestHandlerFactory(session.blob_manager, session.wallet, session.payment_rate_manager,
                                      analytics.Track()):
            True,
            session.wallet.get_wallet_info_query_handler_factory():
            True,
        }

        server_factory = ServerProtocolFactory(session.rate_limiter,
                                               query_handler_factories,
                                               session.peer_manager)
        server_port.append(reactor.listenTCP(5553, server_factory))
        logging.debug("Server protocol has started")
コード例 #6
0
ファイル: test_misc.py プロジェクト: tml/lbry
 def start_server(self):
     session = self.session
     query_handler_factories = {
         1: BlobAvailabilityHandlerFactory(session.blob_manager),
         2: BlobRequestHandlerFactory(
             session.blob_manager, session.wallet,
             session.payment_rate_manager,
             analytics.Track()),
         3: session.wallet.get_wallet_info_query_handler_factory(),
     }
     server_factory = ServerProtocolFactory(session.rate_limiter,
                                            query_handler_factories,
                                            session.peer_manager)
     self.server_port = self.reactor.listenTCP(5553, server_factory)
     logging.debug("Started listening")
     self.kill_check = task.LoopingCall(self.check_for_kill)
     self.kill_check.start(1.0)
     return True
コード例 #7
0
    def start_server():

        server_port = None

        query_handler_factories = {
            1:
            BlobAvailabilityHandlerFactory(session.blob_manager),
            2:
            BlobRequestHandlerFactory(session.blob_manager, session.wallet,
                                      session.payment_rate_manager,
                                      analytics.Track()),
            3:
            session.wallet.get_wallet_info_query_handler_factory(),
        }

        server_factory = ServerProtocolFactory(session.rate_limiter,
                                               query_handler_factories,
                                               session.peer_manager)

        server_port = reactor.listenTCP(peer_port, server_factory)
        logging.debug("Started listening")

        def kill_server():
            ds = []
            ds.append(session.shut_down())
            ds.append(lbry_file_manager.stop())
            if server_port:
                ds.append(server_port.stopListening())
            kill_check.stop()
            dead_event.set()
            dl = defer.DeferredList(ds)
            dl.addCallback(lambda _: reactor.stop())
            return dl

        def check_for_kill():
            if kill_event.is_set():
                kill_server()

        kill_check = task.LoopingCall(check_for_kill)
        kill_check.start(1.0)
        ready_event.set()
        logging.debug("set the ready event")
コード例 #8
0
 def test_empty_summarize_is_None(self):
     track = analytics.Track()
     _, result = track.summarize_and_reset('a')
     self.assertEqual(None, result)