← Back
Editing: test_core.cpython-38.pyc
U W[�+ � @ s� d Z ddlmZmZ eZddlZddlZddlZddl m Z ddlmZm Z ddlmZ ddlmZ G dd � d e�ZG d d� dee�ZG dd � d e�Ze� �e�� � e� �e�� � dS )z/ Tests for implementations of L{IReactorCore}. � )�division�absolute_importN)�FileDescriptor)�ReactorAlreadyRunning�ReactorNotRestartable)�Deferred)�ReactorBuilderc @ s e Zd ZdZdd� ZdS )�ObjectModelIntegrationMixinzN Helpers for tests about the object model of reactor-related objects. c C s@ | � |t� t�t|��}|D ]}| �t|t�d|f � qdS )a. Assert that the given object is an instance of a new-style class and that there are no classic classes in the inheritance hierarchy of that class. This is a beneficial condition because PyPy is better able to optimize attribute lookup on such classes. z%r is not new-styleN)ZassertIsInstance�object�inspectZgetmro�type� assertTrue� issubclass)�self�instance�mro�subclass� r �A/usr/lib/python3/dist-packages/twisted/internet/test/test_core.py�assertFullyNewStyle s �z/ObjectModelIntegrationMixin.assertFullyNewStyleN)�__name__� __module__�__qualname__�__doc__r r r r r r s r c @ s e Zd ZdZdd� ZdS )�ObjectModelIntegrationTestszH Test details of object model integration against all reactors. c C s | � � }| �|� dS )z� Checks that all reactors on a platform have method resolution order containing only new style classes. N)�buildReactorr �r �reactorr r r �test_newstyleReactor1 s z0ObjectModelIntegrationTests.test_newstyleReactorN)r r r r r r r r r r , s r c @ s� e Zd ZdZdd� Zdd� Zdd� Zdd � Zd d� Zdd � Z dd� Z dd� Zdd� Zdd� Z dd� Zdd� Zdd� Zdd� ZdS )�SystemEventTestsBuilderz{ Builder defining tests relating to L{IReactorCore.addSystemEventTrigger} and L{IReactorCore.fireSystemEvent}. c C s | � � }| �t|j� dS )zu C{reactor.stop()} raises L{RuntimeError} when called when the reactor has not been started. N)r �assertRaises�RuntimeError�stopr r r r �test_stopWhenNotStarted@ s z/SystemEventTestsBuilder.test_stopWhenNotStartedc C s0 | � � }|�|j� | �|� | �t|j� dS )zr C{reactor.stop()} raises L{RuntimeError} when called after the reactor has been stopped. N)r �callWhenRunningr"