Example #1
0
 def test_worker_term_hard_handler_only_stop_MainProcess(self):
     process = current_process()
     name, process.name = process.name, 'OtherProcess'
     try:
         with patch('celery.apps.worker.active_thread_count') as c:
             c.return_value = 3
             worker = self._Worker()
             handlers = self.psig(
                 cd.install_worker_term_hard_handler, worker)
             try:
                 handlers['SIGQUIT']('SIGQUIT', object())
                 assert state.should_terminate
             finally:
                 state.should_terminate = None
         with patch('celery.apps.worker.active_thread_count') as c:
             c.return_value = 1
             worker = self._Worker()
             handlers = self.psig(
                 cd.install_worker_term_hard_handler, worker)
             try:
                 with pytest.raises(WorkerTerminate):
                     handlers['SIGQUIT']('SIGQUIT', object())
             finally:
                 state.should_terminate = None
     finally:
         process.name = name
    def testHasMediator(self):
        """FacadeTest: Test hasMediator()"""
        # Create facades
        facade1 = Facade.getInstance(self.KEY1)
        facade2 = Facade.getInstance(self.KEY2)

        # Register mediators
        mediator1 = Mediator('Mediator1', object())
        mediator2 = Mediator('Mediator2', object())

        facade1.registerMediator(mediator1)
        facade2.registerMediator(mediator2)

        self.assertEqual(True, facade1.hasMediator('Mediator1'))
        self.assertEqual(False, facade2.hasMediator('Mediator1'))

        self.assertEqual(False, facade1.hasMediator('Mediator2'))
        self.assertEqual(True, facade2.hasMediator('Mediator2'))

        # Remove mediators
        facade1.removeMediator('Mediator1')
        facade2.removeMediator('Mediator2')

        self.assertEqual(False, facade1.hasMediator('Mediator1'))
        self.assertEqual(False, facade2.hasMediator('Mediator2'))
    def test_setWarningRegistryChangeWhileIterating(self):
        """
        If the dictionary passed to L{_setWarningRegistryToNone} changes size
        partway through the process, C{_setWarningRegistryToNone} continues to
        set C{__warningregistry__} to L{None} on the rest of the values anyway.


        This might be caused by C{sys.modules} containing something that's not
        really a module and imports things on setattr.  py.test does this, as
        does L{twisted.python.deprecate.deprecatedModuleAttribute}.
        """
        d = {}

        class A(object):
            def __init__(self, key):
                self.__dict__['_key'] = key

            def __setattr__(self, value, item):
                d[self._key] = None

        key1 = object()
        key2 = object()
        d[key1] = A(key2)

        key3 = object()
        key4 = object()
        d[key3] = A(key4)

        _setWarningRegistryToNone(d)

        # If both key2 and key4 were added, then both A instanced were
        # processed.
        self.assertEqual(set([key1, key2, key3, key4]), set(d.keys()))
Example #4
0
def test_worker_factory():
    class Service(object):
        name = "service"
        foo_proxy = RpcProxy("foo_service")
        bar_proxy = RpcProxy("bar_service")

    class OtherService(object):
        pass

    # simplest case, no overrides
    instance = worker_factory(Service)
    assert isinstance(instance, Service)
    assert isinstance(instance.foo_proxy, Mock)
    assert isinstance(instance.bar_proxy, Mock)

    # no dependencies to replace
    instance = worker_factory(OtherService)
    assert isinstance(instance, OtherService)

    # override specific dependency
    bar_dependency = object()
    instance = worker_factory(Service, bar_proxy=bar_dependency)
    assert isinstance(instance, Service)
    assert isinstance(instance.foo_proxy, Mock)
    assert instance.bar_proxy is bar_dependency

    # non-applicable dependency
    with pytest.raises(ExtensionNotFound):
        worker_factory(Service, nonexist=object())
Example #5
0
 def test___getitem___hit(self):
     _APP1, _APP2 = object(), object()
     mapper = self._makeOne()
     mapper.applications.append(((None, '/foo/bar'), _APP2))
     mapper.applications.append(((None, '/foo'), _APP1))
     self.assertTrue(mapper['/foo'] is _APP1)
     self.assertTrue(mapper['/foo/bar'] is _APP2)
Example #6
0
    def test_extend(self):
        b = bytearray('abc')
        b.extend(bytearray('def'))
        b.extend('ghi')
        assert b == 'abcdefghi'
        b.extend(buffer('jkl'))
        assert b == 'abcdefghijkl'

        b = bytearray('world')
        b.extend([ord(c) for c in 'hello'])
        assert b == bytearray('worldhello')

        b = bytearray('world')
        b.extend(list('hello'))
        assert b == bytearray('worldhello')

        b = bytearray('world')
        b.extend(c for c in 'hello')
        assert b == bytearray('worldhello')

        raises(ValueError, b.extend, ['fish'])
        raises(ValueError, b.extend, [256])
        raises(TypeError, b.extend, object())
        raises(TypeError, b.extend, [object()])
        raises(TypeError, b.extend, u"unicode")
 def test_exception_when_adding_multiple_bonds_with_invalid_id(self):
     # given
     bonds = [Bond(uid=object(), particles=[uuid.uuid4()]), Bond(uid=object(), particles=[uuid.uuid4()])]
     # then
     with self.assertRaises(AttributeError):
         # when
         self.container.add_bonds(bonds)
Example #8
0
    def entry_intersects(self, e1, e2, fields=None):
        """
        :param e1: First :class:`flexget.entry.Entry`
        :param e2: Second :class:`flexget.entry.Entry`
        :param fields: List of fields which are checked
        :return: List of field names in common
        """

        if fields is None:
            fields = []

        common_fields = []

        for field in fields:
            # TODO: simplify if seems to work (useless debug)
            log.trace('checking field %s' % field)
            v1 = e1.get(field, object())
            v2 = e2.get(field, object())
            log.trace('v1: %r' % v1)
            log.trace('v2: %r' % v2)

            if v1 == v2:
                common_fields.append(field)
            else:
                log.trace('not matching')
        return common_fields
Example #9
0
 def test___ne__same_value(self):
     start = object()
     end = object()
     time_range1 = self._makeOne(start=start, end=end)
     time_range2 = self._makeOne(start=start, end=end)
     comparison_val = (time_range1 != time_range2)
     self.assertFalse(comparison_val)
Example #10
0
    def getChangeClassifications(self, objectid, branch=-1, repository=-1,
                                 project=-1, codebase=-1):
        classifications = self.classifications.setdefault(objectid, {})

        sentinel = dict(branch=object(), repository=object(),
                        project=object(), codebase=object())

        if branch != -1:
            # filter out the classifications for the requested branch
            classifications = dict(
                (k, v) for (k, v) in classifications.iteritems()
                if self.db.changes.changes.get(k, sentinel)['branch'] == branch)

        if repository != -1:
            # filter out the classifications for the requested branch
            classifications = dict(
                (k, v) for (k, v) in classifications.iteritems()
                if self.db.changes.changes.get(k, sentinel)['repository'] == repository)

        if project != -1:
            # filter out the classifications for the requested branch
            classifications = dict(
                (k, v) for (k, v) in classifications.iteritems()
                if self.db.changes.changes.get(k, sentinel)['project'] == project)

        if codebase != -1:
            # filter out the classifications for the requested branch
            classifications = dict(
                (k, v) for (k, v) in classifications.iteritems()
                if self.db.changes.changes.get(k, sentinel)['codebase'] == codebase)

        return defer.succeed(classifications)
  def test_good_configuration(self):
    self.mox.StubOutWithMock(application_configuration, 'ModuleConfiguration')
    static_backend_entry = backendinfo.BackendEntry(name='static')
    dynamic_backend_entry = backendinfo.BackendEntry(name='dynamic')
    backend_info = backendinfo.BackendInfoExternal(
        backends=[static_backend_entry, dynamic_backend_entry])
    module_config = object()
    application_configuration.ModuleConfiguration(
        '/appdir/app.yaml').AndReturn(module_config)
    application_configuration.BackendsConfiguration._parse_configuration(
        '/appdir/backends.yaml').AndReturn(backend_info)
    static_configuration = object()
    dynamic_configuration = object()
    application_configuration.BackendConfiguration(
        module_config,
        mox.IgnoreArg(),
        static_backend_entry).InAnyOrder().AndReturn(static_configuration)
    application_configuration.BackendConfiguration(
        module_config,
        mox.IgnoreArg(),
        dynamic_backend_entry).InAnyOrder().AndReturn(dynamic_configuration)

    self.mox.ReplayAll()
    config = application_configuration.BackendsConfiguration(
        '/appdir/app.yaml',
        '/appdir/backends.yaml')
    self.assertItemsEqual([static_configuration, dynamic_configuration],
                          config.get_backend_configurations())
    self.mox.VerifyAll()
 def test___ne__same_value(self):
     value = object()
     timestamp = object()
     cell1 = self._makeOne(value, timestamp)
     cell2 = self._makeOne(value, timestamp)
     comparison_val = (cell1 != cell2)
     self.assertFalse(comparison_val)
Example #13
0
    def testNoExit(self):
        result = object()
        test = object()

        class FakeRunner(object):
            def run(self, test):
                self.test = test
                return result

        runner = FakeRunner()

        oldParseArgs = unittest2.TestProgram.parseArgs
        def restoreParseArgs():
            unittest2.TestProgram.parseArgs = oldParseArgs
        unittest2.TestProgram.parseArgs = lambda *args: None
        self.addCleanup(restoreParseArgs)

        def removeTest():
            del unittest2.TestProgram.test
        unittest2.TestProgram.test = test
        self.addCleanup(removeTest)

        program = unittest2.TestProgram(testRunner=runner, exit=False, verbosity=2)

        self.assertEqual(program.result, result)
        self.assertEqual(runner.test, test)
        self.assertEqual(program.verbosity, 2)
Example #14
0
    def test_repr(self):
        args = (object(), object())
        args_repr = ', '.join(repr(a) for a in args)
        kwargs = {'a': object(), 'b': object()}
        kwargs_repr = ', '.join("%s=%r" % (k, v) for k, v in kwargs.items())
        if self.thetype is functools.partial:
            name = 'functools.partial'
        else:
            name = self.thetype.__name__

        f = self.thetype(capture)
        self.assertEqual('{}({!r})'.format(name, capture),
                         repr(f))

        f = self.thetype(capture, *args)
        self.assertEqual('{}({!r}, {})'.format(name, capture, args_repr),
                         repr(f))

        f = self.thetype(capture, **kwargs)
        self.assertEqual('{}({!r}, {})'.format(name, capture, kwargs_repr),
                         repr(f))

        f = self.thetype(capture, *args, **kwargs)
        self.assertEqual('{}({!r}, {}, {})'.format(name, capture, args_repr, kwargs_repr),
                         repr(f))
    def test_to_dict(self):
        cell1 = object()
        cell2 = object()
        cell3 = object()

        family_name1 = u'name1'
        family_name2 = u'name2'
        qual1 = b'col1'
        qual2 = b'col2'
        qual3 = b'col3'

        partial_row_data = self._makeOne(None)
        partial_row_data._cells = {
            family_name1: {
                qual1: cell1,
                qual2: cell2,
            },
            family_name2: {
                qual3: cell3,
            },
        }

        result = partial_row_data.to_dict()
        expected_result = {
            b'name1:col1': cell1,
            b'name1:col2': cell2,
            b'name2:col3': cell3,
        }
        self.assertEqual(result, expected_result)
Example #16
0
    def test_endpointConnectSuccess(self):
        """
        A client endpoint can connect and returns a deferred who gets called
        back with a protocol instance.
        """
        proto = object()
        mreactor = MemoryReactor()

        clientFactory = object()

        ep, expectedArgs, ignoredDest = self.createClientEndpoint(
            mreactor, clientFactory)

        d = ep.connect(clientFactory)

        receivedProtos = []

        def checkProto(p):
            receivedProtos.append(p)

        d.addCallback(checkProto)

        factory = self.retrieveConnectedFactory(mreactor)
        factory._onConnection.callback(proto)
        self.assertEqual(receivedProtos, [proto])

        expectedClients = self.expectedClients(mreactor)

        self.assertEqual(len(expectedClients), 1)
        self.assertConnectArgs(expectedClients[0], expectedArgs)
Example #17
0
 def test_worker_term_hard_handler_only_stop_MainProcess(self):
     try:
         import _multiprocessing  # noqa
     except ImportError:
         raise SkipTest('only relevant for multiprocessing')
     process = current_process()
     name, process.name = process.name, 'OtherProcess'
     try:
         with patch('celery.apps.worker.active_thread_count') as c:
             c.return_value = 3
             worker = self._Worker()
             handlers = self.psig(
                 cd.install_worker_term_hard_handler, worker)
             try:
                 handlers['SIGQUIT']('SIGQUIT', object())
                 self.assertTrue(state.should_terminate)
             finally:
                 state.should_terminate = False
         with patch('celery.apps.worker.active_thread_count') as c:
             c.return_value = 1
             worker = self._Worker()
             handlers = self.psig(
                 cd.install_worker_term_hard_handler, worker)
             with self.assertRaises(WorkerTerminate):
                 handlers['SIGQUIT']('SIGQUIT', object())
     finally:
         process.name = name
Example #18
0
  def testLonelyClient(self):
    host = 'nosuchhostexists'
    port = 54321
    method = 'test method'
    deadline = time.time() + _TIMEOUT
    after_deadline = deadline + _AFTER_DELAY
    metadata_tag = object()
    finish_tag = object()

    completion_queue = _low.CompletionQueue()
    channel = _low.Channel('%s:%d' % (host, port), None)
    client_call = _low.Call(channel, method, host, deadline)

    client_call.invoke(completion_queue, metadata_tag, finish_tag)
    first_event = completion_queue.get(after_deadline)
    self.assertIsNotNone(first_event)
    second_event = completion_queue.get(after_deadline)
    self.assertIsNotNone(second_event)
    kinds = [event.kind for event in (first_event, second_event)]
    self.assertItemsEqual(
        (_low.Event.Kind.METADATA_ACCEPTED, _low.Event.Kind.FINISH),
        kinds)

    self.assertIsNone(completion_queue.get(after_deadline))

    completion_queue.stop()
    stop_event = completion_queue.get(_FUTURE)
    self.assertEqual(_low.Event.Kind.STOP, stop_event.kind)
Example #19
0
    def __exp_subst__(self, exp: Expression, a: Expression, b: Expression, c: Expression, x: Variable):
        object = type(exp)
        if isinstance(exp, Quantifier):
            new_exp = self.__exp_subst__(exp.expression, a, b, c, x)
            return object(x, new_exp)
        elif isinstance(exp, Predicate) and len(exp.args) == 0:
            if exp.name == 'A':
                return copy.deepcopy(a)
            elif exp.name == 'B':
                return copy.deepcopy(b)
            elif exp.name == 'C':
                return copy.deepcopy(c)
            else:
                print("exp_subst fails")
        elif isinstance(exp, MultiOperation):
            new_args = list(exp.args)
            for i in range(0, len(exp.args)):
                new_args[i] = self.__exp_subst__(exp.args[i], a, b, c, x)

            if isinstance(exp, Unary):
                return object(new_args[0])
            elif isinstance(exp, Binary) or isinstance(exp, EqualPredicate):
                return object(new_args[0], new_args[1])
            else:
                return object(exp.name, new_args)
        else:
            print("exp_subst fails")

        return exp
Example #20
0
    def test_izip(self):
        import itertools

        it = itertools.izip()
        raises(StopIteration, it.next)

        obj_list = [object(), object(), object()]
        it = itertools.izip(obj_list)
        for x in obj_list:
            assert it.next() == (x, )
        raises(StopIteration, it.next)
        
        it = itertools.izip([1, 2, 3], [4], [5, 6])
        assert it.next() == (1, 4, 5)
        raises(StopIteration, it.next)
        
        it = itertools.izip([], [], [1], [])
        raises(StopIteration, it.next)

        # Up to one additional item may be consumed per iterable, as per python docs
        it1 = iter([1, 2, 3, 4, 5, 6])
        it2 = iter([5, 6])
        it = itertools.izip(it1, it2)
        for x in [(1, 5), (2, 6)]:
            assert it.next() == x
        raises(StopIteration, it.next)
        assert it1.next() in [3, 4]
Example #21
0
 def test_isEqualToNode(self):
     """
     L{Document.isEqualToNode} returns C{True} if and only if passed a
     L{Document} with the same C{doctype} and C{documentElement}.
     """
     # A document is equal to itself
     document = microdom.Document()
     self.assertTrue(document.isEqualToNode(document))
     # A document without a doctype or documentElement is equal to another
     # document without a doctype or documentElement.
     another = microdom.Document()
     self.assertTrue(document.isEqualToNode(another))
     # A document with a doctype is not equal to a document without a
     # doctype.
     document.doctype = self.doctype
     self.assertFalse(document.isEqualToNode(another))
     # Two documents with the same doctype are equal
     another.doctype = self.doctype
     self.assertTrue(document.isEqualToNode(another))
     # A document with a documentElement is not equal to a document without
     # a documentElement
     document.appendChild(microdom.Node(object()))
     self.assertFalse(document.isEqualToNode(another))
     # Two documents with equal documentElements are equal.
     another.appendChild(microdom.Node(object()))
     self.assertTrue(document.isEqualToNode(another))
     # Two documents with documentElements which are not equal are not
     # equal.
     document.documentElement.appendChild(microdom.Node(object()))
     self.assertFalse(document.isEqualToNode(another))
Example #22
0
 def test_datetimelike_bounded_cell(self):
     point = object()
     cell = Cell(point=object(),
                 bound=[mock.Mock(timetuple=mock.Mock()),
                        mock.Mock(timetuple=mock.Mock())])
     with self.assertRaisesRegexp(TypeError, 'bounded region for datetime'):
         cell.contains_point(point)
Example #23
0
    def create_stack(self, stack_name='test_stack'):
        temp = template_format.parse(test_template_waitcondition)
        template = parser.Template(temp)
        ctx = utils.dummy_context()
        stack = parser.Stack(ctx, stack_name, template, disable_rollback=True)

        self.stack_id = stack.store()

        self.m.StubOutWithMock(nova_keypair.KeypairConstraint, 'validate')
        nova_keypair.KeypairConstraint.validate(
            mox.IgnoreArg(), mox.IgnoreArg()).MultipleTimes().AndReturn(True)
        self.m.StubOutWithMock(image.ImageConstraint, 'validate')
        image.ImageConstraint.validate(
            mox.IgnoreArg(), mox.IgnoreArg()).MultipleTimes().AndReturn(True)

        self.m.StubOutWithMock(instance.Instance, 'handle_create')
        self.m.StubOutWithMock(instance.Instance, 'check_create_complete')
        for cookie in (object(), object()):
            instance.Instance.handle_create().AndReturn(cookie)
            instance.Instance.check_create_complete(cookie).AndReturn(True)

        id = identifier.ResourceIdentifier('test_tenant_id', stack.name,
                                           stack.id, '', 'WH')
        self.m.StubOutWithMock(wc.WaitConditionHandle, 'identifier')
        wc.WaitConditionHandle.identifier().MultipleTimes().AndReturn(id)

        self.m.StubOutWithMock(scheduler.TaskRunner, '_sleep')
        return stack
    def test_put(self):
        import operator

        table = object()
        batch = self._makeOne(table)
        batch._timestamp = timestamp = object()
        row_key = 'row-key'
        batch._row_map[row_key] = row = _MockRow()

        col1_fam = 'cf1'
        col1_qual = 'qual1'
        value1 = 'value1'
        col2_fam = 'cf2'
        col2_qual = 'qual2'
        value2 = 'value2'
        data = {col1_fam + ':' + col1_qual: value1,
                col2_fam + ':' + col2_qual: value2}

        self.assertEqual(batch._mutation_count, 0)
        self.assertEqual(row.set_cell_calls, [])
        batch.put(row_key, data)
        self.assertEqual(batch._mutation_count, 2)
        # Since the calls depend on data.keys(), the order
        # is non-deterministic.
        first_elt = operator.itemgetter(0)
        ordered_calls = sorted(row.set_cell_calls, key=first_elt)

        cell1_args = (col1_fam, col1_qual, value1)
        cell1_kwargs = {'timestamp': timestamp}
        cell2_args = (col2_fam, col2_qual, value2)
        cell2_kwargs = {'timestamp': timestamp}
        self.assertEqual(ordered_calls, [
            (cell1_args, cell1_kwargs),
            (cell2_args, cell2_kwargs),
        ])
Example #25
0
    def create_stack(self, stack_name='test_stack', params=None):
        params = params or {}
        temp = template_format.parse(test_template_metadata)
        template = parser.Template(temp)
        ctx = utils.dummy_context()
        stack = parser.Stack(ctx, stack_name, template,
                             environment.Environment(params),
                             disable_rollback=True)

        self.stack_id = stack.store()

        self.m.StubOutWithMock(nova_keypair.KeypairConstraint, 'validate')
        nova_keypair.KeypairConstraint.validate(
            mox.IgnoreArg(), mox.IgnoreArg()).MultipleTimes().AndReturn(True)
        self.m.StubOutWithMock(image.ImageConstraint, 'validate')
        image.ImageConstraint.validate(
            mox.IgnoreArg(), mox.IgnoreArg()).MultipleTimes().AndReturn(True)

        self.m.StubOutWithMock(instance.Instance, 'handle_create')
        self.m.StubOutWithMock(instance.Instance, 'check_create_complete')
        for cookie in (object(), object()):
            instance.Instance.handle_create().AndReturn(cookie)
            create_complete = instance.Instance.check_create_complete(cookie)
            create_complete.InAnyOrder().AndReturn(True)
        self.m.StubOutWithMock(instance.Instance, 'FnGetAtt')

        return stack
Example #26
0
 def test_getitem(self):
     item1 = object()
     item2 = object()
     items = ItemList(object, items=[item1, item2])
     assert_true(items[0] is item1)
     assert_true(items[1] is item2)
     assert_true(items[-1] is item2)
Example #27
0
    def test_existing_credentials_arguments_passed_on(self):
        # When re-using existing credentials, the arguments login_with
        # is called with are passed on the the __init__() method.
        os.makedirs(
            os.path.join(self.temp_dir, 'api.example.com', 'credentials'))
        credentials_file_path = os.path.join(
            self.temp_dir, 'api.example.com', 'credentials', 'app name')
        credentials = Credentials(
            'app name', consumer_secret='consumer_secret:42',
            access_token=AccessToken('access_key:84', 'access_secret:168'))
        credentials.save_to_path(credentials_file_path)

        timeout = object()
        proxy_info = object()
        version = "foo"
        launchpad = NoNetworkLaunchpad.login_with(
            'app name', launchpadlib_dir=self.temp_dir,
            service_root=SERVICE_ROOT, timeout=timeout, proxy_info=proxy_info,
            version=version)
        expected_arguments = dict(
            service_root=SERVICE_ROOT,
            timeout=timeout,
            proxy_info=proxy_info,
            version=version,
            cache=os.path.join(self.temp_dir, 'api.example.com', 'cache'))
        for key, expected in expected_arguments.items():
            actual = launchpad.passed_in_args[key]
            self.assertEqual(actual, expected)
Example #28
0
 def test_testing_resources(self):
     from pyramid.traversal import find_resource
     from pyramid.interfaces import ITraverser
     ob1 = object()
     ob2 = object()
     resources = {'/ob1':ob1, '/ob2':ob2}
     config = self._makeOne(autocommit=True)
     config.testing_resources(resources)
     adapter = config.registry.getAdapter(None, ITraverser)
     result = adapter(DummyRequest({'PATH_INFO':'/ob1'}))
     self.assertEqual(result['context'], ob1)
     self.assertEqual(result['view_name'], '')
     self.assertEqual(result['subpath'], ())
     self.assertEqual(result['traversed'], (text_('ob1'),))
     self.assertEqual(result['virtual_root'], ob1)
     self.assertEqual(result['virtual_root_path'], ())
     result = adapter(DummyRequest({'PATH_INFO':'/ob2'}))
     self.assertEqual(result['context'], ob2)
     self.assertEqual(result['view_name'], '')
     self.assertEqual(result['subpath'], ())
     self.assertEqual(result['traversed'], (text_('ob2'),))
     self.assertEqual(result['virtual_root'], ob2)
     self.assertEqual(result['virtual_root_path'], ())
     self.assertRaises(KeyError, adapter, DummyRequest({'PATH_INFO':'/ob3'}))
     try:
         config.begin()
         self.assertEqual(find_resource(None, '/ob1'), ob1)
     finally:
         config.end()
Example #29
0
    def test_nearest(self):
        nn = KDTree_3Double()

        nn_id = {}
        
        o1 = object()
        nn.add(((1,1,0), id(o1)))
        nn_id[id(o1)] = o1
        o2 = object()
        nn.add(((10,10,0), id(o2)))
        nn_id[id(o2)] = o2
        o3 = object()
        nn.add(((4.1, 4.1,0), id(o3)))
        nn_id[id(o3)] = o3
        
        expected =  o3
        actual = nn.find_nearest((2.9,2.9,0))[1]
        self.assertTrue(expected==nn_id[actual], "%s != %s"%(str(expected), str(nn_id[actual])))

        expected = o3
        actual = nn.find_nearest((6, 6,0))[1]
        self.assertTrue(expected==nn_id[actual], "%s != %s"%(str(expected), str(nn_id[actual])))

        expected = o2
        actual = nn.find_nearest((8, 9,0))[1]
        self.assertTrue(expected==nn_id[actual], "%s != %s"%(str(expected), str(nn_id[actual])))
Example #30
0
    def test_imap(self):
        import itertools

        obj_list = [object(), object(), object()]
        it = itertools.imap(None, obj_list)
        for x in obj_list:
            assert it.next() == (x, )
        raises(StopIteration, it.next)

        it = itertools.imap(None, [1, 2, 3], [4], [5, 6])
        assert it.next() == (1, 4, 5)
        raises(StopIteration, it.next)

        it = itertools.imap(None, [], [], [1], [])
        raises(StopIteration, it.next)

        it = itertools.imap(str, [0, 1, 0, 1])
        for x in ['0', '1', '0', '1']:
            assert it.next() == x
        raises(StopIteration, it.next)

        import operator
        it = itertools.imap(operator.add, [1, 2, 3], [4, 5, 6])
        for x in [5, 7, 9]:
            assert it.next() == x
        raises(StopIteration, it.next)
Example #31
0
 def test_object(self):
     obj = object()
     self.assertRoundtrip(obj)
Example #32
0
class QXmlQuery(__sip.simplewrapper):
    """
    QXmlQuery()
    QXmlQuery(QXmlQuery)
    QXmlQuery(QXmlNamePool)
    QXmlQuery(QXmlQuery.QueryLanguage, pool: QXmlNamePool = QXmlNamePool())
    """
    def bindVariable(self, *__args): # real signature unknown; restored from __doc__ with multiple overloads
        """
        bindVariable(self, QXmlName, QXmlItem)
        bindVariable(self, QXmlName, QIODevice)
        bindVariable(self, QXmlName, QXmlQuery)
        bindVariable(self, str, QXmlItem)
        bindVariable(self, str, QIODevice)
        bindVariable(self, str, QXmlQuery)
        """
        pass

    def evaluateTo(self, *__args): # real signature unknown; restored from __doc__ with multiple overloads
        """
        evaluateTo(self, QXmlResultItems)
        evaluateTo(self, QAbstractXmlReceiver) -> bool
        evaluateTo(self, QIODevice) -> bool
        """
        return False

    def evaluateToString(self): # real signature unknown; restored from __doc__
        """ evaluateToString(self) -> str """
        return ""

    def evaluateToStringList(self): # real signature unknown; restored from __doc__
        """ evaluateToStringList(self) -> List[str] """
        return []

    def initialTemplateName(self): # real signature unknown; restored from __doc__
        """ initialTemplateName(self) -> QXmlName """
        return QXmlName

    def isValid(self): # real signature unknown; restored from __doc__
        """ isValid(self) -> bool """
        return False

    def messageHandler(self): # real signature unknown; restored from __doc__
        """ messageHandler(self) -> QAbstractMessageHandler """
        return QAbstractMessageHandler

    def namePool(self): # real signature unknown; restored from __doc__
        """ namePool(self) -> QXmlNamePool """
        return QXmlNamePool

    def networkAccessManager(self): # real signature unknown; restored from __doc__
        """ networkAccessManager(self) -> QNetworkAccessManager """
        pass

    def queryLanguage(self): # real signature unknown; restored from __doc__
        """ queryLanguage(self) -> QXmlQuery.QueryLanguage """
        pass

    def setFocus(self, *__args): # real signature unknown; restored from __doc__ with multiple overloads
        """
        setFocus(self, QXmlItem)
        setFocus(self, QUrl) -> bool
        setFocus(self, QIODevice) -> bool
        setFocus(self, str) -> bool
        """
        return False

    def setInitialTemplateName(self, *__args): # real signature unknown; restored from __doc__ with multiple overloads
        """
        setInitialTemplateName(self, QXmlName)
        setInitialTemplateName(self, str)
        """
        pass

    def setMessageHandler(self, QAbstractMessageHandler): # real signature unknown; restored from __doc__
        """ setMessageHandler(self, QAbstractMessageHandler) """
        pass

    def setNetworkAccessManager(self, QNetworkAccessManager): # real signature unknown; restored from __doc__
        """ setNetworkAccessManager(self, QNetworkAccessManager) """
        pass

    def setQuery(self, *__args): # real signature unknown; restored from __doc__ with multiple overloads
        """
        setQuery(self, str, documentUri: QUrl = QUrl())
        setQuery(self, QIODevice, documentUri: QUrl = QUrl())
        setQuery(self, QUrl, baseUri: QUrl = QUrl())
        """
        pass

    def setUriResolver(self, QAbstractUriResolver): # real signature unknown; restored from __doc__
        """ setUriResolver(self, QAbstractUriResolver) """
        pass

    def uriResolver(self): # real signature unknown; restored from __doc__
        """ uriResolver(self) -> QAbstractUriResolver """
        return QAbstractUriResolver

    def __init__(self, *__args): # real signature unknown; restored from __doc__ with multiple overloads
        pass

    __weakref__ = property(lambda self: object(), lambda self, v: None, lambda self: None)  # default
    """list of weak references to the object (if defined)"""


    XQuery10 = 1
    XSLT20 = 2
Example #33
0
 def internalPointer(self): # real signature unknown; restored from __doc__
     """ internalPointer(self) -> object """
     return object()
Example #34
0
class QXmlNodeModelIndex(__sip.simplewrapper):
    """
    QXmlNodeModelIndex()
    QXmlNodeModelIndex(QXmlNodeModelIndex)
    """
    def additionalData(self): # real signature unknown; restored from __doc__
        """ additionalData(self) -> int """
        return 0

    def data(self): # real signature unknown; restored from __doc__
        """ data(self) -> int """
        return 0

    def internalPointer(self): # real signature unknown; restored from __doc__
        """ internalPointer(self) -> object """
        return object()

    def isNull(self): # real signature unknown; restored from __doc__
        """ isNull(self) -> bool """
        return False

    def model(self): # real signature unknown; restored from __doc__
        """ model(self) -> QAbstractXmlNodeModel """
        return QAbstractXmlNodeModel

    def __eq__(self, *args, **kwargs): # real signature unknown
        """ Return self==value. """
        pass

    def __ge__(self, *args, **kwargs): # real signature unknown
        """ Return self>=value. """
        pass

    def __gt__(self, *args, **kwargs): # real signature unknown
        """ Return self>value. """
        pass

    def __hash__(self, *args, **kwargs): # real signature unknown
        """ Return hash(self). """
        pass

    def __init__(self, QXmlNodeModelIndex=None): # real signature unknown; restored from __doc__ with multiple overloads
        pass

    def __le__(self, *args, **kwargs): # real signature unknown
        """ Return self<=value. """
        pass

    def __lt__(self, *args, **kwargs): # real signature unknown
        """ Return self<value. """
        pass

    def __ne__(self, *args, **kwargs): # real signature unknown
        """ Return self!=value. """
        pass

    __weakref__ = property(lambda self: object(), lambda self, v: None, lambda self: None)  # default
    """list of weak references to the object (if defined)"""


    Attribute = 1
    Comment = 2
    Document = 4
    Element = 8
    Follows = 1
    Is = 0
    Namespace = 16
    Precedes = -1
    ProcessingInstruction = 32
    Text = 64
Example #35
0
class QXmlName(__sip.simplewrapper):
    """
    QXmlName()
    QXmlName(QXmlNamePool, str, namespaceUri: str = '', prefix: str = '')
    QXmlName(QXmlName)
    """
    def fromClarkName(self, p_str, QXmlNamePool): # real signature unknown; restored from __doc__
        """ fromClarkName(str, QXmlNamePool) -> QXmlName """
        return QXmlName

    def isNCName(self, p_str): # real signature unknown; restored from __doc__
        """ isNCName(str) -> bool """
        return False

    def isNull(self): # real signature unknown; restored from __doc__
        """ isNull(self) -> bool """
        return False

    def localName(self, QXmlNamePool): # real signature unknown; restored from __doc__
        """ localName(self, QXmlNamePool) -> str """
        return ""

    def namespaceUri(self, QXmlNamePool): # real signature unknown; restored from __doc__
        """ namespaceUri(self, QXmlNamePool) -> str """
        return ""

    def prefix(self, QXmlNamePool): # real signature unknown; restored from __doc__
        """ prefix(self, QXmlNamePool) -> str """
        return ""

    def toClarkName(self, QXmlNamePool): # real signature unknown; restored from __doc__
        """ toClarkName(self, QXmlNamePool) -> str """
        return ""

    def __eq__(self, *args, **kwargs): # real signature unknown
        """ Return self==value. """
        pass

    def __ge__(self, *args, **kwargs): # real signature unknown
        """ Return self>=value. """
        pass

    def __gt__(self, *args, **kwargs): # real signature unknown
        """ Return self>value. """
        pass

    def __hash__(self, *args, **kwargs): # real signature unknown
        """ Return hash(self). """
        pass

    def __init__(self, *__args): # real signature unknown; restored from __doc__ with multiple overloads
        pass

    def __le__(self, *args, **kwargs): # real signature unknown
        """ Return self<=value. """
        pass

    def __lt__(self, *args, **kwargs): # real signature unknown
        """ Return self<value. """
        pass

    def __ne__(self, *args, **kwargs): # real signature unknown
        """ Return self!=value. """
        pass

    __weakref__ = property(lambda self: object(), lambda self, v: None, lambda self: None)  # default
    """list of weak references to the object (if defined)"""
Example #36
0
class QSourceLocation(__sip.simplewrapper):
    """
    QSourceLocation()
    QSourceLocation(QSourceLocation)
    QSourceLocation(QUrl, line: int = -1, column: int = -1)
    """
    def column(self): # real signature unknown; restored from __doc__
        """ column(self) -> int """
        return 0

    def isNull(self): # real signature unknown; restored from __doc__
        """ isNull(self) -> bool """
        return False

    def line(self): # real signature unknown; restored from __doc__
        """ line(self) -> int """
        return 0

    def setColumn(self, p_int): # real signature unknown; restored from __doc__
        """ setColumn(self, int) """
        pass

    def setLine(self, p_int): # real signature unknown; restored from __doc__
        """ setLine(self, int) """
        pass

    def setUri(self, QUrl): # real signature unknown; restored from __doc__
        """ setUri(self, QUrl) """
        pass

    def uri(self): # real signature unknown; restored from __doc__
        """ uri(self) -> QUrl """
        pass

    def __eq__(self, *args, **kwargs): # real signature unknown
        """ Return self==value. """
        pass

    def __ge__(self, *args, **kwargs): # real signature unknown
        """ Return self>=value. """
        pass

    def __gt__(self, *args, **kwargs): # real signature unknown
        """ Return self>value. """
        pass

    def __hash__(self, *args, **kwargs): # real signature unknown
        """ Return hash(self). """
        pass

    def __init__(self, *__args): # real signature unknown; restored from __doc__ with multiple overloads
        pass

    def __le__(self, *args, **kwargs): # real signature unknown
        """ Return self<=value. """
        pass

    def __lt__(self, *args, **kwargs): # real signature unknown
        """ Return self<value. """
        pass

    def __ne__(self, *args, **kwargs): # real signature unknown
        """ Return self!=value. """
        pass

    __weakref__ = property(lambda self: object(), lambda self, v: None, lambda self: None)  # default
    """list of weak references to the object (if defined)"""
Example #37
0
 def test_object_list(self):
     self.assertRoundtrip([object(), object()])
            msg['version'] = self.expect['version']
        transport._send(expect_target, {}, msg, retry=None)

        self.mox.ReplayAll()

        if self.prepare:
            client = client.prepare(**self.prepare)
            if self.double_prepare:
                client = client.prepare(**self.prepare)
        client.cast({}, 'foo')


TestCastToTarget.generate_scenarios()


_notset = object()


