mirror of
				https://github.com/janeczku/calibre-web
				synced 2025-10-31 15:23:02 +00:00 
			
		
		
		
	Bugfixes after testrun
This commit is contained in:
		| @@ -53,7 +53,7 @@ from weakref import WeakSet | |||||||
|  |  | ||||||
| log = logger.create() | log = logger.create() | ||||||
|  |  | ||||||
| cc_exceptions = ['composite'] | cc_exceptions = ['composite', 'series'] | ||||||
| cc_classes = {} | cc_classes = {} | ||||||
|  |  | ||||||
| Base = declarative_base() | Base = declarative_base() | ||||||
| @@ -472,7 +472,6 @@ class CalibreDB: | |||||||
|     # This is a WeakSet so that references here don't keep other CalibreDB |     # This is a WeakSet so that references here don't keep other CalibreDB | ||||||
|     # instances alive once they reach the end of their respective scopes |     # instances alive once they reach the end of their respective scopes | ||||||
|     instances = WeakSet() |     instances = WeakSet() | ||||||
|     series = False |  | ||||||
|  |  | ||||||
|     def __init__(self, expire_on_commit=True, init=False): |     def __init__(self, expire_on_commit=True, init=False): | ||||||
|         """ Initialize a new CalibreDB session |         """ Initialize a new CalibreDB session | ||||||
| @@ -500,7 +499,6 @@ class CalibreDB: | |||||||
|         for row in cc: |         for row in cc: | ||||||
|             if row.datatype not in cc_exceptions: |             if row.datatype not in cc_exceptions: | ||||||
|                 if row.datatype == 'series': |                 if row.datatype == 'series': | ||||||
|                     cls.series = True |  | ||||||
|                     dicttable = {'__tablename__': 'books_custom_column_' + str(row.id) + '_link', |                     dicttable = {'__tablename__': 'books_custom_column_' + str(row.id) + '_link', | ||||||
|                                  'id': Column(Integer, primary_key=True), |                                  'id': Column(Integer, primary_key=True), | ||||||
|                                  'book': Column(Integer, ForeignKey('books.id'), |                                  'book': Column(Integer, ForeignKey('books.id'), | ||||||
| @@ -1029,10 +1027,6 @@ class CalibreDB: | |||||||
|                     Base.metadata.remove(table) |                     Base.metadata.remove(table) | ||||||
|  |  | ||||||
|     def reconnect_db(self, config, app_db_path): |     def reconnect_db(self, config, app_db_path): | ||||||
|         if self.series: |  | ||||||
|             from . import isoLanguages, web_server |  | ||||||
|             web_server.stop(True) |  | ||||||
|         else: |  | ||||||
|         self.dispose() |         self.dispose() | ||||||
|         self.engine.dispose() |         self.engine.dispose() | ||||||
|         self.setup_db(config.config_calibre_dir, app_db_path) |         self.setup_db(config.config_calibre_dir, app_db_path) | ||||||
|   | |||||||
							
								
								
									
										10
									
								
								cps/epub.py
									
									
									
									
									
								
							
							
						
						
									
										10
									
								
								cps/epub.py
									
									
									
									
									
								
							| @@ -102,11 +102,11 @@ def get_epub_info(tmp_file_path, original_file_name, original_file_extension): | |||||||
|  |  | ||||||
|     identifiers = [] |     identifiers = [] | ||||||
|     for node in p.xpath('dc:identifier', namespaces=ns): |     for node in p.xpath('dc:identifier', namespaces=ns): | ||||||
|         identifier_name=node.attrib.values()[-1]; |         identifier_name = node.attrib.values()[-1] | ||||||
|         identifier_value=node.text; |         identifier_value = node.text | ||||||
|         if identifier_name in ('uuid','calibre'): |         if identifier_name in ('uuid', 'calibre') or identifier_value is None: | ||||||
|             continue; |             continue | ||||||
|         identifiers.append( [identifier_name, identifier_value] ) |         identifiers.append([identifier_name, identifier_value]) | ||||||
|  |  | ||||||
|     if not epub_metadata['title']: |     if not epub_metadata['title']: | ||||||
|         title = original_file_name |         title = original_file_name | ||||||
|   | |||||||
| @@ -33,7 +33,7 @@ def get_scheduled_tasks(reconnect=True): | |||||||
|         tasks.append([lambda: TaskReconnectDatabase(), 'reconnect', False]) |         tasks.append([lambda: TaskReconnectDatabase(), 'reconnect', False]) | ||||||
|  |  | ||||||
|     # ToDo make configurable. Generate metadata.opf file for each changed book |     # ToDo make configurable. Generate metadata.opf file for each changed book | ||||||
|     if True: |     if False: | ||||||
|         tasks.append([lambda: TaskBackupMetadata("en"), 'backup metadata', False]) |         tasks.append([lambda: TaskBackupMetadata("en"), 'backup metadata', False]) | ||||||
|  |  | ||||||
|     # Generate all missing book cover thumbnails |     # Generate all missing book cover thumbnails | ||||||
|   | |||||||
| @@ -796,6 +796,7 @@ def create_anonymous_user(_session): | |||||||
| def create_admin_user(_session): | def create_admin_user(_session): | ||||||
|     user = User() |     user = User() | ||||||
|     user.name = "admin" |     user.name = "admin" | ||||||
|  |     user.email = "admin@example.org" | ||||||
|     user.role = constants.ADMIN_USER_ROLES |     user.role = constants.ADMIN_USER_ROLES | ||||||
|     user.sidebar_view = constants.ADMIN_USER_SIDEBAR |     user.sidebar_view = constants.ADMIN_USER_SIDEBAR | ||||||
|  |  | ||||||
|   | |||||||
| @@ -47,7 +47,7 @@ install_requires = | |||||||
| 	backports_abc>=0.4 | 	backports_abc>=0.4 | ||||||
| 	Flask>=1.0.2,<2.1.0 | 	Flask>=1.0.2,<2.1.0 | ||||||
| 	iso-639>=0.4.5,<0.5.0 | 	iso-639>=0.4.5,<0.5.0 | ||||||
| 	PyPDF3>=1.0.0,<1.0.7 | 	PyPDF2>=1.20,<2.11.0 | ||||||
| 	pytz>=2016.10 | 	pytz>=2016.10 | ||||||
| 	requests>=2.11.1,<2.28.0 | 	requests>=2.11.1,<2.28.0 | ||||||
| 	SQLAlchemy>=1.3.0,<1.5.0 | 	SQLAlchemy>=1.3.0,<1.5.0 | ||||||
| @@ -97,5 +97,5 @@ comics = | |||||||
| 	natsort>=2.2.0,<8.2.0 | 	natsort>=2.2.0,<8.2.0 | ||||||
| 	comicapi>=2.2.0,<2.3.0 | 	comicapi>=2.2.0,<2.3.0 | ||||||
| kobo =  | kobo =  | ||||||
| 	jsonschema>=3.2.0,<4.8.0 | 	jsonschema>=3.2.0,<4.9.0 | ||||||
|  |  | ||||||
|   | |||||||
| @@ -37,20 +37,20 @@ | |||||||
|       <div class="row"> |       <div class="row"> | ||||||
|         <div class="col-xs-6 col-md-6 col-sm-offset-3" style="margin-top:50px;"> |         <div class="col-xs-6 col-md-6 col-sm-offset-3" style="margin-top:50px;"> | ||||||
|              |              | ||||||
|             <p class='text-justify attribute'><strong>Start Time: </strong>2022-07-29 22:16:18</p> |             <p class='text-justify attribute'><strong>Start Time: </strong>2022-09-24 21:26:53</p> | ||||||
|              |              | ||||||
|         </div> |         </div> | ||||||
|       </div> |       </div> | ||||||
|       <div class="row"> |       <div class="row"> | ||||||
|         <div class="col-xs-6 col-md-6 col-sm-offset-3"> |         <div class="col-xs-6 col-md-6 col-sm-offset-3"> | ||||||
|              |              | ||||||
|             <p class='text-justify attribute'><strong>Stop Time: </strong>2022-07-30 04:12:54</p> |             <p class='text-justify attribute'><strong>Stop Time: </strong>2022-09-25 03:49:07</p> | ||||||
|              |              | ||||||
|         </div> |         </div> | ||||||
|       </div> |       </div> | ||||||
|       <div class="row"> |       <div class="row"> | ||||||
|         <div class="col-xs-6 col-md-6 col-sm-offset-3"> |         <div class="col-xs-6 col-md-6 col-sm-offset-3"> | ||||||
|            <p class='text-justify attribute'><strong>Duration: </strong>5h 1 min</p> |            <p class='text-justify attribute'><strong>Duration: </strong>5h 27 min</p> | ||||||
|         </div> |         </div> | ||||||
|       </div> |       </div> | ||||||
|       </div> |       </div> | ||||||
| @@ -465,11 +465,11 @@ | |||||||
|      |      | ||||||
|  |  | ||||||
|  |  | ||||||
|     <tr id="su" class="failClass"> |     <tr id="su" class="passClass"> | ||||||
|         <td>TestEbookConvertCalibre</td> |         <td>TestEbookConvertCalibre</td> | ||||||
|         <td class="text-center">15</td> |         <td class="text-center">15</td> | ||||||
|         <td class="text-center">13</td> |         <td class="text-center">15</td> | ||||||
|         <td class="text-center">2</td> |         <td class="text-center">0</td> | ||||||
|         <td class="text-center">0</td> |         <td class="text-center">0</td> | ||||||
|         <td class="text-center">0</td> |         <td class="text-center">0</td> | ||||||
|         <td class="text-center"> |         <td class="text-center"> | ||||||
| @@ -506,31 +506,11 @@ | |||||||
|      |      | ||||||
|      |      | ||||||
|      |      | ||||||
|         <tr id="ft6.4" class="none bg-danger"> |         <tr id='pt6.4' class='hiddenRow bg-success'> | ||||||
|             <td> |             <td> | ||||||
|                 <div class='testcase'>TestEbookConvertCalibre - test_convert_failed_and_email</div> |                 <div class='testcase'>TestEbookConvertCalibre - test_convert_failed_and_email</div> | ||||||
|             </td> |             </td> | ||||||
|             <td colspan='6'> |             <td colspan='6' align='center'>PASS</td> | ||||||
|                 <div class="text-center"> |  | ||||||
|                     <a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_ft6.4')">FAIL</a> |  | ||||||
|                 </div> |  | ||||||
|                 <!--css div popup start--> |  | ||||||
|                 <div id="div_ft6.4" class="popup_window test_output" style="display:block;"> |  | ||||||
|                     <div class='close_button pull-right'> |  | ||||||
|                         <button type="button" class="close" aria-label="Close" onfocus="this.blur();" |  | ||||||
|                                 onclick="document.getElementById('div_ft6.4').style.display='none'"><span |  | ||||||
|                                 aria-hidden="true">×</span></button> |  | ||||||
|                     </div> |  | ||||||
|                     <div class="text-left pull-left"> |  | ||||||
|                         <pre class="text-left">Traceback (most recent call last): |  | ||||||
|   File "/home/ozzie/Development/calibre-web-test/test/test_ebook_convert.py", line 260, in test_convert_failed_and_email |  | ||||||
|     self.assertEqual(1, task_len) |  | ||||||
| AssertionError: 1 != 0</pre> |  | ||||||
|                     </div> |  | ||||||
|                     <div class="clearfix"></div> |  | ||||||
|                 </div> |  | ||||||
|                 <!--css div popup end--> |  | ||||||
|             </td> |  | ||||||
|         </tr> |         </tr> | ||||||
|      |      | ||||||
|      |      | ||||||
| @@ -544,32 +524,11 @@ AssertionError: 1 != 0</pre> | |||||||
|      |      | ||||||
|      |      | ||||||
|      |      | ||||||
|         <tr id="ft6.6" class="none bg-danger"> |         <tr id='pt6.6' class='hiddenRow bg-success'> | ||||||
|             <td> |             <td> | ||||||
|                 <div class='testcase'>TestEbookConvertCalibre - test_convert_options</div> |                 <div class='testcase'>TestEbookConvertCalibre - test_convert_options</div> | ||||||
|             </td> |             </td> | ||||||
|             <td colspan='6'> |             <td colspan='6' align='center'>PASS</td> | ||||||
|                 <div class="text-center"> |  | ||||||
|                     <a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_ft6.6')">FAIL</a> |  | ||||||
|                 </div> |  | ||||||
|                 <!--css div popup start--> |  | ||||||
|                 <div id="div_ft6.6" class="popup_window test_output" style="display:block;"> |  | ||||||
|                     <div class='close_button pull-right'> |  | ||||||
|                         <button type="button" class="close" aria-label="Close" onfocus="this.blur();" |  | ||||||
|                                 onclick="document.getElementById('div_ft6.6').style.display='none'"><span |  | ||||||
|                                 aria-hidden="true">×</span></button> |  | ||||||
|                     </div> |  | ||||||
|                     <div class="text-left pull-left"> |  | ||||||
|                         <pre class="text-left">Traceback (most recent call last): |  | ||||||
|   File "/home/ozzie/Development/calibre-web-test/test/test_ebook_convert.py", line 622, in test_convert_options |  | ||||||
|     self.assertEqual(from_book, set(['-- select an option --', "TXT"])) |  | ||||||
| AssertionError: Items in the first set but not the second: |  | ||||||
| 'AZW3'</pre> |  | ||||||
|                     </div> |  | ||||||
|                     <div class="clearfix"></div> |  | ||||||
|                 </div> |  | ||||||
|                 <!--css div popup end--> |  | ||||||
|             </td> |  | ||||||
|         </tr> |         </tr> | ||||||
|      |      | ||||||
|      |      | ||||||
| @@ -2153,11 +2112,11 @@ AssertionError: 0.0 not greater than or equal to 0.05</pre> | |||||||
|      |      | ||||||
|  |  | ||||||
|  |  | ||||||
|     <tr id="su" class="passClass"> |     <tr id="su" class="failClass"> | ||||||
|         <td>TestGoodreads</td> |         <td>TestGoodreads</td> | ||||||
|         <td class="text-center">3</td> |         <td class="text-center">3</td> | ||||||
|         <td class="text-center">3</td> |         <td class="text-center">2</td> | ||||||
|         <td class="text-center">0</td> |         <td class="text-center">1</td> | ||||||
|         <td class="text-center">0</td> |         <td class="text-center">0</td> | ||||||
|         <td class="text-center">0</td> |         <td class="text-center">0</td> | ||||||
|         <td class="text-center"> |         <td class="text-center"> | ||||||
| @@ -2167,11 +2126,31 @@ AssertionError: 0.0 not greater than or equal to 0.05</pre> | |||||||
|  |  | ||||||
|      |      | ||||||
|      |      | ||||||
|         <tr id='pt24.1' class='hiddenRow bg-success'> |         <tr id="ft24.1" class="none bg-danger"> | ||||||
|             <td> |             <td> | ||||||
|                 <div class='testcase'>TestGoodreads - test_author_page</div> |                 <div class='testcase'>TestGoodreads - test_author_page</div> | ||||||
|             </td> |             </td> | ||||||
|             <td colspan='6' align='center'>PASS</td> |             <td colspan='6'> | ||||||
|  |                 <div class="text-center"> | ||||||
|  |                     <a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_ft24.1')">FAIL</a> | ||||||
|  |                 </div> | ||||||
|  |                 <!--css div popup start--> | ||||||
|  |                 <div id="div_ft24.1" class="popup_window test_output" style="display:block;"> | ||||||
|  |                     <div class='close_button pull-right'> | ||||||
|  |                         <button type="button" class="close" aria-label="Close" onfocus="this.blur();" | ||||||
|  |                                 onclick="document.getElementById('div_ft24.1').style.display='none'"><span | ||||||
|  |                                 aria-hidden="true">×</span></button> | ||||||
|  |                     </div> | ||||||
|  |                     <div class="text-left pull-left"> | ||||||
|  |                         <pre class="text-left">Traceback (most recent call last): | ||||||
|  |   File "/home/ozzie/Development/calibre-web-test/test/test_goodreads.py", line 108, in test_author_page | ||||||
|  |     self.assertFalse(self.check_element_on_page((By.CLASS_NAME, "author-photo"))) | ||||||
|  | AssertionError: <selenium.webdriver.remote.webelement.WebElement (session="2520e615-2568-4cc5-b588-44e563fa14a2", element="138199ad-2df2-4990-8382-172c41178915")> is not false</pre> | ||||||
|  |                     </div> | ||||||
|  |                     <div class="clearfix"></div> | ||||||
|  |                 </div> | ||||||
|  |                 <!--css div popup end--> | ||||||
|  |             </td> | ||||||
|         </tr> |         </tr> | ||||||
|      |      | ||||||
|      |      | ||||||
| @@ -3645,11 +3624,11 @@ AssertionError: 0.0 not greater than or equal to 0.05</pre> | |||||||
|      |      | ||||||
|  |  | ||||||
|  |  | ||||||
|     <tr id="su" class="skipClass"> |     <tr id="su" class="failClass"> | ||||||
|         <td>TestThumbnails</td> |         <td>TestThumbnails</td> | ||||||
|         <td class="text-center">8</td> |         <td class="text-center">8</td> | ||||||
|         <td class="text-center">7</td> |         <td class="text-center">2</td> | ||||||
|         <td class="text-center">0</td> |         <td class="text-center">5</td> | ||||||
|         <td class="text-center">0</td> |         <td class="text-center">0</td> | ||||||
|         <td class="text-center">1</td> |         <td class="text-center">1</td> | ||||||
|         <td class="text-center"> |         <td class="text-center"> | ||||||
| @@ -3668,29 +3647,89 @@ AssertionError: 0.0 not greater than or equal to 0.05</pre> | |||||||
|      |      | ||||||
|      |      | ||||||
|      |      | ||||||
|         <tr id='pt42.2' class='hiddenRow bg-success'> |         <tr id="ft42.2" class="none bg-danger"> | ||||||
|             <td> |             <td> | ||||||
|                 <div class='testcase'>TestThumbnails - test_cache_of_deleted_book</div> |                 <div class='testcase'>TestThumbnails - test_cache_of_deleted_book</div> | ||||||
|             </td> |             </td> | ||||||
|             <td colspan='6' align='center'>PASS</td> |             <td colspan='6'> | ||||||
|  |                 <div class="text-center"> | ||||||
|  |                     <a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_ft42.2')">FAIL</a> | ||||||
|  |                 </div> | ||||||
|  |                 <!--css div popup start--> | ||||||
|  |                 <div id="div_ft42.2" class="popup_window test_output" style="display:block;"> | ||||||
|  |                     <div class='close_button pull-right'> | ||||||
|  |                         <button type="button" class="close" aria-label="Close" onfocus="this.blur();" | ||||||
|  |                                 onclick="document.getElementById('div_ft42.2').style.display='none'"><span | ||||||
|  |                                 aria-hidden="true">×</span></button> | ||||||
|  |                     </div> | ||||||
|  |                     <div class="text-left pull-left"> | ||||||
|  |                         <pre class="text-left">Traceback (most recent call last): | ||||||
|  |   File "/home/ozzie/Development/calibre-web-test/test/test_thumbnails.py", line 193, in test_cache_of_deleted_book | ||||||
|  |     self.assertEqual(len(res), 1) | ||||||
|  | AssertionError: 2 != 1</pre> | ||||||
|  |                     </div> | ||||||
|  |                     <div class="clearfix"></div> | ||||||
|  |                 </div> | ||||||
|  |                 <!--css div popup end--> | ||||||
|  |             </td> | ||||||
|         </tr> |         </tr> | ||||||
|      |      | ||||||
|      |      | ||||||
|      |      | ||||||
|         <tr id='pt42.3' class='hiddenRow bg-success'> |         <tr id="ft42.3" class="none bg-danger"> | ||||||
|             <td> |             <td> | ||||||
|                 <div class='testcase'>TestThumbnails - test_cover_cache_on_database_change</div> |                 <div class='testcase'>TestThumbnails - test_cover_cache_on_database_change</div> | ||||||
|             </td> |             </td> | ||||||
|             <td colspan='6' align='center'>PASS</td> |             <td colspan='6'> | ||||||
|  |                 <div class="text-center"> | ||||||
|  |                     <a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_ft42.3')">FAIL</a> | ||||||
|  |                 </div> | ||||||
|  |                 <!--css div popup start--> | ||||||
|  |                 <div id="div_ft42.3" class="popup_window test_output" style="display:block;"> | ||||||
|  |                     <div class='close_button pull-right'> | ||||||
|  |                         <button type="button" class="close" aria-label="Close" onfocus="this.blur();" | ||||||
|  |                                 onclick="document.getElementById('div_ft42.3').style.display='none'"><span | ||||||
|  |                                 aria-hidden="true">×</span></button> | ||||||
|  |                     </div> | ||||||
|  |                     <div class="text-left pull-left"> | ||||||
|  |                         <pre class="text-left">Traceback (most recent call last): | ||||||
|  |   File "/home/ozzie/Development/calibre-web-test/test/test_thumbnails.py", line 80, in test_cover_cache_on_database_change | ||||||
|  |     self.assertLessEqual(len(res), 1, res) | ||||||
|  | AssertionError: 2 not less than or equal to 1 : [{'user': 'System', 'task': 'Metadata backup: Backing up Metadata', 'result': 'Failed', 'progress': '100 %', 'duration': ' 0s', 'start': '9/25/22, 2:16 AM'}, {'user': 'System', 'task': 'Cover Thumbnails: Generated 222 cover thumbnails', 'result': 'Finished', 'progress': '100 %', 'duration': ' 5s', 'start': '9/25/22, 2:16 AM'}]</pre> | ||||||
|  |                     </div> | ||||||
|  |                     <div class="clearfix"></div> | ||||||
|  |                 </div> | ||||||
|  |                 <!--css div popup end--> | ||||||
|  |             </td> | ||||||
|         </tr> |         </tr> | ||||||
|      |      | ||||||
|      |      | ||||||
|      |      | ||||||
|         <tr id='pt42.4' class='hiddenRow bg-success'> |         <tr id="ft42.4" class="none bg-danger"> | ||||||
|             <td> |             <td> | ||||||
|                 <div class='testcase'>TestThumbnails - test_cover_change_on_upload_new_cover</div> |                 <div class='testcase'>TestThumbnails - test_cover_change_on_upload_new_cover</div> | ||||||
|             </td> |             </td> | ||||||
|             <td colspan='6' align='center'>PASS</td> |             <td colspan='6'> | ||||||
|  |                 <div class="text-center"> | ||||||
|  |                     <a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_ft42.4')">FAIL</a> | ||||||
|  |                 </div> | ||||||
|  |                 <!--css div popup start--> | ||||||
|  |                 <div id="div_ft42.4" class="popup_window test_output" style="display:block;"> | ||||||
|  |                     <div class='close_button pull-right'> | ||||||
|  |                         <button type="button" class="close" aria-label="Close" onfocus="this.blur();" | ||||||
|  |                                 onclick="document.getElementById('div_ft42.4').style.display='none'"><span | ||||||
|  |                                 aria-hidden="true">×</span></button> | ||||||
|  |                     </div> | ||||||
|  |                     <div class="text-left pull-left"> | ||||||
|  |                         <pre class="text-left">Traceback (most recent call last): | ||||||
|  |   File "/home/ozzie/Development/calibre-web-test/test/test_thumbnails.py", line 123, in test_cover_change_on_upload_new_cover | ||||||
|  |     self.assertLessEqual(len(res), 1) | ||||||
|  | AssertionError: 2 not less than or equal to 1</pre> | ||||||
|  |                     </div> | ||||||
|  |                     <div class="clearfix"></div> | ||||||
|  |                 </div> | ||||||
|  |                 <!--css div popup end--> | ||||||
|  |             </td> | ||||||
|         </tr> |         </tr> | ||||||
|      |      | ||||||
|      |      | ||||||
| @@ -3704,11 +3743,31 @@ AssertionError: 0.0 not greater than or equal to 0.05</pre> | |||||||
|      |      | ||||||
|      |      | ||||||
|      |      | ||||||
|         <tr id='pt42.6' class='hiddenRow bg-success'> |         <tr id="ft42.6" class="none bg-danger"> | ||||||
|             <td> |             <td> | ||||||
|                 <div class='testcase'>TestThumbnails - test_cover_on_upload_book</div> |                 <div class='testcase'>TestThumbnails - test_cover_on_upload_book</div> | ||||||
|             </td> |             </td> | ||||||
|             <td colspan='6' align='center'>PASS</td> |             <td colspan='6'> | ||||||
|  |                 <div class="text-center"> | ||||||
|  |                     <a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_ft42.6')">FAIL</a> | ||||||
|  |                 </div> | ||||||
|  |                 <!--css div popup start--> | ||||||
|  |                 <div id="div_ft42.6" class="popup_window test_output" style="display:block;"> | ||||||
|  |                     <div class='close_button pull-right'> | ||||||
|  |                         <button type="button" class="close" aria-label="Close" onfocus="this.blur();" | ||||||
|  |                                 onclick="document.getElementById('div_ft42.6').style.display='none'"><span | ||||||
|  |                                 aria-hidden="true">×</span></button> | ||||||
|  |                     </div> | ||||||
|  |                     <div class="text-left pull-left"> | ||||||
|  |                         <pre class="text-left">Traceback (most recent call last): | ||||||
|  |   File "/home/ozzie/Development/calibre-web-test/test/test_thumbnails.py", line 230, in test_cover_on_upload_book | ||||||
|  |     self.assertLessEqual(len(res), 1) | ||||||
|  | AssertionError: 2 not less than or equal to 1</pre> | ||||||
|  |                     </div> | ||||||
|  |                     <div class="clearfix"></div> | ||||||
|  |                 </div> | ||||||
|  |                 <!--css div popup end--> | ||||||
|  |             </td> | ||||||
|         </tr> |         </tr> | ||||||
|      |      | ||||||
|      |      | ||||||
| @@ -3722,101 +3781,26 @@ AssertionError: 0.0 not greater than or equal to 0.05</pre> | |||||||
|      |      | ||||||
|      |      | ||||||
|      |      | ||||||
|         <tr id='pt42.8' class='hiddenRow bg-success'> |         <tr id="ft42.8" class="none bg-danger"> | ||||||
|             <td> |             <td> | ||||||
|                 <div class='testcase'>TestThumbnails - test_sideloaded_book</div> |                 <div class='testcase'>TestThumbnails - test_sideloaded_book</div> | ||||||
|             </td> |             </td> | ||||||
|             <td colspan='6' align='center'>PASS</td> |  | ||||||
|         </tr> |  | ||||||
|      |  | ||||||
|      |  | ||||||
|  |  | ||||||
|  |  | ||||||
|     <tr id="su" class="skipClass"> |  | ||||||
|         <td>TestUpdater</td> |  | ||||||
|         <td class="text-center">9</td> |  | ||||||
|         <td class="text-center">8</td> |  | ||||||
|         <td class="text-center">0</td> |  | ||||||
|         <td class="text-center">0</td> |  | ||||||
|         <td class="text-center">1</td> |  | ||||||
|         <td class="text-center"> |  | ||||||
|             <a onclick="showClassDetail('c43', 9)">Detail</a> |  | ||||||
|         </td> |  | ||||||
|     </tr> |  | ||||||
|  |  | ||||||
|      |  | ||||||
|      |  | ||||||
|         <tr id='pt43.1' class='hiddenRow bg-success'> |  | ||||||
|             <td> |  | ||||||
|                 <div class='testcase'>TestUpdater - test_check_update_nightly_errors</div> |  | ||||||
|             </td> |  | ||||||
|             <td colspan='6' align='center'>PASS</td> |  | ||||||
|         </tr> |  | ||||||
|      |  | ||||||
|      |  | ||||||
|      |  | ||||||
|         <tr id='pt43.2' class='hiddenRow bg-success'> |  | ||||||
|             <td> |  | ||||||
|                 <div class='testcase'>TestUpdater - test_check_update_nightly_request_errors</div> |  | ||||||
|             </td> |  | ||||||
|             <td colspan='6' align='center'>PASS</td> |  | ||||||
|         </tr> |  | ||||||
|      |  | ||||||
|      |  | ||||||
|      |  | ||||||
|         <tr id='pt43.3' class='hiddenRow bg-success'> |  | ||||||
|             <td> |  | ||||||
|                 <div class='testcase'>TestUpdater - test_check_update_stable_errors</div> |  | ||||||
|             </td> |  | ||||||
|             <td colspan='6' align='center'>PASS</td> |  | ||||||
|         </tr> |  | ||||||
|      |  | ||||||
|      |  | ||||||
|      |  | ||||||
|         <tr id='pt43.4' class='hiddenRow bg-success'> |  | ||||||
|             <td> |  | ||||||
|                 <div class='testcase'>TestUpdater - test_check_update_stable_versions</div> |  | ||||||
|             </td> |  | ||||||
|             <td colspan='6' align='center'>PASS</td> |  | ||||||
|         </tr> |  | ||||||
|      |  | ||||||
|      |  | ||||||
|      |  | ||||||
|         <tr id='pt43.5' class='hiddenRow bg-success'> |  | ||||||
|             <td> |  | ||||||
|                 <div class='testcase'>TestUpdater - test_perform_update</div> |  | ||||||
|             </td> |  | ||||||
|             <td colspan='6' align='center'>PASS</td> |  | ||||||
|         </tr> |  | ||||||
|      |  | ||||||
|      |  | ||||||
|      |  | ||||||
|         <tr id='pt43.6' class='hiddenRow bg-success'> |  | ||||||
|             <td> |  | ||||||
|                 <div class='testcase'>TestUpdater - test_perform_update_stable_errors</div> |  | ||||||
|             </td> |  | ||||||
|             <td colspan='6' align='center'>PASS</td> |  | ||||||
|         </tr> |  | ||||||
|      |  | ||||||
|      |  | ||||||
|      |  | ||||||
|         <tr id="st43.7" class="none bg-warning"> |  | ||||||
|             <td> |  | ||||||
|                 <div class='testcase'>TestUpdater - test_perform_update_timeout</div> |  | ||||||
|             </td> |  | ||||||
|             <td colspan='6'> |             <td colspan='6'> | ||||||
|                 <div class="text-center"> |                 <div class="text-center"> | ||||||
|                     <a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_st43.7')">SKIP</a> |                     <a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_ft42.8')">FAIL</a> | ||||||
|                 </div> |                 </div> | ||||||
|                 <!--css div popup start--> |                 <!--css div popup start--> | ||||||
|                 <div id="div_st43.7" class="popup_window test_output" style="display:none;"> |                 <div id="div_ft42.8" class="popup_window test_output" style="display:block;"> | ||||||
|                     <div class='close_button pull-right'> |                     <div class='close_button pull-right'> | ||||||
|                         <button type="button" class="close" aria-label="Close" onfocus="this.blur();" |                         <button type="button" class="close" aria-label="Close" onfocus="this.blur();" | ||||||
|                                 onclick="document.getElementById('div_st43.7').style.display='none'"><span |                                 onclick="document.getElementById('div_ft42.8').style.display='none'"><span | ||||||
|                                 aria-hidden="true">×</span></button> |                                 aria-hidden="true">×</span></button> | ||||||
|                     </div> |                     </div> | ||||||
|                     <div class="text-left pull-left"> |                     <div class="text-left pull-left"> | ||||||
|                         <pre class="text-left">Takes too long</pre> |                         <pre class="text-left">Traceback (most recent call last): | ||||||
|  |   File "/home/ozzie/Development/calibre-web-test/test/test_thumbnails.py", line 320, in test_sideloaded_book | ||||||
|  |     self.assertGreaterEqual(diff(BytesIO(list_cover), BytesIO(new_list_cover), delete_diff_file=True), 0.04) | ||||||
|  | AssertionError: 0.0 not greater than or equal to 0.04</pre> | ||||||
|                     </div> |                     </div> | ||||||
|                     <div class="clearfix"></div> |                     <div class="clearfix"></div> | ||||||
|                 </div> |                 </div> | ||||||
| @@ -3826,20 +3810,51 @@ AssertionError: 0.0 not greater than or equal to 0.05</pre> | |||||||
|      |      | ||||||
|      |      | ||||||
|  |  | ||||||
|         <tr id='pt43.8' class='hiddenRow bg-success'> |  | ||||||
|             <td> |     <tr id="su" class="errorClass"> | ||||||
|                 <div class='testcase'>TestUpdater - test_reconnect_database</div> |         <td>_FailedTest</td> | ||||||
|  |         <td class="text-center">1</td> | ||||||
|  |         <td class="text-center">0</td> | ||||||
|  |         <td class="text-center">0</td> | ||||||
|  |         <td class="text-center">1</td> | ||||||
|  |         <td class="text-center">0</td> | ||||||
|  |         <td class="text-center"> | ||||||
|  |             <a onclick="showClassDetail('c43', 1)">Detail</a> | ||||||
|         </td> |         </td> | ||||||
|             <td colspan='6' align='center'>PASS</td> |  | ||||||
|     </tr> |     </tr> | ||||||
|  |  | ||||||
|      |      | ||||||
|      |      | ||||||
|         <tr id='pt43.9' class='hiddenRow bg-success'> |         <tr id="et43.1" class="none bg-info"> | ||||||
|             <td> |             <td> | ||||||
|                 <div class='testcase'>TestUpdater - test_update_write_protect</div> |                 <div class='testcase'>_FailedTest - test_updater</div> | ||||||
|  |             </td> | ||||||
|  |             <td colspan='6'> | ||||||
|  |                 <div class="text-center"> | ||||||
|  |                     <a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_et43.1')">ERROR</a> | ||||||
|  |                 </div> | ||||||
|  |                 <!--css div popup start--> | ||||||
|  |                 <div id="div_et43.1" class="popup_window test_output" style="display:block;"> | ||||||
|  |                     <div class='close_button pull-right'> | ||||||
|  |                         <button type="button" class="close" aria-label="Close" onfocus="this.blur();" | ||||||
|  |                                 onclick="document.getElementById('div_et43.1').style.display='none'"><span | ||||||
|  |                                 aria-hidden="true">×</span></button> | ||||||
|  |                     </div> | ||||||
|  |                     <div class="text-left pull-left"> | ||||||
|  |                         <pre class="text-left">ImportError: Failed to import test module: test_updater | ||||||
|  | Traceback (most recent call last): | ||||||
|  |   File "/usr/lib/python3.10/unittest/loader.py", line 436, in _find_test_path | ||||||
|  |     module = self._get_module_from_name(name) | ||||||
|  |   File "/usr/lib/python3.10/unittest/loader.py", line 377, in _get_module_from_name | ||||||
|  |     __import__(name) | ||||||
|  |   File "/home/ozzie/Development/calibre-web-test/test/test_updater.py", line 20 | ||||||
|  |     p = None | ||||||
|  | IndentationError: unexpected indent</pre> | ||||||
|  |                     </div> | ||||||
|  |                     <div class="clearfix"></div> | ||||||
|  |                 </div> | ||||||
|  |                 <!--css div popup end--> | ||||||
|             </td> |             </td> | ||||||
|             <td colspan='6' align='center'>PASS</td> |  | ||||||
|         </tr> |         </tr> | ||||||
|      |      | ||||||
|      |      | ||||||
| @@ -3896,11 +3911,11 @@ AssertionError: 0.0 not greater than or equal to 0.05</pre> | |||||||
|      |      | ||||||
|  |  | ||||||
|  |  | ||||||
|     <tr id="su" class="passClass"> |     <tr id="su" class="failClass"> | ||||||
|         <td>TestUserList</td> |         <td>TestUserList</td> | ||||||
|         <td class="text-center">18</td> |         <td class="text-center">18</td> | ||||||
|         <td class="text-center">18</td> |         <td class="text-center">17</td> | ||||||
|         <td class="text-center">0</td> |         <td class="text-center">1</td> | ||||||
|         <td class="text-center">0</td> |         <td class="text-center">0</td> | ||||||
|         <td class="text-center">0</td> |         <td class="text-center">0</td> | ||||||
|         <td class="text-center"> |         <td class="text-center"> | ||||||
| @@ -4063,11 +4078,33 @@ AssertionError: 0.0 not greater than or equal to 0.05</pre> | |||||||
|      |      | ||||||
|      |      | ||||||
|      |      | ||||||
|         <tr id='pt45.18' class='hiddenRow bg-success'> |         <tr id="ft45.18" class="none bg-danger"> | ||||||
|             <td> |             <td> | ||||||
|                 <div class='testcase'>TestUserList - test_user_list_sort</div> |                 <div class='testcase'>TestUserList - test_user_list_sort</div> | ||||||
|             </td> |             </td> | ||||||
|             <td colspan='6' align='center'>PASS</td> |             <td colspan='6'> | ||||||
|  |                 <div class="text-center"> | ||||||
|  |                     <a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_ft45.18')">FAIL</a> | ||||||
|  |                 </div> | ||||||
|  |                 <!--css div popup start--> | ||||||
|  |                 <div id="div_ft45.18" class="popup_window test_output" style="display:block;"> | ||||||
|  |                     <div class='close_button pull-right'> | ||||||
|  |                         <button type="button" class="close" aria-label="Close" onfocus="this.blur();" | ||||||
|  |                                 onclick="document.getElementById('div_ft45.18').style.display='none'"><span | ||||||
|  |                                 aria-hidden="true">×</span></button> | ||||||
|  |                     </div> | ||||||
|  |                     <div class="text-left pull-left"> | ||||||
|  |                         <pre class="text-left">Traceback (most recent call last): | ||||||
|  |   File "/home/ozzie/Development/calibre-web-test/test/test_user_list.py", line 556, in test_user_list_sort | ||||||
|  |     self.assertEqual("+", ul['table'][0]['E-mail Address']['text']) | ||||||
|  | AssertionError: '+' != '1al@b.com' | ||||||
|  | - + | ||||||
|  | + 1al@b.com</pre> | ||||||
|  |                     </div> | ||||||
|  |                     <div class="clearfix"></div> | ||||||
|  |                 </div> | ||||||
|  |                 <!--css div popup end--> | ||||||
|  |             </td> | ||||||
|         </tr> |         </tr> | ||||||
|      |      | ||||||
|      |      | ||||||
| @@ -4791,11 +4828,11 @@ AssertionError: 0.0 not greater than or equal to 0.05</pre> | |||||||
|  |  | ||||||
|     <tr id='total_row' class="text-center bg-grey"> |     <tr id='total_row' class="text-center bg-grey"> | ||||||
|         <td>Total</td> |         <td>Total</td> | ||||||
|         <td>423</td> |         <td>415</td> | ||||||
|         <td>413</td> |         <td>400</td> | ||||||
|         <td>3</td> |         <td>8</td> | ||||||
|         <td>0</td> |         <td>1</td> | ||||||
|         <td>7</td> |         <td>6</td> | ||||||
|         <td> </td> |         <td> </td> | ||||||
|     </tr> |     </tr> | ||||||
| </table> | </table> | ||||||
| @@ -4823,13 +4860,13 @@ AssertionError: 0.0 not greater than or equal to 0.05</pre> | |||||||
|            |            | ||||||
|             <tr> |             <tr> | ||||||
|               <th>Platform</th> |               <th>Platform</th> | ||||||
|               <td>Linux 5.15.0-41-generic #44~20.04.1-Ubuntu SMP Fri Jun 24 13:27:29 UTC 2022 x86_64 x86_64</td> |               <td>Linux 5.15.0-48-generic #54-Ubuntu SMP Fri Aug 26 13:26:29 UTC 2022 x86_64 x86_64</td> | ||||||
|               <td>Basic</td> |               <td>Basic</td> | ||||||
|             </tr> |             </tr> | ||||||
|            |            | ||||||
|             <tr> |             <tr> | ||||||
|               <th>Python</th> |               <th>Python</th> | ||||||
|               <td>3.8.10</td> |               <td>3.10.6</td> | ||||||
|               <td>Basic</td> |               <td>Basic</td> | ||||||
|             </tr> |             </tr> | ||||||
|            |            | ||||||
| @@ -4895,7 +4932,7 @@ AssertionError: 0.0 not greater than or equal to 0.05</pre> | |||||||
|            |            | ||||||
|             <tr> |             <tr> | ||||||
|               <th>greenlet</th> |               <th>greenlet</th> | ||||||
|               <td>1.1.2</td> |               <td>1.1.3</td> | ||||||
|               <td>Basic</td> |               <td>Basic</td> | ||||||
|             </tr> |             </tr> | ||||||
|            |            | ||||||
| @@ -4924,14 +4961,14 @@ AssertionError: 0.0 not greater than or equal to 0.05</pre> | |||||||
|             </tr> |             </tr> | ||||||
|            |            | ||||||
|             <tr> |             <tr> | ||||||
|               <th>PyPDF3</th> |               <th>PyPDF2</th> | ||||||
|               <td>1.0.6</td> |               <td>2.10.9</td> | ||||||
|               <td>Basic</td> |               <td>Basic</td> | ||||||
|             </tr> |             </tr> | ||||||
|            |            | ||||||
|             <tr> |             <tr> | ||||||
|               <th>pytz</th> |               <th>pytz</th> | ||||||
|               <td>2022.1</td> |               <td>2022.2.1</td> | ||||||
|               <td>Basic</td> |               <td>Basic</td> | ||||||
|             </tr> |             </tr> | ||||||
|            |            | ||||||
| @@ -4943,7 +4980,7 @@ AssertionError: 0.0 not greater than or equal to 0.05</pre> | |||||||
|            |            | ||||||
|             <tr> |             <tr> | ||||||
|               <th>SQLAlchemy</th> |               <th>SQLAlchemy</th> | ||||||
|               <td>1.4.39</td> |               <td>1.4.41</td> | ||||||
|               <td>Basic</td> |               <td>Basic</td> | ||||||
|             </tr> |             </tr> | ||||||
|            |            | ||||||
| @@ -4961,7 +4998,7 @@ AssertionError: 0.0 not greater than or equal to 0.05</pre> | |||||||
|            |            | ||||||
|             <tr> |             <tr> | ||||||
|               <th>Wand</th> |               <th>Wand</th> | ||||||
|               <td>0.6.8</td> |               <td>0.6.10</td> | ||||||
|               <td>Basic</td> |               <td>Basic</td> | ||||||
|             </tr> |             </tr> | ||||||
|            |            | ||||||
| @@ -4973,7 +5010,7 @@ AssertionError: 0.0 not greater than or equal to 0.05</pre> | |||||||
|            |            | ||||||
|             <tr> |             <tr> | ||||||
|               <th>google-api-python-client</th> |               <th>google-api-python-client</th> | ||||||
|               <td>2.55.0</td> |               <td>2.62.0</td> | ||||||
|               <td>TestCliGdrivedb</td> |               <td>TestCliGdrivedb</td> | ||||||
|             </tr> |             </tr> | ||||||
|            |            | ||||||
| @@ -5003,7 +5040,7 @@ AssertionError: 0.0 not greater than or equal to 0.05</pre> | |||||||
|            |            | ||||||
|             <tr> |             <tr> | ||||||
|               <th>google-api-python-client</th> |               <th>google-api-python-client</th> | ||||||
|               <td>2.55.0</td> |               <td>2.62.0</td> | ||||||
|               <td>TestEbookConvertCalibreGDrive</td> |               <td>TestEbookConvertCalibreGDrive</td> | ||||||
|             </tr> |             </tr> | ||||||
|            |            | ||||||
| @@ -5033,7 +5070,7 @@ AssertionError: 0.0 not greater than or equal to 0.05</pre> | |||||||
|            |            | ||||||
|             <tr> |             <tr> | ||||||
|               <th>google-api-python-client</th> |               <th>google-api-python-client</th> | ||||||
|               <td>2.55.0</td> |               <td>2.62.0</td> | ||||||
|               <td>TestEbookConvertGDriveKepubify</td> |               <td>TestEbookConvertGDriveKepubify</td> | ||||||
|             </tr> |             </tr> | ||||||
|            |            | ||||||
| @@ -5075,7 +5112,7 @@ AssertionError: 0.0 not greater than or equal to 0.05</pre> | |||||||
|            |            | ||||||
|             <tr> |             <tr> | ||||||
|               <th>google-api-python-client</th> |               <th>google-api-python-client</th> | ||||||
|               <td>2.55.0</td> |               <td>2.62.0</td> | ||||||
|               <td>TestEditAuthorsGdrive</td> |               <td>TestEditAuthorsGdrive</td> | ||||||
|             </tr> |             </tr> | ||||||
|            |            | ||||||
| @@ -5111,7 +5148,7 @@ AssertionError: 0.0 not greater than or equal to 0.05</pre> | |||||||
|            |            | ||||||
|             <tr> |             <tr> | ||||||
|               <th>google-api-python-client</th> |               <th>google-api-python-client</th> | ||||||
|               <td>2.55.0</td> |               <td>2.62.0</td> | ||||||
|               <td>TestEditBooksOnGdrive</td> |               <td>TestEditBooksOnGdrive</td> | ||||||
|             </tr> |             </tr> | ||||||
|            |            | ||||||
| @@ -5153,7 +5190,7 @@ AssertionError: 0.0 not greater than or equal to 0.05</pre> | |||||||
|            |            | ||||||
|             <tr> |             <tr> | ||||||
|               <th>google-api-python-client</th> |               <th>google-api-python-client</th> | ||||||
|               <td>2.55.0</td> |               <td>2.62.0</td> | ||||||
|               <td>TestSetupGdrive</td> |               <td>TestSetupGdrive</td> | ||||||
|             </tr> |             </tr> | ||||||
|            |            | ||||||
| @@ -5195,13 +5232,13 @@ AssertionError: 0.0 not greater than or equal to 0.05</pre> | |||||||
|            |            | ||||||
|             <tr> |             <tr> | ||||||
|               <th>jsonschema</th> |               <th>jsonschema</th> | ||||||
|               <td>4.8.0</td> |               <td>4.16.0</td> | ||||||
|               <td>TestKoboSync</td> |               <td>TestKoboSync</td> | ||||||
|             </tr> |             </tr> | ||||||
|            |            | ||||||
|             <tr> |             <tr> | ||||||
|               <th>jsonschema</th> |               <th>jsonschema</th> | ||||||
|               <td>4.8.0</td> |               <td>4.16.0</td> | ||||||
|               <td>TestKoboSyncBig</td> |               <td>TestKoboSyncBig</td> | ||||||
|             </tr> |             </tr> | ||||||
|            |            | ||||||
| @@ -5213,19 +5250,19 @@ AssertionError: 0.0 not greater than or equal to 0.05</pre> | |||||||
|            |            | ||||||
|             <tr> |             <tr> | ||||||
|               <th>jsonschema</th> |               <th>jsonschema</th> | ||||||
|               <td>4.8.0</td> |               <td>4.16.0</td> | ||||||
|               <td>TestLdapLogin</td> |               <td>TestLdapLogin</td> | ||||||
|             </tr> |             </tr> | ||||||
|            |            | ||||||
|             <tr> |             <tr> | ||||||
|               <th>python-ldap</th> |               <th>python-ldap</th> | ||||||
|               <td>3.4.2</td> |               <td>3.4.3</td> | ||||||
|               <td>TestLdapLogin</td> |               <td>TestLdapLogin</td> | ||||||
|             </tr> |             </tr> | ||||||
|            |            | ||||||
|             <tr> |             <tr> | ||||||
|               <th>Flask-Dance</th> |               <th>Flask-Dance</th> | ||||||
|               <td>6.0.0</td> |               <td>6.1.1</td> | ||||||
|               <td>TestOAuthLogin</td> |               <td>TestOAuthLogin</td> | ||||||
|             </tr> |             </tr> | ||||||
|            |            | ||||||
| @@ -5243,7 +5280,7 @@ AssertionError: 0.0 not greater than or equal to 0.05</pre> | |||||||
| </div> | </div> | ||||||
|  |  | ||||||
| <script> | <script> | ||||||
|     drawCircle(413, 3, 0, 7); |     drawCircle(400, 8, 1, 6); | ||||||
|     showCase(5); |     showCase(5); | ||||||
| </script> | </script> | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Ozzie Isaacs
					Ozzie Isaacs