Carlos Jenkins
8b49ddfa58
Renamed the fixture record_xml_property to record_property and adapted logic so that the properties are passed to the TestReport object and thus allow compatibility with pytest-xdist.
2018-02-20 15:46:26 -06:00
Bruno Oliveira
97bb6abcfa
Merge pull request #3234 from thisch/showcapture_log_support
...
Add captured-log support to --show-capture
2018-02-19 20:46:50 -03:00
Thomas Hisch
acda6c46fb
Partially revert "Remove --no-print-logs option"
...
We'll deprecate --no-print-logs beginning with pytest-4.0.
This reverts commit ac7eb63a6b
.
2018-02-19 20:34:11 +01:00
Thomas Hisch
ac7eb63a6b
Remove --no-print-logs option
...
This option is superseded by the --show-capture option. With --no-print-logs
it was possible to only disable the reporting of captured logs, which is no
longer possible with --show-capture. If --show-capture=no is used, no
captured content (stdout, stderr and logs) is reported for failed tests.
2018-02-18 20:48:07 +01:00
Thomas Hisch
51ece00923
Add captured-log support to --show-capture
...
Fixes : #3233
2018-02-18 20:18:37 +01:00
Bruno Oliveira
b486e1294b
Merge pull request #3222 from The-Compiler/match-msg
...
Remove "matching '...'" part from the pytest.raises message
2018-02-17 21:18:05 -02:00
Bruno Oliveira
3bc8b50a0d
Merge pull request #3228 from thisch/update_attr
...
Update minimal attrs library to v17.4.0
2018-02-17 20:19:07 -02:00
Bruno Oliveira
9d879bee36
Merge pull request #3215 from pytest-dev/bugfix/985/disable-output-capturing-in-doctest
...
Disable output capturing in doctest
2018-02-17 18:39:32 -02:00
Brian Maissy
069f32a8c4
print captured logs before entering pdb
2018-02-17 20:32:49 +02:00
Jason R. Coombs
4131d3f300
Probably it's best to write the err stream to stderr.
2018-02-17 12:13:33 -05:00
Jason R. Coombs
254e357076
Correct the broken indentation.
2018-02-17 12:10:29 -05:00
Bruno Oliveira
69d608aec3
Merge remote-tracking branch 'upstream/master' into merge-upstream
2018-02-17 09:38:06 -02:00
Bruno Oliveira
fa8354e872
Merge pull request #3213 from thisch/collection_deselection
...
Show deselection count before tests are executed
2018-02-17 09:03:26 -02:00
Bruno Oliveira
00d3001138
Merge pull request #3188 from s0undt3ch/issues/3184
...
Don't traceback on unkown sections.
2018-02-17 09:02:44 -02:00
Bruno Oliveira
05faa69c37
Merge pull request #3194 from s0undt3ch/feature/logstart-logfinish
...
Fix issue where a new line was always written for the live log finish section
2018-02-16 21:19:38 -02:00
Jordan Speicher
774c539f1a
Add --deselect command line option
...
Fixes #3198
2018-02-16 08:17:37 -06:00
Bruno Oliveira
6bc45d158d
Merge pull request #3186 from brianmaissy/bugfix/print_captured_stdout_before_entering_pdb
...
Added printing of captured stdout before entering pdb
2018-02-15 19:38:23 -02:00
Thomas Hisch
82cdc487ce
Fix raised warning when attrs 17.4.0 is used
...
Related: #3223
2018-02-15 21:09:44 +01:00
Jason R. Coombs
435b8ddc7c
Rename method for additional clarity.
2018-02-15 09:17:33 -05:00
Florian Bruhin
3cbf0c8ec0
Raise unexpected exceptions with pytest.raises() using match=
2018-02-15 12:11:56 +01:00
Florian Bruhin
9849022eb2
Remove "matching '...'" part from the pytest.raises message
...
When a test with pytest.raises(ValueError, match='foo') doesn't raise, the
following error is printed:
Failed: DID NOT RAISE <class 'ValueError'> matching 'foo'
This error message is confusing as it implies a ValueError was raised, but the
message wasn't matching 'foo'.
I first considered rewording it somehow to preserve the match pattern in it, but
I don't think that's worthwhile as the pattern should usually be apparent from
the stacktrace anyways (hard-coded, as parametrization, or with --showlocals for
more sophisticated cases).
2018-02-14 19:20:00 +01:00
Jason R. Coombs
18c84a1904
Restrict fix to macOS only. Ref #3215 .
2018-02-13 17:51:20 -05:00
Thomas Hisch
6496131b79
Show deselection count before tests are exectued
...
Fixes #1527
2018-02-13 22:27:02 +01:00
feuillemorte
dff0500114
#3034 Added new option "--new-first"
2018-02-13 22:49:28 +03:00
Jason R. Coombs
ce1872e7e8
Merge branch 'master' into bugfix/985/disable-output-capturing-in-doctest
2018-02-13 12:33:07 -05:00
Jason R. Coombs
391553887b
Disable output capturing in doctest to avoid losing reference to stdout. Fixes #985 .
2018-02-13 12:08:39 -05:00
Brian Maissy
7656fc8320
Added printing of captured stdout and stderr before entering pdb
2018-02-12 23:17:51 +02:00
Marcin Bachry
b6166dccb4
Fix mock patchings detection when both mock and unittest.mock are present
2018-02-12 20:29:37 +01:00
Andy Freeland
e5b527d0e3
Add Sphinx parameter docs for `match` and `message` args to `pytest.raises()`
2018-02-09 16:28:17 -08:00
Bruno Oliveira
063e2da967
Merge pull request #3176 from feuillemorte/1478_no_stdout_option
...
#1478 Added --no-stdout option
2018-02-09 18:36:36 -02:00
feuillemorte
da5882c2d5
#1478 Add doc and remove print
2018-02-09 21:36:48 +03:00
Pedro Algarvio
d776e5610e
Fix issue where a new line was always written for the live log finish section
2018-02-09 11:17:01 +00:00
Bruno Oliveira
a4cbd03535
Fix linting
2018-02-08 13:22:32 -02:00
feuillemorte
71367881ed
#1478 Added --show-capture=both option (fix comments)
2018-02-08 16:21:22 +03:00
Bruno Oliveira
ad7d63df97
Rename _stream_logs_enabled to _log_cli_enabled and remove _stream_logs
2018-02-08 09:48:51 -02:00
Pedro Algarvio
0b71255dda
Expose `log_cli` as a CLI parser option.
2018-02-08 09:42:53 +00:00
Bruno Oliveira
ce0a9aadec
Merge pull request #3127 from feuillemorte/1642-add-rootdir-option
...
#1642 add rootdir option
2018-02-07 18:18:59 -02:00
Bruno Oliveira
f72182977d
Merge pull request #3183 from cheezman34/master
...
Fix ordering of tests to minimize fixture creating
2018-02-07 18:15:41 -02:00
Bruno Oliveira
ed12cf3fb3
Merge pull request #3189 from s0undt3ch/feature/logstart-logfinish
...
Additionally handle logstart and logfinish hooks
2018-02-07 18:09:45 -02:00
feuillemorte
1a650a9eb9
#1478 Added --show-capture option
2018-02-06 23:38:51 +03:00
Pedro Algarvio
67558e0e22
Additionally handle logstart and logfinish hooks
2018-02-06 15:45:36 +00:00
Bruno Oliveira
2d0c1e941e
Fix versionadded tag in caplog function
2018-02-05 20:22:21 -02:00
Pedro Algarvio
0d15a46863
Don't traceback on unkown sections.
2018-02-05 19:09:38 +00:00
Ronny Pfannschmidt
7c80c81433
Merge pull request #3152 from brianmaissy/silently_fail_to_import_during_postmortem
...
If we fail to import doctest.UnexpectedException during postmortem, fail quietly
2018-02-05 10:04:00 +01:00
Brian Maissy
867344d0d7
move import to top
2018-02-04 00:03:17 +02:00
Thomas Hisch
c0ef4a4d35
Add captured log msgs to junit xml file
...
For each test this adds the captured log msgs to a system-* tag in the junit
xml output file. The destination of the system-* tag is specified by
junit_logging ini option.
2018-02-03 09:39:29 +01:00
Aaron
4458e65fe7
Fix ordering of tests to minimize fixture creating
2018-02-01 13:07:45 -08:00
feuillemorte
3eb6cad222
#1642 Fix comments
2018-02-01 11:20:37 +03:00
feuillemorte
9f1772e679
#1642 Resolve conflicts
2018-02-01 00:18:28 +03:00
feuillemorte
741b571f3b
#1642 fix tests and config.py
2018-02-01 00:03:24 +03:00
feuillemorte
949a620d3a
#1478 Added --no-stdout option
2018-01-31 22:36:28 +03:00
Alan Velasco
e12a588c39
Merge branch 'master' into typo_for_parametrize
2018-01-30 16:22:54 -06:00
Alan Velasco
547070e2d8
Switch `for_parameterize` to `for_parametrize`
2018-01-30 16:20:43 -06:00
Thomas Hisch
ebab1b6c69
live-logging: Colorize levelname
2018-01-30 18:21:12 +01:00
Bruno Oliveira
49773b573f
Merge pull request #3132 from raphaelcastaneda/feature/add-record-xml-attribute
...
implement #3130 - add record_xml_attribute fixture
2018-01-29 15:42:55 -02:00
Bruno Oliveira
269eeec702
Replace deprecated option.getvalue by option.getoption in cacheprovider
2018-01-29 08:40:29 -02:00
Bruno Oliveira
0e1be01b7a
Merge pull request #3108 from cheezman34/features
...
Optimize reorder_items in fixtures.py
2018-01-27 23:21:09 -02:00
Bruno Oliveira
aff463a3c4
Merge remote-tracking branch 'upstream/master' into features
2018-01-27 12:28:43 -02:00
Bruno Oliveira
b3247c1d03
Merge pull request #3044 from RonnyPfannschmidt/parameterset-empty-enable-xfail
...
empty parameterset - enable opt to xfail
2018-01-27 12:23:49 -02:00
Bruno Oliveira
cd0b2ace67
Merge pull request #3150 from alanbato/pytest_cache
...
Change cache directory structure to include `pytest`
2018-01-27 10:08:56 -02:00
Ronny Pfannschmidt
17a1ed5edf
use a constant to sort out repeated use of the EMPTY_PARAMETERSET_OPTION
2018-01-26 12:12:26 +01:00
Ronny Pfannschmidt
a54cd4c2fd
correct testing and usage of the empty_parameter_set_mark config option
2018-01-26 12:05:52 +01:00
Ronny Pfannschmidt
d550c33cd0
s/empty_parameterset/empty_parameter_set_mark
2018-01-26 11:56:24 +01:00
Bruno Oliveira
a58099022a
Merge pull request #3124 from nicoddemus/logging-3013
...
Changes in the logging plugin for 3.4
2018-01-26 08:52:43 -02:00
Ronny Pfannschmidt
37b41de779
fix #2527 - introduce a option to pic the empty parameterset action
2018-01-26 11:10:00 +01:00
Ronny Pfannschmidt
bf2c10c810
parameterset: refactor marking empty parametersets
2018-01-26 11:10:00 +01:00
Brian Maissy
2a1b1107c5
If we fail to import doctest.UnexpectedException during postmortem, fail quietly and continue
2018-01-25 22:28:27 +02:00
Alan Velasco
a24ca9872f
Change cache directory name to include `pytest`
2018-01-25 07:50:08 -06:00
feuillemorte
503e00f7ff
#1642 Remove adding rootdir to sys path
2018-01-25 15:57:29 +03:00
Bruno Oliveira
b8be339632
Merge pull request #3148 from nicoddemus/deprecate-old-style-classes-2147
...
All classes now subclass object for better py3 compatibility
2018-01-25 10:41:28 -02:00
Bruno Oliveira
15cbd61159
Change caplog.get_handler(when) to caplog.get_records(when)
...
While updating the docs I noticed that caplog.get_handler() exposes
the underlying Handler object, which I think it is a bit too much
detail at this stage. Update to return the records directly instead.
2018-01-24 19:08:49 -02:00
Bruno Oliveira
af37778b0d
All classes now subclass object for better py3 compatibility
...
Fix #2147
2018-01-24 18:23:42 -02:00
Bruno Oliveira
3f5e9ea71e
Fix -o behavior to no longer swallow all remaining options
...
The current behavior was too error-prone because a "-o" option would
swallow all the following non-option parameters:
pytest -o foo=bar path/to/test.py
path/to/test.py would be captured by the -o option, and would fail
because "path/to/test.py" is not in the format "key=value".
2018-01-23 21:19:16 -02:00
Andrew Toolan
2c7f94fdb9
Added basic fix and test
2018-01-23 21:18:10 -02:00
Bruno Oliveira
b4e8861aa5
Fix typos
2018-01-23 19:02:32 -02:00
Bruno Oliveira
113bfb6be8
Report 'call' phase as 'live log call'
...
As commented in review, this makes it consistent with the headers shown
by stdout/stderr capturing ("Captured log call")
2018-01-22 21:43:35 -02:00
Bruno Oliveira
3a9d0b26d5
Use pytest_runtest_logstart to signal the start of a new test
...
This also simplifies the code a bit because we don't need to keep
a set of ids anymore
2018-01-22 21:20:48 -02:00
Raphael Castaneda
a5e60b6a2d
implement #3130 - adding record_xml_attribute fixture
...
update incorrect expected attribute value in test_record_attribute
attr names must be strings
Update CHANGELOG formatting
update usage documentation
Fix versionadded for record_xml_attribute
Indent the xml schema properly inside the warning box in the docs
2018-01-22 15:14:53 -08:00
Bruno Oliveira
0df42b4426
Show a header for each testing phase during live logging
...
As suggested during review
2018-01-22 21:00:52 -02:00
Bruno Oliveira
0d96a5bf90
Merge pull request #3135 from brianmaissy/doc/clarify_pytest_fixture_setup_with_fixture_that_returns_None
...
Clarify a possible confusion when using pytest_fixture_setup with fixture functions that return None
2018-01-22 18:02:33 -02:00
Brian Maissy
8994603d46
Document hooks (defined with historic=True) which cannot be used with hookwrapper=True
2018-01-21 23:17:16 +02:00
Brian Maissy
196dcc37a8
Clarify a possible confusion when using pytest_fixture_setup with fixture functions that return None
2018-01-21 21:50:26 +02:00
feuillemorte
83034bbd48
#1642 Fix rootdir option
2018-01-20 22:30:01 +03:00
Bruno Oliveira
29a7b5e064
Initialize log_cli_handler to None during LoggingPlugin init
...
Some of testdir's functionality bypasses pytest_runtestloop so this
attribute needs to be set early
2018-01-20 14:19:45 -02:00
Bruno Oliveira
9dbcac9af3
Suspend stdout/stderr capturing when emitting live logging messages
2018-01-20 12:02:55 -02:00
Bruno Oliveira
97a4967b03
Improve code formatting
2018-01-20 12:02:55 -02:00
Bruno Oliveira
8f6a5928f7
Add newline before log messages and enable -v output when log_cli is enabled
2018-01-20 12:02:55 -02:00
Bruno Oliveira
5d89a93977
Small improvements to tests suggested during review
2018-01-20 12:02:54 -02:00
Bruno Oliveira
8d735f3e1d
Live log option now writes to the terminal reporter
...
Ref: #3013
2018-01-20 12:01:42 -02:00
Bruno Oliveira
aca1b06747
Undo log level set by caplog.set_level at the end of the test
...
Otherwise this leaks the log level information to other tests
Ref: #3013
2018-01-20 12:01:42 -02:00
Bruno Oliveira
8dcd2718aa
No longer change the level of any logger unless requested explicitly
...
Ref: #3013
2018-01-20 12:01:42 -02:00
Bruno Oliveira
5ad1313b8a
log_cli must now be enabled explicitly
...
Ref: #3013
2018-01-20 12:00:46 -02:00
Bruno Oliveira
3b3d237f07
Merge pull request #3117 from boxed/access_logs_in_teardown
...
Access captures logs in teardown
2018-01-20 11:21:17 -02:00
Anders Hovmöller
7ea5a22657
Access captures logs in teardown
2018-01-19 12:42:35 +01:00
feuillemorte
d784155fd2
#1642 Add rootdir option
2018-01-17 23:02:31 +03:00
Bruno Oliveira
e3406e0818
Show usage errors in red
2018-01-16 19:35:32 -02:00
feuillemorte
8433e2ba04
#2953 fix comments: fix exception type
2018-01-16 23:35:57 +03:00
feuillemorte
648d5d0c6b
#2953 fix comments: use keyword module
2018-01-16 22:55:24 +03:00
feuillemorte
076fb56f85
show a simple and easy error when keyword expressions trigger a syntax error
2018-01-16 21:30:44 +03:00
Bruno Oliveira
abbdb60051
Move logic determining if progress should be displayed to a function
2018-01-12 07:04:43 -02:00