mirror of
				https://github.com/python/cpython.git
				synced 2025-10-31 13:41:24 +00:00 
			
		
		
		
	Issue #26807: mock_open 'files' no longer error on readline at end of file.
Patch from Yolanda Robla.
This commit is contained in:
		
						commit
						c85dd85f1a
					
				
					 4 changed files with 18 additions and 0 deletions
				
			
		|  | @ -2341,6 +2341,8 @@ def _readline_side_effect(): | ||||||
|                 yield handle.readline.return_value |                 yield handle.readline.return_value | ||||||
|         for line in _state[0]: |         for line in _state[0]: | ||||||
|             yield line |             yield line | ||||||
|  |         while True: | ||||||
|  |             yield type(read_data)() | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|     global file_spec |     global file_spec | ||||||
|  |  | ||||||
|  | @ -1440,6 +1440,18 @@ def test_mock_open_alter_readline(self): | ||||||
|         self.assertEqual('abc', first) |         self.assertEqual('abc', first) | ||||||
|         self.assertEqual('abc', second) |         self.assertEqual('abc', second) | ||||||
| 
 | 
 | ||||||
|  |     def test_mock_open_after_eof(self): | ||||||
|  |         # read, readline and readlines should work after end of file. | ||||||
|  |         _open = mock.mock_open(read_data='foo') | ||||||
|  |         h = _open('bar') | ||||||
|  |         h.read() | ||||||
|  |         self.assertEqual('', h.read()) | ||||||
|  |         self.assertEqual('', h.read()) | ||||||
|  |         self.assertEqual('', h.readline()) | ||||||
|  |         self.assertEqual('', h.readline()) | ||||||
|  |         self.assertEqual([], h.readlines()) | ||||||
|  |         self.assertEqual([], h.readlines()) | ||||||
|  | 
 | ||||||
|     def test_mock_parents(self): |     def test_mock_parents(self): | ||||||
|         for Klass in Mock, MagicMock: |         for Klass in Mock, MagicMock: | ||||||
|             m = Klass() |             m = Klass() | ||||||
|  |  | ||||||
|  | @ -1231,6 +1231,7 @@ Ben Roberts | ||||||
| Mark Roberts | Mark Roberts | ||||||
| Andy Robinson | Andy Robinson | ||||||
| Jim Robinson | Jim Robinson | ||||||
|  | Yolanda Robla | ||||||
| Daniel Rocco | Daniel Rocco | ||||||
| Mark Roddy | Mark Roddy | ||||||
| Kevin Rodgers | Kevin Rodgers | ||||||
|  |  | ||||||
|  | @ -290,6 +290,9 @@ Library | ||||||
| - Issue #22274: In the subprocess module, allow stderr to be redirected to | - Issue #22274: In the subprocess module, allow stderr to be redirected to | ||||||
|   stdout even when stdout is not redirected.  Patch by Akira Li. |   stdout even when stdout is not redirected.  Patch by Akira Li. | ||||||
| 
 | 
 | ||||||
|  | - Issue #26807: mock_open 'files' no longer error on readline at end of file. | ||||||
|  |   Patch from Yolanda Robla. | ||||||
|  | 
 | ||||||
| - Issue #25745: Fixed leaking a userptr in curses panel destructor. | - Issue #25745: Fixed leaking a userptr in curses panel destructor. | ||||||
| 
 | 
 | ||||||
| - Issue #26977: Removed unnecessary, and ignored, call to sum of squares helper | - Issue #26977: Removed unnecessary, and ignored, call to sum of squares helper | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Robert Collins
						Robert Collins