[classifyTools] fix CI doctest failures on python 3

set objects have different __repr__ on python 2 and 3

Python 3:
    >>> {1, 2, 3}
    {1, 2, 3}

Python 2
    >>> {1, 2, 3}
    set([1, 2, 3])

(one among the several reasons I don't particularly like doctest...)
This commit is contained in:
Cosimo Lupo 2016-04-07 10:00:49 +01:00
parent 4ac53ab8b8
commit d2aab877bb

View File

@ -126,32 +126,40 @@ def classify(list_of_sets, sorted=True):
sets are returned in the order that they were identified, which is
generally not significant.
>>> classify([])
([], {})
>>> classify([[]])
([], {})
>>> classify([[], []])
([], {})
>>> classify([[1]])
([set([1])], {1: set([1])})
>>> classify([[1,2]])
([set([1, 2])], {1: set([1, 2]), 2: set([1, 2])})
>>> classify([[1],[2]])
([set([1]), set([2])], {1: set([1]), 2: set([2])})
>>> classify([[1,2],[2]])
([set([1]), set([2])], {1: set([1]), 2: set([2])})
>>> classify([[1,2],[2,4]])
([set([1]), set([4]), set([2])], {1: set([1]), 2: set([2]), 4: set([4])})
>>> classify([[1,2],[2,4,5]])
([set([4, 5]), set([1]), set([2])], {1: set([1]), 2: set([2]), 4: set([4, 5]), 5: set([4, 5])})
>>> classify([[1,2],[2,4,5]], sorted=False)
([set([1]), set([4, 5]), set([2])], {1: set([1]), 2: set([2]), 4: set([4, 5]), 5: set([4, 5])})
>>> classify([[1,2,9],[2,4,5]], sorted=False)
([set([1, 9]), set([4, 5]), set([2])], {1: set([1, 9]), 2: set([2]), 4: set([4, 5]), 5: set([4, 5]), 9: set([1, 9])})
>>> classify([[1,2,9,15],[2,4,5]], sorted=False)
([set([1, 15, 9]), set([4, 5]), set([2])], {1: set([1, 15, 9]), 2: set([2]), 4: set([4, 5]), 5: set([4, 5]), 9: set([1, 15, 9]), 15: set([1, 15, 9])})
>>> classify([[1,2,9,15],[2,4,5],[15,5]], sorted=False)
([set([1, 9]), set([4]), set([2]), set([5]), set([15])], {1: set([1, 9]), 2: set([2]), 4: set([4]), 5: set([5]), 9: set([1, 9]), 15: set([15])})
>>> classify([]) == ([], {})
True
>>> classify([[]]) == ([], {})
True
>>> classify([[], []]) == ([], {})
True
>>> classify([[1]]) == ([{1}], {1: {1}})
True
>>> classify([[1,2]]) == ([{1, 2}], {1: {1, 2}, 2: {1, 2}})
True
>>> classify([[1],[2]]) == ([{1}, {2}], {1: {1}, 2: {2}})
True
>>> classify([[1,2],[2]]) == ([{1}, {2}], {1: {1}, 2: {2}})
True
>>> classify([[1,2],[2,4]]) == ([{1}, {4}, {2}], {1: {1}, 2: {2}, 4: {4}})
True
>>> classify([[1,2],[2,4,5]]) == (
... [{4, 5}, {1}, {2}], {1: {1}, 2: {2}, 4: {4, 5}, 5: {4, 5}})
True
>>> classify([[1,2],[2,4,5]], sorted=False) == (
... [{4, 5}, {1}, {2}], {1: {1}, 2: {2}, 4: {4, 5}, 5: {4, 5}})
True
>>> classify([[1,2,9],[2,4,5]], sorted=False) == (
... [{1, 9}, {4, 5}, {2}], {1: {1, 9}, 2: {2}, 4: {4, 5}, 5: {4, 5},
... 9: {1, 9}})
True
>>> classify([[1,2,9,15],[2,4,5]], sorted=False) == (
... [{1, 9, 15}, {4, 5}, {2}], {1: {1, 9, 15}, 2: {2}, 4: {4, 5},
... 5: {4, 5}, 9: {1, 9, 15}, 15: {1, 9, 15}})
True
>>> classify([[1,2,9,15],[2,4,5],[15,5]], sorted=False) == (
... [{1, 9}, {4}, {2}, {5}, {15}], {1: {1, 9}, 2: {2}, 4: {4}, 5: {5},
... 9: {1, 9}, 15: {15}})
True
"""
classifier = Classifier(sorted=True)
classifier.update(list_of_sets)