(method, inputs)
| 771 | |
| 772 | |
| 773 | def call_method(method, inputs): |
| 774 | |
| 775 | if isinstance(inputs, list): |
| 776 | inputs = '\n'.join(inputs) |
| 777 | |
| 778 | inputs_line_iterator = iter(inputs.split('\n')) |
| 779 | |
| 780 | # sys.setrecursionlimit(10000) |
| 781 | |
| 782 | # @patch('builtins.input', side_effect=inputs.split("\n")) |
| 783 | @patch('builtins.open', mock_open(read_data=inputs)) |
| 784 | @patch('sys.stdin', StringIO(inputs)) |
| 785 | @patch('sys.stdin.readline', lambda *args: next(inputs_line_iterator)) |
| 786 | @patch('sys.stdin.readlines', lambda *args: inputs.split('\n')) |
| 787 | @patch('sys.stdin.read', lambda *args: inputs) |
| 788 | # @patch('sys.stdout.write', print) |
| 789 | def _inner_call_method(_method): |
| 790 | try: |
| 791 | return _method() |
| 792 | except SystemExit: |
| 793 | pass |
| 794 | finally: |
| 795 | pass |
| 796 | |
| 797 | return _inner_call_method(method) |
| 798 | |
| 799 | |
| 800 | def reliability_guard(maximum_memory_bytes=None): |
no test coverage detected