#17526: Bitset doctest failures on OS X
------------------------+----------------------------
   Reporter:  jdemeyer  |            Owner:
       Type:  defect    |           Status:  new
   Priority:  blocker   |        Milestone:  sage-6.5
  Component:  misc      |         Keywords:
  Merged in:            |          Authors:
  Reviewers:            |  Report Upstream:  N/A
Work issues:            |           Branch:
     Commit:            |     Dependencies:
   Stopgaps:            |
------------------------+----------------------------
 John Palmieri reports this in two OS X systems:

 {{{
 sage -t --warn-long 35.1 src/sage/data_structures/bitset.pyx
 **********************************************************************
 File "src/sage/data_structures/bitset.pyx", line 1998, in
 sage.data_structures.bitset.test_bitset
 Failed example:
     test_bitset('00'*64, '01'*64, 127)
 Expected:
     a
 
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
     list a []
     a.size 128
     len(a) 0
     a.limbs ...
     b
 
01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101
     a.in(n)   False
     a.not_in(n)   True
     a.add(n)
 
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001
     a.discard(n)
 
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
     a.set_to(n)
 
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001
     a.flip(n)
 
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001
     a.set_first_n(n)
 
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110
     a.first_in_complement()    127
     a.isempty()  True
     a.eq(b)      False
     a.cmp(b)     -1
     a.lex_cmp(b) -1
     a.issubset(b) True
     a.issuperset(b) False
     a.copy()
 
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
     r.clear()
 
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
     complement a
 
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
     a intersect b
 
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
     a union b
 
01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101
     a minus b
 
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
     a symmetric_difference b
 
01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101
     a.rshift(n)
 
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
     a.lshift(n)
 
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
     a.first()           -1
     a.next(n)           -1
     a.first_diff(b)     1
     a.next_diff(b, n)   127
     a.hamming_weight()  0
     a.map(m)
 
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
     a == loads(dumps(a))  True
     rshifts add  True
     lshifts add  True
     intersection commutes True
     union commutes  True
     not not = id True
     flipped bit  127
     add bit      127
     discard bit    127
     lshift add unset ok True
     rshift set unset ok True
     reallocating a
 
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
     to size 127
 
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
     to size 254
 
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
     to original size
 
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 Got:
     a
 
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
     list a []
     a.size 128
     len(a) 0
     a.limbs 2
     b
 
01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101
     a.in(n)   False
     a.not_in(n)   True
     a.add(n)
 
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001
     a.discard(n)
 
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
     a.set_to(n)
 
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001
     a.flip(n)
 
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001
     a.set_first_n(n)
 
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110
     a.first_in_complement()    127
     a.isempty()  True
     a.eq(b)      False
     a.cmp(b)     -1
     a.lex_cmp(b) -1
     a.issubset(b) True
     a.issuperset(b) False
     a.copy()
 
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
     r.clear()
 
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
     complement a
 
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
     a intersect b
 
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
     a union b
 
01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101
     a minus b
 
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
     a symmetric_difference b
 
01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101
     a.rshift(n)
 
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
     a.lshift(n)
 
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
     a.first()           -1
     a.next(n)           -1
     a.first_diff(b)     1
     a.next_diff(b, n)   127
     a.hamming_weight()  0
     a.map(m)
 
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
     a == loads(dumps(a))  True
     rshifts add  False
     lshifts add  True
     intersection commutes True
     union commutes  True
     not not = id True
     flipped bit  127
     add bit      127
     discard bit    127
     lshift add unset ok True
     rshift set unset ok False
     reallocating a
 
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
     to size 127
 
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
     to size 254
 
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
     to original size
 
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 **********************************************************************
 }}}

 I see a difference in `rshift set unset ok False`

--
Ticket URL: <http://trac.sagemath.org/ticket/17526>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.

Reply via email to