mirror of
				https://github.com/python/cpython.git
				synced 2025-11-03 19:34:08 +00:00 
			
		
		
		
	SF patch #523169, by Samuele Pedroni.
There were never tests for the fact that list() always returns a *new* list object, even when the argument is a list, while tuple() may return a reference to the argument when it is a tuple. Now there are.
This commit is contained in:
		
							parent
							
								
									5ae815af99
								
							
						
					
					
						commit
						06ee2531a8
					
				
					 3 changed files with 14 additions and 1 deletions
				
			
		| 
						 | 
				
			
			@ -26,6 +26,7 @@ int
 | 
			
		|||
isinstance
 | 
			
		||||
issubclass
 | 
			
		||||
len
 | 
			
		||||
list
 | 
			
		||||
long
 | 
			
		||||
map
 | 
			
		||||
max
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -491,6 +491,16 @@ if len([1, 2, 3, 4]) != 4: raise TestFailed, 'len([1, 2, 3, 4])'
 | 
			
		|||
if len({}) != 0: raise TestFailed, 'len({})'
 | 
			
		||||
if len({'a':1, 'b': 2}) != 2: raise TestFailed, 'len({\'a\':1, \'b\': 2})'
 | 
			
		||||
 | 
			
		||||
print 'list'
 | 
			
		||||
if list([]) != []: raise TestFailed, 'list([])'
 | 
			
		||||
l0_3 = [0, 1, 2, 3]
 | 
			
		||||
l0_3_bis = list(l0_3)
 | 
			
		||||
if l0_3 != l0_3_bis or l0_3 is l0_3_bis: raise TestFailed, 'list([0, 1, 2, 3])'
 | 
			
		||||
if list(()) != []: raise TestFailed, 'list(())'
 | 
			
		||||
if list((0, 1, 2, 3)) != [0, 1, 2, 3]: raise TestFailed, 'list((0, 1, 2, 3))'
 | 
			
		||||
if list('') != []: raise TestFailed, 'list('')'
 | 
			
		||||
if list('spam') != ['s', 'p', 'a', 'm']: raise TestFailed, "list('spam')"
 | 
			
		||||
 | 
			
		||||
print 'long'
 | 
			
		||||
if long(314) != 314L: raise TestFailed, 'long(314)'
 | 
			
		||||
if long(3.14) != 3L: raise TestFailed, 'long(3.14)'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -253,7 +253,9 @@ if str({}) != '{}': raise TestFailed, 'str({})'
 | 
			
		|||
 | 
			
		||||
print 'tuple'
 | 
			
		||||
if tuple(()) != (): raise TestFailed, 'tuple(())'
 | 
			
		||||
if tuple((0, 1, 2, 3)) != (0, 1, 2, 3): raise TestFailed, 'tuple((0, 1, 2, 3))'
 | 
			
		||||
t0_3 = (0, 1, 2, 3)
 | 
			
		||||
t0_3_bis = tuple(t0_3)
 | 
			
		||||
if t0_3 is not t0_3_bis: raise TestFailed, 'tuple((0, 1, 2, 3))'
 | 
			
		||||
if tuple([]) != (): raise TestFailed, 'tuple([])'
 | 
			
		||||
if tuple([0, 1, 2, 3]) != (0, 1, 2, 3): raise TestFailed, 'tuple([0, 1, 2, 3])'
 | 
			
		||||
if tuple('') != (): raise TestFailed, 'tuple('')'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue