Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
S
setuptools
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Jérome Perrin
setuptools
Commits
c0250c3b
Commit
c0250c3b
authored
Feb 22, 2009
by
Tarek Ziadé
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
moved distutils.text_file tests into a real unittest class
parent
9f19d45b
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
87 additions
and
77 deletions
+87
-77
tests/test_text_file.py
tests/test_text_file.py
+87
-0
text_file.py
text_file.py
+0
-77
No files found.
tests/test_text_file.py
0 → 100644
View file @
c0250c3b
"""Tests for distutils.text_file."""
import
os
import
unittest
from
distutils.text_file
import
TextFile
from
distutils.tests
import
support
TEST_DATA
=
"""# test file
line 3
\
\
# intervening comment
continues on next line
"""
class
TextFileTestCase
(
support
.
TempdirManager
,
unittest
.
TestCase
):
def
test_class
(
self
):
# old tests moved from text_file.__main__
# so they are really called by the buildbots
# result 1: no fancy options
result1
=
map
(
lambda
x
:
x
+
"
\
n
"
,
TEST_DATA
.
split
(
"
\
n
"
)[
0
:
-
1
])
# result 2: just strip comments
result2
=
[
"
\
n
"
,
"line 3
\
\
\
n
"
,
" continues on next line
\
n
"
]
# result 3: just strip blank lines
result3
=
[
"# test file
\
n
"
,
"line 3
\
\
\
n
"
,
"# intervening comment
\
n
"
,
" continues on next line
\
n
"
]
# result 4: default, strip comments, blank lines,
# and trailing whitespace
result4
=
[
"line 3
\
\
"
,
" continues on next line"
]
# result 5: strip comments and blanks, plus join lines (but don't
# "collapse" joined lines
result5
=
[
"line 3 continues on next line"
]
# result 6: strip comments and blanks, plus join lines (and
# "collapse" joined lines
result6
=
[
"line 3 continues on next line"
]
def
test_input
(
count
,
description
,
file
,
expected_result
):
result
=
file
.
readlines
()
self
.
assertEquals
(
result
,
expected_result
)
tmpdir
=
self
.
mkdtemp
()
filename
=
os
.
path
.
join
(
tmpdir
,
"test.txt"
)
out_file
=
open
(
filename
,
"w"
)
try
:
out_file
.
write
(
TEST_DATA
)
finally
:
out_file
.
close
()
in_file
=
TextFile
(
filename
,
strip_comments
=
0
,
skip_blanks
=
0
,
lstrip_ws
=
0
,
rstrip_ws
=
0
)
test_input
(
1
,
"no processing"
,
in_file
,
result1
)
in_file
=
TextFile
(
filename
,
strip_comments
=
1
,
skip_blanks
=
0
,
lstrip_ws
=
0
,
rstrip_ws
=
0
)
test_input
(
2
,
"strip comments"
,
in_file
,
result2
)
in_file
=
TextFile
(
filename
,
strip_comments
=
0
,
skip_blanks
=
1
,
lstrip_ws
=
0
,
rstrip_ws
=
0
)
test_input
(
3
,
"strip blanks"
,
in_file
,
result3
)
in_file
=
TextFile
(
filename
)
test_input
(
4
,
"default processing"
,
in_file
,
result4
)
in_file
=
TextFile
(
filename
,
strip_comments
=
1
,
skip_blanks
=
1
,
join_lines
=
1
,
rstrip_ws
=
1
)
test_input
(
5
,
"join lines without collapsing"
,
in_file
,
result5
)
in_file
=
TextFile
(
filename
,
strip_comments
=
1
,
skip_blanks
=
1
,
join_lines
=
1
,
rstrip_ws
=
1
,
collapse_join
=
1
)
test_input
(
6
,
"join lines with collapsing"
,
in_file
,
result6
)
def
test_suite
():
return
unittest
.
makeSuite
(
TextFileTestCase
)
if
__name__
==
"__main__"
:
unittest
.
main
(
defaultTest
=
"test_suite"
)
text_file.py
View file @
c0250c3b
...
...
@@ -303,80 +303,3 @@ class TextFile:
a parser with line-at-a-time lookahead."""
self
.
linebuf
.
append
(
line
)
if
__name__
==
"__main__"
:
test_data
=
"""# test file
line 3
\
\
# intervening comment
continues on next line
"""
# result 1: no fancy options
result1
=
map
(
lambda
x
:
x
+
"
\
n
"
,
string
.
split
(
test_data
,
"
\
n
"
)[
0
:
-
1
])
# result 2: just strip comments
result2
=
[
"
\
n
"
,
"line 3
\
\
\
n
"
,
" continues on next line
\
n
"
]
# result 3: just strip blank lines
result3
=
[
"# test file
\
n
"
,
"line 3
\
\
\
n
"
,
"# intervening comment
\
n
"
,
" continues on next line
\
n
"
]
# result 4: default, strip comments, blank lines, and trailing whitespace
result4
=
[
"line 3
\
\
"
,
" continues on next line"
]
# result 5: strip comments and blanks, plus join lines (but don't
# "collapse" joined lines
result5
=
[
"line 3 continues on next line"
]
# result 6: strip comments and blanks, plus join lines (and
# "collapse" joined lines
result6
=
[
"line 3 continues on next line"
]
def
test_input
(
count
,
description
,
file
,
expected_result
):
result
=
file
.
readlines
()
# result = string.join (result, '')
if
result
==
expected_result
:
print
"ok %d (%s)"
%
(
count
,
description
)
else
:
print
"not ok %d (%s):"
%
(
count
,
description
)
print
"** expected:"
print
expected_result
print
"** received:"
print
result
filename
=
"test.txt"
out_file
=
open
(
filename
,
"w"
)
out_file
.
write
(
test_data
)
out_file
.
close
()
in_file
=
TextFile
(
filename
,
strip_comments
=
0
,
skip_blanks
=
0
,
lstrip_ws
=
0
,
rstrip_ws
=
0
)
test_input
(
1
,
"no processing"
,
in_file
,
result1
)
in_file
=
TextFile
(
filename
,
strip_comments
=
1
,
skip_blanks
=
0
,
lstrip_ws
=
0
,
rstrip_ws
=
0
)
test_input
(
2
,
"strip comments"
,
in_file
,
result2
)
in_file
=
TextFile
(
filename
,
strip_comments
=
0
,
skip_blanks
=
1
,
lstrip_ws
=
0
,
rstrip_ws
=
0
)
test_input
(
3
,
"strip blanks"
,
in_file
,
result3
)
in_file
=
TextFile
(
filename
)
test_input
(
4
,
"default processing"
,
in_file
,
result4
)
in_file
=
TextFile
(
filename
,
strip_comments
=
1
,
skip_blanks
=
1
,
join_lines
=
1
,
rstrip_ws
=
1
)
test_input
(
5
,
"join lines without collapsing"
,
in_file
,
result5
)
in_file
=
TextFile
(
filename
,
strip_comments
=
1
,
skip_blanks
=
1
,
join_lines
=
1
,
rstrip_ws
=
1
,
collapse_join
=
1
)
test_input
(
6
,
"join lines with collapsing"
,
in_file
,
result6
)
os
.
remove
(
filename
)
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