Tests for MessageSet.

Method test_equalityIterationAndAddition Test the following properties of MessageSet addition and equality:
Method test_lengthWithWildcardRange A MessageSet that has a range that ends with None raises a TypeError when its length is requested.
Method test_reprSanity MessageSet.__repr__ does not raise an exception
Method test_stringRepresentationWithWildcards In a MessageSet, in the presence of wildcards, if the highest message id is known, the wildcard should get replaced by that high value.
Method test_stringRepresentationWithInversion No summary
Method test_createWithSingleMessageNumber No summary
Method test_createWithSequence No summary
Method test_createWithSingleWildcard No summary
Method test_setLastSingleWildcard Setting MessageSet.last replaces None, representing *, with that number, making that MessageSet iterable.
Method test_setLastWithWildcardRange Setting MessageSet.last replaces None in all ranges.
Method test_setLastTwiceFails MessageSet.last cannot be set twice.
Method test_lastOverridesNoneInAdd No summary
Method test_getLast Accessing MessageSet.last returns the last value.
Method test_extend No summary
Method test_contains A MessageSet contains a number if the number falls within one of its ranges, and raises TypeError if any range contains None.
Method test_rangesMerged Adding a sequence of message numbers to a MessageSet that begins or ends immediately before or after an existing sequence in that MessageSet, or overlaps one, merges the two.
Method test_seq_rangeExamples

Test the seq-range examples from Section 9, "Formal Syntax" of RFC 3501:


Method test_sequence_setExamples

Test the sequence-set examples from Section 9, "Formal Syntax" of RFC 3501. In particular, MessageSet reorders and coalesces overlaps:


Inherited from SynchronousTestCase:

Instance Variable failureException An exception class, defaulting to FailTest. If the test method raises this exception, it will be reported as a failure, rather than an exception. All of the assertion methods raise this if the assertion fails.
Instance Variable skip None or a string explaining why this test is to be skipped. If defined, the test will not be run. Instead, it will be reported to the result object as 'skipped' (if the TestResult supports skipping).
Instance Variable todo None, a string or a tuple of (errors, reason) where errors is either an exception class or an iterable of exception classes, and reason is a string. See Todo or makeTodo for more information.
Instance Variable suppress None or a list of tuples of (args, kwargs) to be passed to warnings.filterwarnings. Use these to suppress warnings raised in a test. Useful for testing deprecated code. See also util.suppress.
Method __init__ Undocumented
Method __eq__ No summary
Method __ne__ Undocumented
Method __hash__ Undocumented
Method shortDescription Undocumented
Method getSkip No summary
Method getTodo No summary
Method runTest If no methodName argument is passed to the constructor, run will treat this method as the thing with the actual test inside.
Method run Run the test case, storing the results in result.
Method addCleanup Add the given function to a list of functions to be called after the test has run, but before tearDown.
Method patch Monkey patch an object for the duration of the test.
Method flushLoggedErrors Remove stored errors received from the log.
Method flushWarnings Remove stored warnings from the list of captured warnings and return them.
Method callDeprecated Call a function that should have been deprecated at a specific version and in favor of a specific alternative, and assert that it was thusly deprecated.
Method mktemp Create a new path name which can be used for a new file or directory.
Method _getSuppress No summary
Method _getSkipReason Return the reason to use for skipping a test method.
Method _run Run a single method, either a test method or fixture.
Method _runFixturesAndTest Run setUp, a test method, test cleanups, and tearDown.
Method _runCleanups Synchronously run any cleanups which have been added.
Method _installObserver Undocumented
Method _removeObserver Undocumented

Inherited from _Assertions (via SynchronousTestCase):

Method fail Absolutely fail the test. Do not pass go, do not collect $200.
Method assertFalse Fail the test if condition evaluates to True.
Method assertTrue Fail the test if condition evaluates to False.
Method assertRaises Fail the test unless calling the function f with the given args and kwargs raises exception. The failure will report the traceback and call stack of the unexpected exception.
Method assertEqual Fail the test if first and second are not equal.
Method assertIs Fail the test if first is not second. This is an obect-identity-equality test, not an object equality (i.e. __eq__) test.
Method assertIsNot Fail the test if first is second. This is an obect-identity-equality test, not an object equality (i.e. __eq__) test.
Method assertNotEqual Fail the test if first == second.
Method assertIn Fail the test if containee is not found in container.
Method assertNotIn Fail the test if containee is found in container.
Method assertNotAlmostEqual Fail if the two objects are equal as determined by their difference rounded to the given number of decimal places (default 7) and comparing to zero.
Method assertAlmostEqual Fail if the two objects are unequal as determined by their difference rounded to the given number of decimal places (default 7) and comparing to zero.
Method assertApproximates Fail if first - second > tolerance
Method assertSubstring Fail if substring does not exist within astring.
Method assertNotSubstring Fail if astring contains substring.
Method assertWarns Fail if the given function doesn't generate the specified warning when called. It calls the function, checks the warning, and forwards the result of the function if everything is fine.
Method assertIsInstance Fail if instance is not an instance of the given class or of one of the given classes.
Method assertNotIsInstance Fail if instance is an instance of the given class or of one of the given classes.
Method successResultOf Return the current success result of deferred or raise self.failureException.
Method failureResultOf Return the current failure result of deferred or raise self.failureException.
Method assertNoResult Assert that deferred does not have a result at this point.
Method assertRegex Fail the test if a regexp search of text fails.
def test_equalityIterationAndAddition(self):