class TestCallTimeout(test_utils.BaseTestCase):

    scenarios = [
        ('all_none',
         dict(confval=None, ctor=None, prepare=_notset, expect=None)),
        ('confval',
         dict(confval=21.1, ctor=None, prepare=_notset, expect=21.1)),
        ('ctor',
         dict(confval=None, ctor=21.1, prepare=_notset, expect=21.1)),
        ('ctor_zero',
         dict(confval=None, ctor=0, prepare=_notset, expect=0)),
        ('prepare',
         dict(confval=None, ctor=None, prepare=21.1, expect=21.1)),
Example #39
0
class Unroller(object):
    """
 Represents the operation of unrolling a single surface.

 

 Unroller(surface: Surface)

 Unroller(brep: Brep)
 """
    def AddFollowingGeometry(self, *__args):
        """
  AddFollowingGeometry(self: Unroller,dot: TextDot)

   Adds a text dot that should be unrolled along with the surface/brep.

  

   dot: A text dot.

  AddFollowingGeometry(self: Unroller,dots: IEnumerable[TextDot])AddFollowingGeometry(self: Unroller,dotLocation: Point3d,dotText: str)

   Adds a text dot that should be unrolled along with the surface/brep.

  

   dotLocation: A dot point.

   dotText: A dot text.

  AddFollowingGeometry(self: Unroller,dotLocations: IEnumerable[Point3d],dotText: IEnumerable[str])AddFollowingGeometry(self: Unroller,point: Point)

   Adds a point that should be unrolled along with the surface/brep.

  

   point: A point.

  AddFollowingGeometry(self: Unroller,curve: Curve)

   Adds a curve that should be unrolled along with the surface/brep.

  

   curve: The curve.

  AddFollowingGeometry(self: Unroller,curves: IEnumerable[Curve])AddFollowingGeometry(self: Unroller,point: Point3d)

   Adds a point that should be unrolled along with the surface/brep.

  

   point: A point.

  AddFollowingGeometry(self: Unroller,points: IEnumerable[Point3d])
  """
        pass

    def PerformUnroll(self, unrolledCurves, unrolledPoints, unrolledDots):
        """
  PerformUnroll(self: Unroller) -> (Array[Brep],Array[Curve],Array[Point3d],Array[TextDot])

  

   Executes unrolling operations.

   Returns: An array of breps. This array can be empty.
  """
        pass

    @staticmethod
    def __new__(self, *__args):
        """
  __new__(cls: type,surface: Surface)

  __new__(cls: type,brep: Brep)
  """
        pass

    AbsoluteTolerance = property(lambda self: object(), lambda self, v: None,
                                 lambda self: None)
    """Gets or sets the absolute tolerance for the unrolling operation.

   Absolute tolerance is used in the evaluation of new entities,

   such as intersections,reprojections and splits.In the current implementation,absolute tolerance is used 

   in tessellating rails,fitting curves and pulling back trims.



Get: AbsoluteTolerance(self: Unroller) -> float



Set: AbsoluteTolerance(self: Unroller)=value

"""

    ExplodeOutput = property(lambda self: object(), lambda self, v: None,
                             lambda self: None)
    """Gets or sets a value determining whether geometry should be exploded.



Get: ExplodeOutput(self: Unroller) -> bool



Set: ExplodeOutput(self: Unroller)=value

"""

    ExplodeSpacing = property(lambda self: object(), lambda self, v: None,
                              lambda self: None)
    """Gets or sets a value determining whether spacing should be exploded.



Get: ExplodeSpacing(self: Unroller) -> float



Set: ExplodeSpacing(self: Unroller)=value

"""

    RelativeTolerance = property(lambda self: object(), lambda self, v: None,
                                 lambda self: None)
    """Gets or sets the relative tolerance for the unrolling operation.
Example #40
0
    HostChangedError,
    LocationParseError,
    MaxRetryError,
    SSLError,
    TimeoutError,
)

from .packages.ssl_match_hostname import match_hostname, CertificateError
from .packages import six
from .packages import socksipy

xrange = six.moves.xrange

log = logging.getLogger(__name__)

_Default = object()

port_by_scheme = {
    'http': HTTP_PORT,
    'https': HTTPS_PORT,
}

# Wrapped HTTPConnection object
class HTTPConnection(_HTTPConnection):
    _tunnel_host = None

    def connect(self):
        # Adds support for SOCKS wrapping
        if self._proxy_scheme in ('socks4', 'socks5'):
            # define the socks proxy type
            if self._proxy_scheme == 'socks4':
Example #41
0
MISSING = object()


class Base(object):
    """ The base class that all of the object model classes inherit from. """
    def __init__(self, cls, fields):
        """ Every object has a class. """
        self.cls = cls
        self._fields = fields

    def read_attr(self, fieldname):
        """ read field 'fieldname' out of the object """
        result = self._read_dict(fieldname)
        if result is not MISSING:
            return result
        result = self.cls._read_from_class(fieldname)
        if _is_bindable(result):
            return _make_boundmethod(result, self)
        if result is not MISSING:
            return result
        meth = self.cls._read_from_class("__getattr__")
        if meth is not MISSING:
            return meth(self, fieldname)
        raise AttributeError(fieldname)

    def write_attr(self, fieldname, value):
        """ write field 'fieldname' into the object """
        meth = self.cls._read_from_class("__setattr__")
        return meth(self, fieldname, value)
Example #42
0
 def __init__(self, proxy: Faker):
     self._proxy = proxy
     self._seen: Dict = {}
     self._sentinel = object()
Example #43
0
class PaperSizeSet(APIObject, IDisposable, IEnumerable):
    """
 A set that can contain any number of paper size objects.

 

 PaperSizeSet()
 """
    def Clear(self):
        """
  Clear(self: PaperSizeSet)

   Removes every item from the set,rendering it empty.
  """
        pass

    def Contains(self, item):
        """
  Contains(self: PaperSizeSet,item: PaperSize) -> bool

  

   Tests for the existence of an item within the set.

  

   item: The item to be searched for.

   Returns: The Contains method returns True if the item is within the set,otherwise False.
  """
        pass

    def Dispose(self):
        """ Dispose(self: PaperSizeSet,A_0: bool) """
        pass

    def Erase(self, item):
        """
  Erase(self: PaperSizeSet,item: PaperSize) -> int

  

   Removes a specified object from the set.

  

   item: The item to be erased.

   Returns: The number of items that were erased from the set.
  """
        pass

    def ForwardIterator(self):
        """
  ForwardIterator(self: PaperSizeSet) -> PaperSizeSetIterator

  

   Retrieve a forward moving iterator to the set.

   Returns: Returns a forward moving iterator to the set.
  """
        pass

    def GetEnumerator(self):
        """
  GetEnumerator(self: PaperSizeSet) -> IEnumerator

  

   Retrieve a forward moving iterator to the set.

   Returns: Returns a forward moving iterator to the set.
  """
        pass

    def Insert(self, item):
        """
  Insert(self: PaperSizeSet,item: PaperSize) -> bool

  

   Insert the specified item into the set.

  

   item: The item to be inserted into the set.

   Returns: Returns whether the item was inserted into the set.
  """
        pass

    def ReleaseManagedResources(self, *args):
        """ ReleaseManagedResources(self: APIObject) """
        pass

    def ReleaseUnmanagedResources(self, *args):
        """ ReleaseUnmanagedResources(self: PaperSizeSet) """
        pass

    def ReverseIterator(self):
        """
  ReverseIterator(self: PaperSizeSet) -> PaperSizeSetIterator

  

   Retrieve a backward moving iterator to the set.

   Returns: Returns a backward moving iterator to the set.
  """
        pass

    def __enter__(self, *args):
        """ __enter__(self: IDisposable) -> object """
        pass

    def __exit__(self, *args):
        """ __exit__(self: IDisposable,exc_type: object,exc_value: object,exc_back: object) """
        pass

    def __init__(self, *args):
        """ x.__init__(...) initializes x; see x.__class__.__doc__ for signaturex.__init__(...) initializes x; see x.__class__.__doc__ for signaturex.__init__(...) initializes x; see x.__class__.__doc__ for signature """
        pass

    def __iter__(self, *args):
        """ __iter__(self: IEnumerable) -> object """
        pass

    IsEmpty = property(lambda self: object(), lambda self, v: None,
                       lambda self: None)
    """Test to see if the set is empty.



Get: IsEmpty(self: PaperSizeSet) -> bool



"""

    Size = property(lambda self: object(), lambda self, v: None,
                    lambda self: None)
    """Returns the number of objects that are in the set.
Example #44
0
    return sentinel
  else:
    handler = _registry.get(type(tree))
    if handler:
      children, metadata = handler.to_iter(tree)
      proc_children = [_replace_nones(sentinel, child) for child in children]
      return handler.from_iter(metadata, proc_children)
    elif isinstance(tree, tuple) and hasattr(tree, '_fields'):
      # handle namedtuple as a special case, based on heuristic
      children = iter(tree)
      proc_children = [_replace_nones(sentinel, child) for child in children]
      return type(tree)(*proc_children)
    else:
      return tree

no_initializer = object()

@overload
def tree_reduce(function: Callable[[T, Any], T],
                tree: Any) -> T:
    ...

@overload
def tree_reduce(function: Callable[[T, Any], T],
                tree: Any,
                initializer: T) -> T:
    ...

def tree_reduce(function: Callable[[T, Any], T],
                tree: Any,
                initializer: Any = no_initializer) -> T:
class SocketAddress(object):
    """
 Stores serialized information from System.Net.EndPoint derived classes.

 

 SocketAddress(family: AddressFamily,size: int)

 SocketAddress(family: AddressFamily)
 """

    def Equals(self, comparand):
        """
  Equals(self: SocketAddress,comparand: object) -> bool

  

   Determines whether the specified System.Object is equal to the current System.Net.SocketAddress 

    instance.

  

  

   comparand: The specified System.Object to compare with the current System.Net.SocketAddress instance.

   Returns: true if the specified System.Object is equal to the current System.Object; otherwise,false.
  """
        pass

    def GetHashCode(self):
        """
  GetHashCode(self: SocketAddress) -> int

  

   Serves as a hash function for a particular type,suitable for use in hashing algorithms and data 

    structures like a hash table.

  

   Returns: A hash code for the current System.Object.
  """
        pass

    def ToString(self):
        """
  ToString(self: SocketAddress) -> str

  

   Returns information about the socket address.

   Returns: A string that contains information about the System.Net.SocketAddress.
  """
        pass

    def __eq__(self, *args):
        """ x.__eq__(y) <==> x==y """
        pass

    def __getitem__(self, *args):
        """ x.__getitem__(y) <==> x[y] """
        pass

    @staticmethod
    def __new__(self, family, size=None):
        """
  __new__(cls: type,family: AddressFamily)

  __new__(cls: type,family: AddressFamily,size: int)
  """
        pass

    def __ne__(self, *args):
        pass

    def __setitem__(self, *args):
        """ x.__setitem__(i,y) <==> x[i]= """
        pass

    Family = property(lambda self: object(), lambda self, v: None, lambda self: None)
    """Gets the System.Net.Sockets.AddressFamily enumerated value of the current System.Net.SocketAddress.



Get: Family(self: SocketAddress) -> AddressFamily



"""

    Size = property(lambda self: object(), lambda self, v: None, lambda self: None)
    """Gets the underlying buffer size of the System.Net.SocketAddress.
Example #46
0
"""
__docformat__ = "restructuredtext en"

import sys
import os
from os.path import splitext, join, abspath, isdir, dirname, exists, basename
from imp import find_module, load_module, C_BUILTIN, PY_COMPILED, PKG_DIRECTORY
from distutils.sysconfig import get_config_var, get_python_lib, get_python_version
from distutils.errors import DistutilsPlatformError

try:
    import zipimport
except ImportError:
    zipimport = None

ZIPFILE = object()

from logilab.common import STD_BLACKLIST, _handle_blacklist

# Notes about STD_LIB_DIR
# Consider arch-specific installation for STD_LIB_DIR definition
# :mod:`distutils.sysconfig` contains to much hardcoded values to rely on
#
# :see: `Problems with /usr/lib64 builds <http://bugs.python.org/issue1294959>`_
# :see: `FHS <http://www.pathname.com/fhs/pub/fhs-2.3.html#LIBLTQUALGTALTERNATEFORMATESSENTIAL>`_
if sys.platform.startswith('win'):
    PY_SOURCE_EXTS = ('py', 'pyw')
    PY_COMPILED_EXTS = ('dll', 'pyd')
else:
    PY_SOURCE_EXTS = ('py',)
    PY_COMPILED_EXTS = ('so',)
Example #47
0
 def __init__(self):
   self.objects = FakeGcsObjects()
   # Referenced in GcsIO.copy_batch() and GcsIO.delete_batch().
   self._http = object()
Example #48
0
  - anything that isn't special
  - things that have an 'all' key -
  - _protected - that wouldn't normally be deleted

"""

from syscore.fileutils import get_filename_for_package
import pickle
from functools import wraps
"""
This is used for items which affect an entire system, not just one instrument
"""
ALL_KEYNAME = "All_instruments"

## more useful flags
EMPTY_KEYNAME = object()
MISSING_FROM_CACHE = object()


class cacheRef(object):
    """
    References to use within caches

    """
    def __init__(self,
                 stage_name,
                 itemname,
                 instrument_code=ALL_KEYNAME,
                 flags="",
                 keyname=""):
Example #49
0
    """

    ceiling = 2**(num).bit_length()
    if num >= 0:
        s = _bltin_bin(num + ceiling).replace('1', '0', 1)
    else:
        s = _bltin_bin(~num ^ (ceiling - 1) + ceiling)
    sign = s[:3]
    digits = s[3:]
    if max_bits is not None:
        if len(digits) < max_bits:
            digits = (sign[-1] * max_bits + digits)[-max_bits:]
    return "%s %s" % (sign, digits)


_auto_null = object()


class auto:
    """
    Instances are replaced with an appropriate value in Enum class suites.
    """
    value = _auto_null


class property(DynamicClassAttribute):
    """
    This is a descriptor, used to define attributes that act differently
    when accessed through an enum member and through an enum class.
    Instance access is the same as property(), but access to an attribute
    through the enum class will instead look in the class' _member_map_ for
    def test_array_with_multiple_type(self):
        a = [-1, 0, 3.1416, "hello world", object(), b'bytes']
        b = right_shift(a[:])

        self.assertListEqual([a[-1]] + a[0:-1], b)
Example #51
0
import functools
from datetime import timedelta

from django.conf import settings
from django.db import transaction
from django_rq import get_queue, get_scheduler
from rq.compat import string_types
from rq.defaults import DEFAULT_RESULT_TTL

__all__ = ['job', 'run_task', 'config_task_and_run']

# storage for all jobs
_jobs = {}

# default value
_default = object()


def _value_or_default(value, default=None):
    return default if value is _default else value


class job:
    def __init__(self,
                 name,
                 queue='default',
                 connection=None,
                 timeout=None,
                 result_ttl=DEFAULT_RESULT_TTL,
                 ttl=None,
                 defer=None):
Example #52
0
class PriorityBoxClass(__gi.Struct):
    """
    :Constructors:
    
    ::
    
        PriorityBoxClass()
    """
    def __delattr__(self, *args, **kwargs):  # real signature unknown
        """ Implement delattr(self, name). """
        pass

    def __dir__(self, *args, **kwargs):  # real signature unknown
        """ Default dir() implementation. """
        pass

    def __eq__(self, *args, **kwargs):  # real signature unknown
        """ Return self==value. """
        pass

    def __format__(self, *args, **kwargs):  # real signature unknown
        """ Default object formatter. """
        pass

    def __getattribute__(self, *args, **kwargs):  # real signature unknown
        """ Return getattr(self, name). """
        pass

    def __ge__(self, *args, **kwargs):  # real signature unknown
        """ Return self>=value. """
        pass

    def __gt__(self, *args, **kwargs):  # real signature unknown
        """ Return self>value. """
        pass

    def __hash__(self, *args, **kwargs):  # real signature unknown
        """ Return hash(self). """
        pass

    def __init_subclass__(self, *args, **kwargs):  # real signature unknown
        """
        This method is called when a class is subclassed.
        
        The default implementation does nothing. It may be
        overridden to extend subclasses.
        """
        pass

    def __init__(self):  # real signature unknown; restored from __doc__
        pass

    def __le__(self, *args, **kwargs):  # real signature unknown
        """ Return self<=value. """
        pass

    def __lt__(self, *args, **kwargs):  # real signature unknown
        """ Return self<value. """
        pass

    @staticmethod  # known case of __new__
    def __new__(*args, **kwargs):  # real signature unknown
        """ Create and return a new object.  See help(type) for accurate signature. """
        pass

    def __ne__(self, *args, **kwargs):  # real signature unknown
        """ Return self!=value. """
        pass

    def __reduce_ex__(self, *args, **kwargs):  # real signature unknown
        """ Helper for pickle. """
        pass

    def __reduce__(self, *args, **kwargs):  # real signature unknown
        """ Helper for pickle. """
        pass

    def __repr__(self, *args, **kwargs):  # real signature unknown
        """ Return repr(self). """
        pass

    def __setattr__(self, *args, **kwargs):  # real signature unknown
        """ Implement setattr(self, name, value). """
        pass

    def __sizeof__(self, *args, **kwargs):  # real signature unknown
        """ Size of object in memory, in bytes. """
        pass

    def __str__(self, *args, **kwargs):  # real signature unknown
        """ Return str(self). """
        pass

    def __subclasshook__(self, *args, **kwargs):  # real signature unknown
        """
        Abstract classes can override this to customize issubclass().
        
        This is invoked early on by abc.ABCMeta.__subclasscheck__().
        It should return True, False or NotImplemented.  If it returns
        NotImplemented, the normal algorithm is used.  Otherwise, it
        overrides the normal algorithm (and the outcome is cached).
        """
        pass

    def __weakref__(self, *args, **kwargs):  # real signature unknown
        pass

    parent_class = property(lambda self: object(), lambda self, v: None,
                            lambda self: None)  # default

    _reserved1 = property(lambda self: object(), lambda self, v: None,
                          lambda self: None)  # default

    _reserved2 = property(lambda self: object(), lambda self, v: None,
                          lambda self: None)  # default

    _reserved3 = property(lambda self: object(), lambda self, v: None,
                          lambda self: None)  # default

    _reserved4 = property(lambda self: object(), lambda self, v: None,
                          lambda self: None)  # default

    __class__ = None  # (!) real value is "<class 'gi.types.StructMeta'>"
    __dict__ = None  # (!) real value is "mappingproxy({'__info__': StructInfo(PriorityBoxClass), '__module__': 'gi.repository.Dazzle', '__gtype__': <GType void (4)>, '__dict__': <attribute '__dict__' of 'PriorityBoxClass' objects>, '__weakref__': <attribute '__weakref__' of 'PriorityBoxClass' objects>, '__doc__': None, 'parent_class': <property object at 0x7f3b25f44360>, '_reserved1': <property object at 0x7f3b25f44450>, '_reserved2': <property object at 0x7f3b25f44540>, '_reserved3': <property object at 0x7f3b25f44630>, '_reserved4': <property object at 0x7f3b25f44720>})"
    __gtype__ = None  # (!) real value is '<GType void (4)>'
    __info__ = StructInfo(PriorityBoxClass)
Example #53
0
class ToolStripItem(Component, IComponent, IDisposable, IDropTarget,
                    ISupportOleDropSource, IArrangedElement):
    """ Represents the abstract base class that manages events and layout for all the elements that a System.Windows.Forms.ToolStrip or System.Windows.Forms.ToolStripDropDown can contain. """
    def CreateAccessibilityInstance(self, *args):
        """
  CreateAccessibilityInstance(self: ToolStripItem) -> AccessibleObject

  

   Creates a new accessibility object for the System.Windows.Forms.ToolStripItem.

   Returns: A new System.Windows.Forms.AccessibleObject for the System.Windows.Forms.ToolStripItem.
  """
        pass

    def Dispose(self):
        """
  Dispose(self: ToolStripItem,disposing: bool)

   Releases the unmanaged resources used by the System.Windows.Forms.ToolStripItem and optionally 

    releases the managed resources.

  

  

   disposing: true to release both managed and unmanaged resources; false to release only unmanaged resources.
  """
        pass

    def DoDragDrop(self, data, allowedEffects):
        """
  DoDragDrop(self: ToolStripItem,data: object,allowedEffects: DragDropEffects) -> DragDropEffects

  

   Begins a drag-and-drop operation.

  

   data: The object to be dragged.

   allowedEffects: The drag operations that can occur.

   Returns: One of the System.Windows.Forms.DragDropEffects values.
  """
        pass

    def GetCurrentParent(self):
        """
  GetCurrentParent(self: ToolStripItem) -> ToolStrip

  

   Retrieves the System.Windows.Forms.ToolStrip that is the container of the current 

    System.Windows.Forms.ToolStripItem.

  

   Returns: A System.Windows.Forms.ToolStrip that is the container of the current 

    System.Windows.Forms.ToolStripItem.
  """
        pass

    def GetPreferredSize(self, constrainingSize):
        """
  GetPreferredSize(self: ToolStripItem,constrainingSize: Size) -> Size

  

   Retrieves the size of a rectangular area into which a control can be fit.

  

   constrainingSize: The custom-sized area for a control.

   Returns: A System.Drawing.Size ordered pair,representing the width and height of a rectangle.
  """
        pass

    def GetService(self, *args):
        """
  GetService(self: Component,service: Type) -> object

  

   Returns an object that represents a service provided by the System.ComponentModel.Component or 

    by its System.ComponentModel.Container.

  

  

   service: A service provided by the System.ComponentModel.Component.

   Returns: An System.Object that represents a service provided by the System.ComponentModel.Component,or 

    null if the System.ComponentModel.Component does not provide the specified service.
  """
        pass

    def Invalidate(self, r=None):
        """
  Invalidate(self: ToolStripItem,r: Rectangle)

   Invalidates the specified region of the System.Windows.Forms.ToolStripItem by adding it to the 

    update region of the System.Windows.Forms.ToolStripItem,which is the area that will be 

    repainted at the next paint operation,and causes a paint message to be sent to the 

    System.Windows.Forms.ToolStripItem.

  

  

   r: A System.Drawing.Rectangle that represents the region to invalidate.

  Invalidate(self: ToolStripItem)

   Invalidates the entire surface of the System.Windows.Forms.ToolStripItem and causes it to be 

    redrawn.
  """
        pass

    def IsInputChar(self, *args):
        """
  IsInputChar(self: ToolStripItem,charCode: Char) -> bool

  

   Determines whether a character is an input character that the item recognizes.

  

   charCode: The character to test.

   Returns: true if the character should be sent directly to the item and not preprocessed; otherwise,false.
  """
        pass

    def IsInputKey(self, *args):
        """
  IsInputKey(self: ToolStripItem,keyData: Keys) -> bool

  

   Determines whether the specified key is a regular input key or a special key that requires 

    preprocessing.

  

  

   keyData: One of the System.Windows.Forms.Keys values.

   Returns: true if the specified key is a regular input key; otherwise,false.
  """
        pass

    def MemberwiseClone(self, *args):
        """
  MemberwiseClone(self: MarshalByRefObject,cloneIdentity: bool) -> MarshalByRefObject

  

   Creates a shallow copy of the current System.MarshalByRefObject object.

  

   cloneIdentity: false to delete the current System.MarshalByRefObject object's identity,which will cause the 

    object to be assigned a new identity when it is marshaled across a remoting boundary. A value of 

    false is usually appropriate. true to copy the current System.MarshalByRefObject object's 

    identity to its clone,which will cause remoting client calls to be routed to the remote server 

    object.

  

   Returns: A shallow copy of the current System.MarshalByRefObject object.

  MemberwiseClone(self: object) -> object

  

   Creates a shallow copy of the current System.Object.

   Returns: A shallow copy of the current System.Object.
  """
        pass

    def OnAvailableChanged(self, *args):
        """
  OnAvailableChanged(self: ToolStripItem,e: EventArgs)

   Raises the AvailableChanged event.

  

   e: An System.EventArgs that contains the event data.
  """
        pass

    def OnBackColorChanged(self, *args):
        """
  OnBackColorChanged(self: ToolStripItem,e: EventArgs)

   Raises the System.Windows.Forms.ToolStripItem.BackColorChanged event.

  

   e: An System.EventArgs that contains the event data.
  """
        pass

    def OnBoundsChanged(self, *args):
        """
  OnBoundsChanged(self: ToolStripItem)

   Occurs when the System.Windows.Forms.ToolStripItem.Bounds property changes.
  """
        pass

    def OnClick(self, *args):
        """
  OnClick(self: ToolStripItem,e: EventArgs)

   Raises the System.Windows.Forms.ToolStripItem.Click event.

  

   e: An System.EventArgs that contains the event data.
  """
        pass

    def OnDisplayStyleChanged(self, *args):
        """
  OnDisplayStyleChanged(self: ToolStripItem,e: EventArgs)

   Raises the System.Windows.Forms.ToolStripItem.DisplayStyleChanged event.

  

   e: An System.EventArgs that contains the event data.
  """
        pass

    def OnDoubleClick(self, *args):
        """
  OnDoubleClick(self: ToolStripItem,e: EventArgs)

   Raises the System.Windows.Forms.ToolStripItem.DoubleClick event.

  

   e: An System.EventArgs that contains the event data.
  """
        pass

    def OnDragDrop(self, *args):
        """
  OnDragDrop(self: ToolStripItem,dragEvent: DragEventArgs)

   Raises the System.Windows.Forms.ToolStripItem.DragDrop event.

  

   dragEvent: A System.Windows.Forms.DragEventArgs that contains the event data.
  """
        pass

    def OnDragEnter(self, *args):
        """
  OnDragEnter(self: ToolStripItem,dragEvent: DragEventArgs)

   Raises the System.Windows.Forms.ToolStripItem.DragEnter event.

  

   dragEvent: A System.Windows.Forms.DragEventArgs that contains the event data.
  """
        pass

    def OnDragLeave(self, *args):
        """
  OnDragLeave(self: ToolStripItem,e: EventArgs)

   Raises the System.Windows.Forms.ToolStripItem.DragLeave event.

  

   e: An System.EventArgs that contains the event data.
  """
        pass

    def OnDragOver(self, *args):
        """
  OnDragOver(self: ToolStripItem,dragEvent: DragEventArgs)

   Raises the System.Windows.Forms.ToolStripItem.DragOver event.

  

   dragEvent: A System.Windows.Forms.DragEventArgs that contains the event data.
  """
        pass

    def OnEnabledChanged(self, *args):
        """
  OnEnabledChanged(self: ToolStripItem,e: EventArgs)

   Raises the System.Windows.Forms.ToolStripItem.EnabledChanged event.

  

   e: An System.EventArgs that contains the event data.
  """
        pass

    def OnFontChanged(self, *args):
        """
  OnFontChanged(self: ToolStripItem,e: EventArgs)

   Raises the System.Windows.Forms.Control.FontChanged event.

  

   e: An System.EventArgs that contains the event data.
  """
        pass

    def OnForeColorChanged(self, *args):
        """
  OnForeColorChanged(self: ToolStripItem,e: EventArgs)

   Raises the System.Windows.Forms.ToolStripItem.ForeColorChanged event.

  

   e: An System.EventArgs that contains the event data.
  """
        pass

    def OnGiveFeedback(self, *args):
        """
  OnGiveFeedback(self: ToolStripItem,giveFeedbackEvent: GiveFeedbackEventArgs)

   Raises the System.Windows.Forms.ToolStripItem.GiveFeedback event.

  

   giveFeedbackEvent: A System.Windows.Forms.GiveFeedbackEventArgs that contains the event data.
  """
        pass

    def OnLayout(self, *args):
        """
  OnLayout(self: ToolStripItem,e: LayoutEventArgs)

   Raises the System.Windows.Forms.Control.Layout event.

  

   e: A System.Windows.Forms.LayoutEventArgs that contains the event data.
  """
        pass

    def OnLocationChanged(self, *args):
        """
  OnLocationChanged(self: ToolStripItem,e: EventArgs)

   Raises the System.Windows.Forms.ToolStripItem.LocationChanged event.

  

   e: An System.EventArgs that contains the event data.
  """
        pass

    def OnMouseDown(self, *args):
        """
  OnMouseDown(self: ToolStripItem,e: MouseEventArgs)

   Raises the System.Windows.Forms.ToolStripItem.MouseDown event.

  

   e: A System.Windows.Forms.MouseEventArgs that contains the event data.
  """
        pass

    def OnMouseEnter(self, *args):
        """
  OnMouseEnter(self: ToolStripItem,e: EventArgs)

   Raises the System.Windows.Forms.ToolStripItem.MouseEnter event.

  

   e: An System.EventArgs that contains the event data.
  """
        pass

    def OnMouseHover(self, *args):
        """
  OnMouseHover(self: ToolStripItem,e: EventArgs)

   Raises the System.Windows.Forms.ToolStripItem.MouseHover event.

  

   e: An System.EventArgs that contains the event data.
  """
        pass

    def OnMouseLeave(self, *args):
        """
  OnMouseLeave(self: ToolStripItem,e: EventArgs)

   Raises the System.Windows.Forms.ToolStripItem.MouseLeave event.

  

   e: An System.EventArgs that contains the event data.
  """
        pass

    def OnMouseMove(self, *args):
        """
  OnMouseMove(self: ToolStripItem,mea: MouseEventArgs)

   Raises the System.Windows.Forms.ToolStripItem.MouseMove event.

  

   mea: A System.Windows.Forms.MouseEventArgs that contains the event data.
  """
        pass

    def OnMouseUp(self, *args):
        """
  OnMouseUp(self: ToolStripItem,e: MouseEventArgs)

   Raises the System.Windows.Forms.ToolStripItem.MouseUp event.

  

   e: A System.Windows.Forms.MouseEventArgs that contains the event data.
  """
        pass

    def OnOwnerChanged(self, *args):
        """
  OnOwnerChanged(self: ToolStripItem,e: EventArgs)

   Raises the System.Windows.Forms.ToolStripItem.OwnerChanged event.

  

   e: An System.EventArgs that contains the event data.
  """
        pass

    def OnOwnerFontChanged(self, *args):
        """
  OnOwnerFontChanged(self: ToolStripItem,e: EventArgs)

   Raises the System.Windows.Forms.Control.FontChanged event when the 

    System.Windows.Forms.ToolStripItem.Font property has changed on the parent of the 

    System.Windows.Forms.ToolStripItem.

  

  

   e: A System.EventArgs that contains the event data.
  """
        pass

    def OnPaint(self, *args):
        """
  OnPaint(self: ToolStripItem,e: PaintEventArgs)

   Raises the System.Windows.Forms.ToolStripItem.Paint event.

  

   e: A System.Windows.Forms.PaintEventArgs that contains the event data.
  """
        pass

    def OnParentBackColorChanged(self, *args):
        """
  OnParentBackColorChanged(self: ToolStripItem,e: EventArgs)

   Raises the System.Windows.Forms.ToolStripItem.BackColorChanged event.

  

   e: An System.EventArgs that contains the event data.
  """
        pass

    def OnParentChanged(self, *args):
        """
  OnParentChanged(self: ToolStripItem,oldParent: ToolStrip,newParent: ToolStrip)

   Raises the System.Windows.Forms.Control.ParentChanged event.

  

   oldParent: The original parent of the item.

   newParent: The new parent of the item.
  """
        pass

    def OnParentEnabledChanged(self, *args):
        """
  OnParentEnabledChanged(self: ToolStripItem,e: EventArgs)

   Raises the System.Windows.Forms.ToolStripItem.EnabledChanged event when the 

    System.Windows.Forms.ToolStripItem.Enabled property value of the item's container changes.

  

  

   e: An System.EventArgs that contains the event data.
  """
        pass

    def OnParentForeColorChanged(self, *args):
        """
  OnParentForeColorChanged(self: ToolStripItem,e: EventArgs)

   Raises the System.Windows.Forms.ToolStripItem.ForeColorChanged event.

  

   e: An System.EventArgs that contains the event data.
  """
        pass

    def OnParentRightToLeftChanged(self, *args):
        """
  OnParentRightToLeftChanged(self: ToolStripItem,e: EventArgs)

   Raises the System.Windows.Forms.ToolStripItem.RightToLeftChanged event.

  

   e: An System.EventArgs that contains the event data.
  """
        pass

    def OnQueryContinueDrag(self, *args):
        """
  OnQueryContinueDrag(self: ToolStripItem,queryContinueDragEvent: QueryContinueDragEventArgs)

   Raises the System.Windows.Forms.ToolStripItem.QueryContinueDrag event.

  

   queryContinueDragEvent: A System.Windows.Forms.QueryContinueDragEventArgs that contains the event data.
  """
        pass

    def OnRightToLeftChanged(self, *args):
        """
  OnRightToLeftChanged(self: ToolStripItem,e: EventArgs)

   Raises the System.Windows.Forms.ToolStripItem.RightToLeftChanged event.

  

   e: An System.EventArgs that contains the event data.
  """
        pass

    def OnTextChanged(self, *args):
        """
  OnTextChanged(self: ToolStripItem,e: EventArgs)

   Raises the System.Windows.Forms.ToolStripItem.TextChanged event.

  

   e: An System.EventArgs that contains the event data.
  """
        pass

    def OnVisibleChanged(self, *args):
        """
  OnVisibleChanged(self: ToolStripItem,e: EventArgs)

   Raises the System.Windows.Forms.ToolStripItem.VisibleChanged event.

  

   e: An System.EventArgs that contains the event data.
  """
        pass

    def PerformClick(self):
        """
  PerformClick(self: ToolStripItem)

   Activates the System.Windows.Forms.ToolStripItem when it is clicked with the mouse.
  """
        pass

    def ProcessCmdKey(self, *args):
        """
  ProcessCmdKey(self: ToolStripItem,m: Message,keyData: Keys) -> (bool,Message)

  

   Processes a command key.

  

   m: A System.Windows.Forms.Message,passed by reference,that represents the window message to 

    process.

  

   keyData: One of the System.Windows.Forms.Keys values that represents the key to process.

   Returns: false in all cases.
  """
        pass

    def ProcessDialogKey(self, *args):
        """
  ProcessDialogKey(self: ToolStripItem,keyData: Keys) -> bool

  

   Processes a dialog key.

  

   keyData: One of the System.Windows.Forms.Keys values that represents the key to process.

   Returns: true if the key was processed by the item; otherwise,false.
  """
        pass

    def ProcessMnemonic(self, *args):
        """
  ProcessMnemonic(self: ToolStripItem,charCode: Char) -> bool

  

   Processes a mnemonic character.

  

   charCode: The character to process.

   Returns: true in all cases.
  """
        pass

    def ResetBackColor(self):
        """
  ResetBackColor(self: ToolStripItem)

   This method is not relevant to this class.
  """
        pass

    def ResetDisplayStyle(self):
        """
  ResetDisplayStyle(self: ToolStripItem)

   This method is not relevant to this class.
  """
        pass

    def ResetFont(self):
        """
  ResetFont(self: ToolStripItem)

   This method is not relevant to this class.
  """
        pass

    def ResetForeColor(self):
        """
  ResetForeColor(self: ToolStripItem)

   This method is not relevant to this class.
  """
        pass

    def ResetImage(self):
        """
  ResetImage(self: ToolStripItem)

   This method is not relevant to this class.
  """
        pass

    def ResetMargin(self):
        """
  ResetMargin(self: ToolStripItem)

   This method is not relevant to this class.
  """
        pass

    def ResetPadding(self):
        """
  ResetPadding(self: ToolStripItem)

   This method is not relevant to this class.
  """
        pass

    def ResetRightToLeft(self):
        """
  ResetRightToLeft(self: ToolStripItem)

   This method is not relevant to this class.
  """
        pass

    def ResetTextDirection(self):
        """
  ResetTextDirection(self: ToolStripItem)

   This method is not relevant to this class.
  """
        pass

    def Select(self):
        """
  Select(self: ToolStripItem)

   Selects the item.
  """
        pass

    def SetBounds(self, *args):
        """
  SetBounds(self: ToolStripItem,bounds: Rectangle)

   Sets the size and location of the item.

  

   bounds: A System.Drawing.Rectangle that represents the size and location of the 

    System.Windows.Forms.ToolStripItem
  """
        pass

    def SetVisibleCore(self, *args):
        """
  SetVisibleCore(self: ToolStripItem,visible: bool)

   Sets the System.Windows.Forms.ToolStripItem to the specified visible state.

  

   visible: true to make the System.Windows.Forms.ToolStripItem visible; otherwise,false.
  """
        pass

    def ToString(self):
        """
  ToString(self: ToolStripItem) -> str

   Returns: A System.String containing the name of the System.ComponentModel.Component,if any,or null if 

    the System.ComponentModel.Component is unnamed.
  """
        pass

    def __enter__(self, *args):
        """
  __enter__(self: IDisposable) -> object

  

   Provides the implementation of __enter__ for objects which implement IDisposable.
  """
        pass

    def __exit__(self, *args):
        """
  __exit__(self: IDisposable,exc_type: object,exc_value: object,exc_back: object)

   Provides the implementation of __exit__ for objects which implement IDisposable.
  """
        pass

    def __init__(self, *args):
        """ x.__init__(...) initializes x; see x.__class__.__doc__ for signaturex.__init__(...) initializes x; see x.__class__.__doc__ for signaturex.__init__(...) initializes x; see x.__class__.__doc__ for signature """
        pass

    @staticmethod
    def __new__(self, *args):  #cannot find CLR constructor
        """
  __new__(cls: type)

  __new__(cls: type,text: str,image: Image,onClick: EventHandler)

  __new__(cls: type,text: str,image: Image,onClick: EventHandler,name: str)
  """
        pass

    def __str__(self, *args):
        pass

    AccessibilityObject = property(lambda self: object(), lambda self, v: None,
                                   lambda self: None)
    """Gets the System.Windows.Forms.AccessibleObject assigned to the control.



Get: AccessibilityObject(self: ToolStripItem) -> AccessibleObject



"""

    AccessibleDefaultActionDescription = property(lambda self: object(),
                                                  lambda self, v: None,
                                                  lambda self: None)
    """Gets or sets the default action description of the control for use by accessibility client applications.



Get: AccessibleDefaultActionDescription(self: ToolStripItem) -> str



Set: AccessibleDefaultActionDescription(self: ToolStripItem)=value

"""

    AccessibleDescription = property(lambda self: object(),
                                     lambda self, v: None, lambda self: None)
    """Gets or sets the description that will be reported to accessibility client applications.



Get: AccessibleDescription(self: ToolStripItem) -> str



Set: AccessibleDescription(self: ToolStripItem)=value

"""

    AccessibleName = property(lambda self: object(), lambda self, v: None,
                              lambda self: None)
    """Gets or sets the name of the control for use by accessibility client applications.



Get: AccessibleName(self: ToolStripItem) -> str



Set: AccessibleName(self: ToolStripItem)=value

"""

    AccessibleRole = property(lambda self: object(), lambda self, v: None,
                              lambda self: None)
    """Gets or sets the accessible role of the control,which specifies the type of user interface element of the control.



Get: AccessibleRole(self: ToolStripItem) -> AccessibleRole



Set: AccessibleRole(self: ToolStripItem)=value

"""

    Alignment = property(lambda self: object(), lambda self, v: None,
                         lambda self: None)
    """Gets or sets a value indicating whether the item aligns towards the beginning or end of the System.Windows.Forms.ToolStrip.



Get: Alignment(self: ToolStripItem) -> ToolStripItemAlignment



Set: Alignment(self: ToolStripItem)=value

"""

    AllowDrop = property(lambda self: object(), lambda self, v: None,
                         lambda self: None)
    """Gets or sets a value indicating whether drag-and-drop and item reordering are handled through events that you implement.



Get: AllowDrop(self: ToolStripItem) -> bool



Set: AllowDrop(self: ToolStripItem)=value

"""

    Anchor = property(lambda self: object(), lambda self, v: None,
                      lambda self: None)
    """Gets or sets the edges of the container to which a System.Windows.Forms.ToolStripItem is bound and determines how a System.Windows.Forms.ToolStripItem  is resized with its parent.



Get: Anchor(self: ToolStripItem) -> AnchorStyles



Set: Anchor(self: ToolStripItem)=value

"""

    AutoSize = property(lambda self: object(), lambda self, v: None,
                        lambda self: None)
    """Gets or sets a value indicating whether the item is automatically sized.



Get: AutoSize(self: ToolStripItem) -> bool



Set: AutoSize(self: ToolStripItem)=value

"""

    AutoToolTip = property(lambda self: object(), lambda self, v: None,
                           lambda self: None)
    """Gets or sets a value indicating whether to use the System.Windows.Forms.ToolStripItem.Text property or the System.Windows.Forms.ToolStripItem.ToolTipText property for the System.Windows.Forms.ToolStripItem ToolTip.



Get: AutoToolTip(self: ToolStripItem) -> bool



Set: AutoToolTip(self: ToolStripItem)=value

"""

    Available = property(lambda self: object(), lambda self, v: None,
                         lambda self: None)
    """Gets or sets a value indicating whether the System.Windows.Forms.ToolStripItem should be placed on a System.Windows.Forms.ToolStrip.



Get: Available(self: ToolStripItem) -> bool



Set: Available(self: ToolStripItem)=value

"""

    BackColor = property(lambda self: object(), lambda self, v: None,
                         lambda self: None)
    """Gets or sets the background color for the item.



Get: BackColor(self: ToolStripItem) -> Color



Set: BackColor(self: ToolStripItem)=value

"""

    BackgroundImage = property(lambda self: object(), lambda self, v: None,
                               lambda self: None)
    """Gets or sets the background image displayed in the item.



Get: BackgroundImage(self: ToolStripItem) -> Image



Set: BackgroundImage(self: ToolStripItem)=value

"""

    BackgroundImageLayout = property(lambda self: object(),
                                     lambda self, v: None, lambda self: None)
    """Gets or sets the background image layout used for the System.Windows.Forms.ToolStripItem.



Get: BackgroundImageLayout(self: ToolStripItem) -> ImageLayout



Set: BackgroundImageLayout(self: ToolStripItem)=value

"""

    Bounds = property(lambda self: object(), lambda self, v: None,
                      lambda self: None)
    """Gets the size and location of the item.



Get: Bounds(self: ToolStripItem) -> Rectangle



"""

    CanRaiseEvents = property(lambda self: object(), lambda self, v: None,
                              lambda self: None)
    """Gets a value indicating whether the component can raise an event.



"""

    CanSelect = property(lambda self: object(), lambda self, v: None,
                         lambda self: None)
    """Gets a value indicating whether the item can be selected.



Get: CanSelect(self: ToolStripItem) -> bool



"""

    ContentRectangle = property(lambda self: object(), lambda self, v: None,
                                lambda self: None)
    """Gets the area where content,such as text and icons,can be placed within a System.Windows.Forms.ToolStripItem without overwriting background borders.



Get: ContentRectangle(self: ToolStripItem) -> Rectangle



"""

    DefaultAutoToolTip = property(lambda self: object(), lambda self, v: None,
                                  lambda self: None)
    """Gets a value indicating whether to display the System.Windows.Forms.ToolTip that is defined as the default.



"""

    DefaultDisplayStyle = property(lambda self: object(), lambda self, v: None,
                                   lambda self: None)
    """Gets a value indicating what is displayed on the System.Windows.Forms.ToolStripItem.



"""

    DefaultMargin = property(lambda self: object(), lambda self, v: None,
                             lambda self: None)
    """Gets the default margin of an item.



"""

    DefaultPadding = property(lambda self: object(), lambda self, v: None,
                              lambda self: None)
    """Gets the internal spacing characteristics of the item.



"""

    DefaultSize = property(lambda self: object(), lambda self, v: None,
                           lambda self: None)
    """Gets the default size of the item.



"""

    DesignMode = property(lambda self: object(), lambda self, v: None,
                          lambda self: None)
    """Gets a value that indicates whether the System.ComponentModel.Component is currently in design mode.



"""

    DismissWhenClicked = property(lambda self: object(), lambda self, v: None,
                                  lambda self: None)
    """Gets a value indicating whether items on a System.Windows.Forms.ToolStripDropDown are hidden after they are clicked.



"""

    DisplayStyle = property(lambda self: object(), lambda self, v: None,
                            lambda self: None)
    """Gets or sets whether text and images are displayed on a System.Windows.Forms.ToolStripItem.



Get: DisplayStyle(self: ToolStripItem) -> ToolStripItemDisplayStyle



Set: DisplayStyle(self: ToolStripItem)=value

"""

    Dock = property(lambda self: object(), lambda self, v: None,
                    lambda self: None)
    """Gets or sets which System.Windows.Forms.ToolStripItem borders are docked to its parent control and determines how a System.Windows.Forms.ToolStripItem is resized with its parent.



Get: Dock(self: ToolStripItem) -> DockStyle



Set: Dock(self: ToolStripItem)=value

"""

    DoubleClickEnabled = property(lambda self: object(), lambda self, v: None,
                                  lambda self: None)
    """Gets or sets a value indicating whether the System.Windows.Forms.ToolStripItem can be activated by double-clicking the mouse.



Get: DoubleClickEnabled(self: ToolStripItem) -> bool



Set: DoubleClickEnabled(self: ToolStripItem)=value

"""

    Enabled = property(lambda self: object(), lambda self, v: None,
                       lambda self: None)
    """Gets or sets a value indicating whether the parent control of the System.Windows.Forms.ToolStripItem is enabled.



Get: Enabled(self: ToolStripItem) -> bool



Set: Enabled(self: ToolStripItem)=value

"""

    Events = property(lambda self: object(), lambda self, v: None,
                      lambda self: None)
    """Gets the list of event handlers that are attached to this System.ComponentModel.Component.



"""

    Font = property(lambda self: object(), lambda self, v: None,
                    lambda self: None)
    """Gets or sets the font of the text displayed by the item.



Get: Font(self: ToolStripItem) -> Font



Set: Font(self: ToolStripItem)=value

"""

    ForeColor = property(lambda self: object(), lambda self, v: None,
                         lambda self: None)
    """Gets or sets the foreground color of the item.



Get: ForeColor(self: ToolStripItem) -> Color



Set: ForeColor(self: ToolStripItem)=value

"""

    Height = property(lambda self: object(), lambda self, v: None,
                      lambda self: None)
    """Gets or sets the height,in pixels,of a System.Windows.Forms.ToolStripItem.



Get: Height(self: ToolStripItem) -> int



Set: Height(self: ToolStripItem)=value

"""

    Image = property(lambda self: object(), lambda self, v: None,
                     lambda self: None)
    """Gets or sets the image that is displayed on a System.Windows.Forms.ToolStripItem.



Get: Image(self: ToolStripItem) -> Image



Set: Image(self: ToolStripItem)=value

"""

    ImageAlign = property(lambda self: object(), lambda self, v: None,
                          lambda self: None)
    """Gets or sets the alignment of the image on a System.Windows.Forms.ToolStripItem.



Get: ImageAlign(self: ToolStripItem) -> ContentAlignment



Set: ImageAlign(self: ToolStripItem)=value

"""

    ImageIndex = property(lambda self: object(), lambda self, v: None,
                          lambda self: None)
    """Gets or sets the index value of the image that is displayed on the item.



Get: ImageIndex(self: ToolStripItem) -> int



Set: ImageIndex(self: ToolStripItem)=value

"""

    ImageKey = property(lambda self: object(), lambda self, v: None,
                        lambda self: None)
    """Gets or sets the key accessor for the image in the System.Windows.Forms.ToolStrip.ImageList that is displayed on a System.Windows.Forms.ToolStripItem.



Get: ImageKey(self: ToolStripItem) -> str



Set: ImageKey(self: ToolStripItem)=value

"""

    ImageScaling = property(lambda self: object(), lambda self, v: None,
                            lambda self: None)
    """Gets or sets a value indicating whether an image on a System.Windows.Forms.ToolStripItem is automatically resized to fit in a container.



Get: ImageScaling(self: ToolStripItem) -> ToolStripItemImageScaling



Set: ImageScaling(self: ToolStripItem)=value

"""

    ImageTransparentColor = property(lambda self: object(),
                                     lambda self, v: None, lambda self: None)
    """Gets or sets the color to treat as transparent in a System.Windows.Forms.ToolStripItem image.



Get: ImageTransparentColor(self: ToolStripItem) -> Color



Set: ImageTransparentColor(self: ToolStripItem)=value

"""

    IsDisposed = property(lambda self: object(), lambda self, v: None,
                          lambda self: None)
    """Gets a value indicating whether the object has been disposed of.



Get: IsDisposed(self: ToolStripItem) -> bool



"""

    IsOnDropDown = property(lambda self: object(), lambda self, v: None,
                            lambda self: None)
    """Gets a value indicating whether the container of the current System.Windows.Forms.Control is a System.Windows.Forms.ToolStripDropDown.



Get: IsOnDropDown(self: ToolStripItem) -> bool



"""

    IsOnOverflow = property(lambda self: object(), lambda self, v: None,
                            lambda self: None)
    """Gets a value indicating whether the System.Windows.Forms.ToolStripItem.Placement property is set to System.Windows.Forms.ToolStripItemPlacement.Overflow.



Get: IsOnOverflow(self: ToolStripItem) -> bool



"""

    Margin = property(lambda self: object(), lambda self, v: None,
                      lambda self: None)
    """Gets or sets the space between the item and adjacent items.



Get: Margin(self: ToolStripItem) -> Padding



Set: Margin(self: ToolStripItem)=value

"""

    MergeAction = property(lambda self: object(), lambda self, v: None,
                           lambda self: None)
    """Gets or sets how child menus are merged with parent menus.



Get: MergeAction(self: ToolStripItem) -> MergeAction



Set: MergeAction(self: ToolStripItem)=value

"""

    MergeIndex = property(lambda self: object(), lambda self, v: None,
                          lambda self: None)
    """Gets or sets the position of a merged item within the current System.Windows.Forms.ToolStrip.



Get: MergeIndex(self: ToolStripItem) -> int



Set: MergeIndex(self: ToolStripItem)=value

"""

    Name = property(lambda self: object(), lambda self, v: None,
                    lambda self: None)
    """Gets or sets the name of the item.



Get: Name(self: ToolStripItem) -> str



Set: Name(self: ToolStripItem)=value

"""

    Overflow = property(lambda self: object(), lambda self, v: None,
                        lambda self: None)
    """Gets or sets whether the item is attached to the System.Windows.Forms.ToolStrip or System.Windows.Forms.ToolStripOverflowButton or can float between the two.



Get: Overflow(self: ToolStripItem) -> ToolStripItemOverflow



Set: Overflow(self: ToolStripItem)=value

"""

    Owner = property(lambda self: object(), lambda self, v: None,
                     lambda self: None)
    """Gets or sets the owner of this item.



Get: Owner(self: ToolStripItem) -> ToolStrip



Set: Owner(self: ToolStripItem)=value

"""

    OwnerItem = property(lambda self: object(), lambda self, v: None,
                         lambda self: None)
    """Gets the parent System.Windows.Forms.ToolStripItem of this System.Windows.Forms.ToolStripItem.



Get: OwnerItem(self: ToolStripItem) -> ToolStripItem



"""

    Padding = property(lambda self: object(), lambda self, v: None,
                       lambda self: None)
    """Gets or sets the internal spacing,in pixels,between the item's contents and its edges.



Get: Padding(self: ToolStripItem) -> Padding



Set: Padding(self: ToolStripItem)=value

"""

    Parent = property(lambda self: object(), lambda self, v: None,
                      lambda self: None)
    """Gets or sets the parent container of the System.Windows.Forms.ToolStripItem.



"""

    Placement = property(lambda self: object(), lambda self, v: None,
                         lambda self: None)
    """Gets the current layout of the item.



Get: Placement(self: ToolStripItem) -> ToolStripItemPlacement



"""

    Pressed = property(lambda self: object(), lambda self, v: None,
                       lambda self: None)
    """Gets a value indicating whether the state of the item is pressed.



Get: Pressed(self: ToolStripItem) -> bool



"""

    RightToLeft = property(lambda self: object(), lambda self, v: None,
                           lambda self: None)
    """Gets or sets a value indicating whether items are to be placed from right to left and text is to be written from right to left.



Get: RightToLeft(self: ToolStripItem) -> RightToLeft



Set: RightToLeft(self: ToolStripItem)=value

"""

    RightToLeftAutoMirrorImage = property(lambda self: object(),
                                          lambda self, v: None,
                                          lambda self: None)
    """Mirrors automatically the System.Windows.Forms.ToolStripItem image when the System.Windows.Forms.ToolStripItem.RightToLeft property is set to System.Windows.Forms.RightToLeft.Yes.



Get: RightToLeftAutoMirrorImage(self: ToolStripItem) -> bool



Set: RightToLeftAutoMirrorImage(self: ToolStripItem)=value

"""

    Selected = property(lambda self: object(), lambda self, v: None,
                        lambda self: None)
    """Gets a value indicating whether the item is selected.



Get: Selected(self: ToolStripItem) -> bool



"""

    ShowKeyboardCues = property(lambda self: object(), lambda self, v: None,
                                lambda self: None)
    """Gets a value indicating whether to show or hide shortcut keys.



"""

    Size = property(lambda self: object(), lambda self, v: None,
                    lambda self: None)
    """Gets or sets the size of the item.



Get: Size(self: ToolStripItem) -> Size



Set: Size(self: ToolStripItem)=value

"""

    Tag = property(lambda self: object(), lambda self, v: None,
                   lambda self: None)
    """Gets or sets the object that contains data about the item.



Get: Tag(self: ToolStripItem) -> object



Set: Tag(self: ToolStripItem)=value

"""

    Text = property(lambda self: object(), lambda self, v: None,
                    lambda self: None)
    """Gets or sets the text that is to be displayed on the item.



Get: Text(self: ToolStripItem) -> str



Set: Text(self: ToolStripItem)=value

"""

    TextAlign = property(lambda self: object(), lambda self, v: None,
                         lambda self: None)
    """Gets or sets the alignment of the text on a System.Windows.Forms.ToolStripLabel.



Get: TextAlign(self: ToolStripItem) -> ContentAlignment



Set: TextAlign(self: ToolStripItem)=value

"""

    TextDirection = property(lambda self: object(), lambda self, v: None,
                             lambda self: None)
    """Gets the orientation of text used on a System.Windows.Forms.ToolStripItem.



Get: TextDirection(self: ToolStripItem) -> ToolStripTextDirection



Set: TextDirection(self: ToolStripItem)=value

"""

    TextImageRelation = property(lambda self: object(), lambda self, v: None,
                                 lambda self: None)
    """Gets or sets the position of System.Windows.Forms.ToolStripItem text and image relative to each other.



Get: TextImageRelation(self: ToolStripItem) -> TextImageRelation



Set: TextImageRelation(self: ToolStripItem)=value

"""

    ToolTipText = property(lambda self: object(), lambda self, v: None,
                           lambda self: None)
    """Gets or sets the text that appears as a System.Windows.Forms.ToolTip for a control.



Get: ToolTipText(self: ToolStripItem) -> str



Set: ToolTipText(self: ToolStripItem)=value

"""

    Visible = property(lambda self: object(), lambda self, v: None,
                       lambda self: None)
    """Gets or sets a value indicating whether the item is displayed.



Get: Visible(self: ToolStripItem) -> bool



Set: Visible(self: ToolStripItem)=value

"""

    Width = property(lambda self: object(), lambda self, v: None,
                     lambda self: None)
    """Gets or sets the width in pixels of a System.Windows.Forms.ToolStripItem.



Get: Width(self: ToolStripItem) -> int



Set: Width(self: ToolStripItem)=value

"""

    AvailableChanged = None
    BackColorChanged = None
    Click = None
    DisplayStyleChanged = None
    DoubleClick = None
    DragDrop = None
    DragEnter = None
    DragLeave = None
    DragOver = None
    EnabledChanged = None
    ForeColorChanged = None
    GiveFeedback = None
    LocationChanged = None
    MouseDown = None
    MouseEnter = None
    MouseHover = None
    MouseLeave = None
    MouseMove = None
    MouseUp = None
    OwnerChanged = None
    Paint = None
    QueryAccessibilityHelp = None
    QueryContinueDrag = None
    RightToLeftChanged = None
    TextChanged = None
    ToolStripItemAccessibleObject = None
    VisibleChanged = None
Example #54
0
 def test_null_translate_function(self):
     template = self.from_string('${test}', translate=None)
     rendered = template(test=object())
     self.assertTrue('object' in rendered)
Example #55
0
try:
    JSONDecodeError = json.JSONDecodeError
except AttributeError:
    JSONDecodeError = ValueError

try:
    input = raw_input
except NameError:
    pass

server_url_default = "https://vast.ai/api/v0"
""" api base url (default: `https://vast.ai/api/v0`) """
api_key_file_base = "~/.vast_api_key"
""" /path/to/.vast_api_key (default: `~/.vast_api_key`) """
api_key_file = os.path.expanduser(api_key_file_base)
api_key_guard = object()

class argument(object):
    def __init__(self, *args, **kwargs):
        self.args = args
        self.kwargs = kwargs

class hidden_aliases(object):
    # just a bit of a hack
    def __init__(self, l):
        self.l = l
    def __iter__(self):
        return iter(self.l)
    def __bool__(self):
        return False
    def __nonzero__(self):
Example #56
0
 def w(self, action, data):
     self._calls[object()] = (func, action, data)
Example #57
0
except ImportError:
    ensure_future = asyncio. async

PY_34 = sys.version_info < (3, 5)
PY_35 = sys.version_info >= (3, 5)
PY_352 = sys.version_info >= (3, 5, 2)

if sys.version_info >= (3, 4, 3):
    from http.cookies import SimpleCookie  # noqa
else:
    from .backport_cookies import SimpleCookie  # noqa

__all__ = ('BasicAuth', 'create_future', 'parse_mimetype', 'Timeout',
           'ensure_future', 'noop')

sentinel = object()
Timeout = timeout
NO_EXTENSIONS = bool(os.environ.get('AIOHTTP_NO_EXTENSIONS'))

CHAR = set(chr(i) for i in range(0, 128))
CTL = set(chr(i) for i in range(0, 32)) | {
    chr(127),
}
SEPARATORS = {
    '(', ')', '<', '>', '@', ',', ';', ':', '\\', '"', '/', '[', ']', '?', '=',
    '{', '}', ' ',
    chr(9)
}
TOKEN = CHAR ^ CTL ^ SEPARATORS

if sys.version_info < (3, 5):
Example #58
0
class LRUCache:
    # Modified from http://pypi.python.org/pypi/lru/
    #最近最少使用缓存,支持过期时间设置
    __marker = object()
    __marker2 = object()

    def __init__(self, max_items, expire=0):
        # expire == 0:最近最少使用过期
        # expire >  0:最近最少使用过期 + 时间过期
        self.cache = {}
        self.key_order = collections.deque()
        self.max_items = int(max_items)
        self.expire = int(expire)
        self.lock = threading.Lock()
        if self.expire > 0:
            start_new_thread(self._cleanup, ())

    @_lock_i_lock
    def __delitem__(self, key):
        del self.cache[key]
        self.key_order.remove(key)

    def __setitem__(self, key, value):
        _ve = self.cache.get(key)
        if _ve is not None:
            if _ve[1] < 0:
                self.set(key, value, -1)
                return
        self.set(key, value)

    def __getitem__(self, key):
        value = self.get(key, self.__marker)
        if value is self.__marker:
            raise KeyError(key)
        else:
            return value

    @_lock_i_lock
    def __contains__(self, key):
        if self._expire_check(key):
            return False
        return key in self.cache

    @_lock_i_lock
    def __len__(self):
        return len(self.key_order)

    @_lock_i_lock
    def set(self, key, value, expire=None):
        # expire is False or /
        # expire <  0:永不过期,只能在这里设置
        # expire == 0:最近最少使用过期
        # expire >  0:最近最少使用过期 + 时间过期
        if expire is None:
            expire = self.expire
        elif expire is False:
            expire = -1
        else:
            expire = int(expire)
        if expire > 0:
            expire += int(mtime())
        cache = self.cache
        key_order = self.key_order
        max_items = self.max_items
        if key in cache:
            key_order.remove(key)
        key_order.appendleft(key)
        cache[key] = value, expire
        while len(key_order) > max_items:
            key = key_order.pop()
            value, expire = cache[key]
            if expire < 0:
                key_order.appendleft(key)
            else:
                del cache[key]

    @_lock_i_lock
    def get(self, key, value=None):
        if key in self.cache and not self._expire_check(key):
            self.key_order.remove(key)
            self.key_order.appendleft(key)
            value = self.cache[key][0]
        return value

    @_lock_i_lock
    def getstate(self, key):
        contains = key in self.cache
        value = self.cache.get(key)
        expired = self._expire_check(key)
        return contains, expired, value if value is None else value[0]

    def setpadding(self, key, padding=__marker2):
        #设置填充占位
        self[key] = padding

    def gettill(self, key, padding=__marker2, timeout=30):
        #获取非填充占位值
        n = 0
        timeout_interval = 0.01
        timeout = int(timeout / timeout_interval)
        value = self.get(key)
        while value is padding:
            n += 1
            if n > timeout:
                return None
            sleep(timeout_interval)
            value = self.cache[key][0]
        return value

    @_lock_i_lock
    def pop(self, key, value=__marker):
        try:
            if self._expire_check(key):
                raise KeyError(key)
            value = self.cache.pop(key)[0]
        except KeyError:
            if value is self.__marker:
                raise
        else:
            self.key_order.remove(key)
        return value

    @_lock_i_lock
    def popitem(self, last=True):
        if last:
            index = -1
            pop = self.key_order.pop
        else:
            index = 0
            pop = self.key_order.popleft
        try:
            while True:
                if not self._expire_check(index=index):
                    break
            key = pop()
        except IndexError:
            raise IndexError('popitem from empty LRUCache')
        value = self.cache.pop(key)[0]
        return key, value

    def _expire_check(self, key=__marker, index=None):
        if key is self.__marker and isinstance(index, int):
            key = self.key_order[index]
        cache = self.cache
        if key in cache:
            value, expire = cache[key]
            if expire > 0:
                now = int(mtime())
                timeleft = expire - now
                if timeleft <= 0:
                    del cache[key]
                    if isinstance(index, int):
                        del self.key_order[index]
                    else:
                        self.key_order.remove(key)
                    return True
                elif timeleft < 8:
                    #为可能存在的紧接的调用保持足够的反应时间
                    cache[key] = value, now + 8

    def _cleanup(self):
        #按每秒一次的频率循环检查并清除靠后的 l/m 个项目中的过期项目
        m = 4
        n = 1
        lock = self.lock
        key_order = self.key_order
        cache = self.cache
        clean_items = self.max_items // m
        while True:
            sleep(1)
            with lock:
                l = len(key_order)
                if l < clean_items:
                    n = 1
                    continue
                l = l // m
                if n > l:
                    n = 1
                now = int(mtime())
                while True:
                    try:
                        key = key_order[-n]
                    except IndexError:
                        break
                    expire = self.cache[key][1]
                    if expire < 0:
                        del key_order[-n]
                        key_order.appendleft(key)
                        #终止全部都是永不过期项目的极端情况
                        break
                    elif 0 < expire <= now:
                        del key_order[-n]
                        del cache[key]
                    else:
                        n += 1
                        break

    @_lock_i_lock
    def clear(self):
        self.cache.clear()
        self.key_order.clear()
Example #59
0
        """Log access.

        :param message: Request object. May be None.
        :param environ: Environment dict. May be None.
        :param response: Response object.
        :param transport: Tansport object. May be None
        :param float time: Time taken to serve the request.
        """
        try:
            self.logger.info(self._log_format % self._format_line(
                [message, environ, response, transport, time]))
        except Exception:
            self.logger.exception("Error in logging")


_marker = object()


class reify:
    """Use as a class method decorator.  It operates almost exactly like
    the Python `@property` decorator, but it puts the result of the
    method it decorates into the instance dict after the first call,
    effectively replacing the function it decorates with an instance
    variable.  It is, in Python parlance, a data descriptor.

    """
    def __init__(self, wrapped):
        self.wrapped = wrapped
        try:
            self.__doc__ = wrapped.__doc__
        except:  # pragma: no cover
Example #60
0
 def test_as_class(self):
     injected = object()
     with dependency_context() as context:
         context.inject_as_class(Thing, injected)
         retrieved = dependency(Thing)()
         expect(retrieved).to(be(injected))