36 lines
1 KiB
Python
36 lines
1 KiB
Python
#!/usr/bin/env python
|
|
# This Source Code Form is subject to the terms of the Mozilla Public
|
|
# License, v. 2.0. If a copy of the MPL was not distributed with this file,
|
|
# You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
|
|
from unittest.mock import patch
|
|
|
|
import mozunit
|
|
import pytest
|
|
|
|
|
|
@pytest.mark.parametrize("logger", [True, False])
|
|
def test_crash_count_with_or_without_logger(runner, logger):
|
|
if runner.app == "chrome":
|
|
pytest.xfail("crash checking not implemented for ChromeRunner")
|
|
|
|
if not logger:
|
|
runner.logger = None
|
|
fn = "check_for_crashes"
|
|
else:
|
|
fn = "log_crashes"
|
|
|
|
with patch("mozcrash.{}".format(fn), return_value=2) as mock:
|
|
assert runner.crashed == 0
|
|
assert runner.check_for_crashes() == 2
|
|
assert runner.crashed == 2
|
|
assert runner.check_for_crashes() == 2
|
|
assert runner.crashed == 4
|
|
|
|
mock.return_value = 0
|
|
assert runner.check_for_crashes() == 0
|
|
assert runner.crashed == 4
|
|
|
|
|
|
if __name__ == "__main__":
|
|
mozunit.main()
|