Test the following properties of MessageSet addition and equality:

  1. Two empty MessageSets are equal to each other;
  2. A MessageSet is not equal to any other object;
  1. Adding a MessageSet and another MessageSet or an int representing a single message or a sequence of ints representing a sequence of message numbers produces a new MessageSet that:
  2. Has a length equal to the number of messages within each sequence of message numbers;
  3. Yields each message number in ascending order when iterated over;
  1. MessageSet.add with a single message or a start and end message satisfies 3 and 4 above.
def test_lengthWithWildcardRange(self):

A MessageSet that has a range that ends with None raises a TypeError when its length is requested.

def test_reprSanity(self):

MessageSet.__repr__ does not raise an exception

def test_stringRepresentationWithWildcards(self):

In a MessageSet, in the presence of wildcards, if the highest message id is known, the wildcard should get replaced by that high value.

def test_stringRepresentationWithInversion(self):

In a MessageSet, inverting the high and low numbers in a range doesn't affect the meaning of the range. For example, 3:2 displays just like 2:3, because according to the RFC they have the same meaning.

def test_createWithSingleMessageNumber(self):

Creating a MessageSet with a single message number adds only that message to the MessageSet; its serialized form includes only that message number, its length is one, and it yields only that message number.

def test_createWithSequence(self):

Creating a MessageSet with both a start and end message number adds the sequence between to the MessageSet; its serialized form consists that range, its length is the length of the sequence, and it yields the message numbers inclusively between the start and end.

def test_createWithSingleWildcard(self):

Creating a MessageSet with a single None, representing *, adds * to the range; its serialized form includes only *, its length is one, but it cannot be iterated over because its endpoint is unknown.

def test_setLastSingleWildcard(self):

Setting MessageSet.last replaces None, representing *, with that number, making that MessageSet iterable.

def test_setLastWithWildcardRange(self):

Setting MessageSet.last replaces None in all ranges.

def test_setLastTwiceFails(self):

MessageSet.last cannot be set twice.

def test_lastOverridesNoneInAdd(self):

Adding a None, representing *, or a sequence that includes None to a MessageSet whose last property has been set replaces all occurrences of None with the value of last.

def test_getLast(self):

Accessing MessageSet.last returns the last value.

def test_extend(self):

MessageSet.extend accepts as its arugment an int or None, or a sequence ints or Nones of length two, or another MessageSet, combining its argument with its instance's existing ranges.

def test_contains(self):

A MessageSet contains a number if the number falls within one of its ranges, and raises TypeError if any range contains None.

def test_rangesMerged(self):

Adding a sequence of message numbers to a MessageSet that begins or ends immediately before or after an existing sequence in that MessageSet, or overlaps one, merges the two.

def test_seq_rangeExamples(self):

Test the seq-range examples from Section 9, "Formal Syntax" of RFC 3501:

   Example: 2:4 and 4:2 are equivalent and indicate values
            2, 3, and 4.

   Example: a unique identifier sequence range of
            3291:* includes the UID of the last message in
            the mailbox, even if that value is less than 3291.
See Alsohttp://tools.ietf.org/html/rfc3501#section-9
def test_sequence_setExamples(self):

Test the sequence-set examples from Section 9, "Formal Syntax" of RFC 3501. In particular, MessageSet reorders and coalesces overlaps:

   Example: a message sequence number set of
            2,4:7,9,12:* for a mailbox with 15 messages is
            equivalent to 2,4,5,6,7,9,12,13,14,15

   Example: a message sequence number set of *:4,5:7
            for a mailbox with 10 messages is equivalent to
            10,9,8,7,6,5,4,5,6,7 and MAY be reordered and
            overlap coalesced to be 4,5,6,7,8,9,10.
See Alsohttp://tools.ietf.org/html/rfc3501#section-9
API Documentation for twisted, generated by pydoctor at 2020-03-25 17:34:30.