Skip to content
Projeler
Gruplar
Parçacıklar
Yardım
Yükleniyor...
Oturum aç / Kaydol
Gezinmeyi değiştir
C
cpython
Proje
Proje
Ayrıntılar
Etkinlik
Cycle Analytics
Depo (repository)
Depo (repository)
Dosyalar
Kayıtlar (commit)
Dallar (branch)
Etiketler
Katkıda bulunanlar
Grafik
Karşılaştır
Grafikler
Konular (issue)
0
Konular (issue)
0
Liste
Pano
Etiketler
Kilometre Taşları
Birleştirme (merge) Talepleri
0
Birleştirme (merge) Talepleri
0
CI / CD
CI / CD
İş akışları (pipeline)
İşler
Zamanlamalar
Grafikler
Paketler
Paketler
Wiki
Wiki
Parçacıklar
Parçacıklar
Üyeler
Üyeler
Collapse sidebar
Close sidebar
Etkinlik
Grafik
Grafikler
Yeni bir konu (issue) oluştur
İşler
Kayıtlar (commit)
Konu (issue) Panoları
Kenar çubuğunu aç
Batuhan Osman TASKAYA
cpython
Commits
447b4a06
Kaydet (Commit)
447b4a06
authored
Mar 26, 1999
tarafından
Guido van Rossum
Dosyalara gözat
Seçenekler
Dosyalara Gözat
İndir
Eposta Yamaları
Sade Fark
Test suite for UserList.
üst
2a340b38
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
177 additions
and
0 deletions
+177
-0
test_userlist
Lib/test/output/test_userlist
+1
-0
test_userlist.py
Lib/test/test_userlist.py
+176
-0
No files found.
Lib/test/output/test_userlist
0 → 100644
Dosyayı görüntüle @
447b4a06
test_userlist
Lib/test/test_userlist.py
0 → 100644
Dosyayı görüntüle @
447b4a06
# Check every path through every method of UserList
from
UserList
import
UserList
l0
=
[]
l1
=
[
0
]
l2
=
[
0
,
1
]
# Test constructors
u
=
UserList
()
u0
=
UserList
(
l0
)
u1
=
UserList
(
l1
)
u2
=
UserList
(
l2
)
uu
=
UserList
(
u
)
uu0
=
UserList
(
u0
)
uu1
=
UserList
(
u1
)
uu2
=
UserList
(
u2
)
# Test __repr__
assert
str
(
u0
)
==
str
(
l0
)
assert
repr
(
u1
)
==
repr
(
l1
)
assert
`u2`
==
`l2`
# Test __cmp__ and __len__
def
mycmp
(
a
,
b
):
r
=
cmp
(
a
,
b
)
if
r
<
0
:
return
-
1
if
r
>
0
:
return
1
return
r
all
=
[
l0
,
l1
,
l2
,
u
,
u0
,
u1
,
u2
,
uu
,
uu0
,
uu1
,
uu2
]
for
a
in
all
:
for
b
in
all
:
assert
mycmp
(
a
,
b
)
==
mycmp
(
len
(
a
),
len
(
b
))
# Test __getitem__
for
i
in
range
(
len
(
u2
)):
assert
u2
[
i
]
==
i
# Test __setitem__
uu2
[
0
]
=
0
uu2
[
1
]
=
100
try
:
uu2
[
2
]
=
200
except
IndexError
:
pass
else
:
assert
0
,
"uu2[2] shouldn't be assignable"
# Test __delitem__
del
uu2
[
1
]
del
uu2
[
0
]
try
:
del
uu2
[
0
]
except
IndexError
:
pass
else
:
assert
0
,
"uu2[0] shouldn't be deletable"
# Test __getslice__
for
i
in
range
(
-
3
,
4
):
assert
u2
[:
i
]
==
l2
[:
i
]
assert
u2
[
i
:]
==
l2
[
i
:]
for
j
in
range
(
-
3
,
4
):
assert
u2
[
i
:
j
]
==
l2
[
i
:
j
]
# Test __setslice__
for
i
in
range
(
-
3
,
4
):
u2
[:
i
]
=
l2
[:
i
]
assert
u2
==
l2
u2
[
i
:]
=
l2
[
i
:]
assert
u2
==
l2
for
j
in
range
(
-
3
,
4
):
u2
[
i
:
j
]
=
l2
[
i
:
j
]
assert
u2
==
l2
uu2
=
u2
[:]
uu2
[:
0
]
=
[
-
2
,
-
1
]
assert
uu2
==
[
-
2
,
-
1
,
0
,
1
]
uu2
[
0
:]
=
[]
assert
uu2
==
[]
# Test __delslice__
uu2
=
u2
[:]
del
uu2
[
1
:
2
]
del
uu2
[
0
:
1
]
assert
uu2
==
[]
uu2
=
u2
[:]
del
uu2
[
1
:]
del
uu2
[:
1
]
assert
uu2
==
[]
# Test __add__, __radd__, __mul__ and __rmul__
assert
u1
+
[]
==
[]
+
u1
==
u1
assert
u1
+
[
1
]
==
u2
assert
[
-
1
]
+
u1
==
[
-
1
,
0
]
assert
u2
==
u2
*
1
==
1
*
u2
assert
u2
+
u2
==
u2
*
2
==
2
*
u2
assert
u2
+
u2
+
u2
==
u2
*
3
==
3
*
u2
# Test append
u
=
u1
[:]
u
.
append
(
1
)
assert
u
==
u2
# Test insert
u
=
u2
[:]
u
.
insert
(
0
,
-
1
)
assert
u
==
[
-
1
,
0
,
1
]
# Test pop
u
=
[
-
1
]
+
u2
u
.
pop
()
assert
u
==
[
-
1
,
0
]
u
.
pop
(
0
)
assert
u
==
[
0
]
# Test remove
u
=
u2
[:]
u
.
remove
(
1
)
assert
u
==
u1
# Test count
u
=
u2
*
3
assert
u
.
count
(
0
)
==
3
assert
u
.
count
(
1
)
==
3
assert
u
.
count
(
2
)
==
0
# Test index
assert
u2
.
index
(
0
)
==
0
assert
u2
.
index
(
1
)
==
1
try
:
u2
.
index
(
2
)
except
ValueError
:
pass
else
:
assert
0
,
"expected ValueError"
# Test reverse
u
=
u2
[:]
u
.
reverse
()
assert
u
==
[
1
,
0
]
u
.
reverse
()
assert
u
==
u2
# Test sort
u
=
UserList
([
1
,
0
])
u
.
sort
()
assert
u
==
u2
# Test extend
u
=
u1
[:]
u
.
extend
(
u2
)
assert
u
==
u1
+
u2
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment