<!DOCTYPE html> <html> <head> <title>Calibre-Web Tests</title> <meta name="generator" content=""/> <meta name="version" content=""/> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> <meta name="viewport" content="width=device-width, initial-scale=1"> <!-- Bootstrap --> <link href="./../cps/static/css/libs/bootstrap.min.css" rel="stylesheet"> <!-- jQuery (necessary for Bootstrap's JavaScript plugins) --> <script src="./../cps/static/js/libs/jquery.min.js"></script> <!-- Include all compiled plugins (below), or include individual files as needed --> <script src="./../cps/static/js/libs/bootstrap.min.js"></script> <!-- Project CSS --> <link href="css/runner.css" rel="stylesheet"> <!-- Project JS --> <script src="js/runner.js"></script> </head> <body> <div class="row report-title"> <h1 id='report_title' class="text-center">Calibre-Web Tests</h1> </div> <div class="row"> <div class="col"> <div class="col-xs-12 col-sm-6"> <div class="piechart"> <div> <canvas id="circle" width="350" height="168" ></canvas> </div> </div> </div> <div class="col-xs-12 col-sm-6"> <div class="row"> <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-05-07 17:19:13</p> </div> </div> <div class="row"> <div class="col-xs-6 col-md-6 col-sm-offset-3"> <p class='text-justify attribute'><strong>Stop Time: </strong>2022-05-07 23:07:20</p> </div> </div> <div class="row"> <div class="col-xs-6 col-md-6 col-sm-offset-3"> <p class='text-justify attribute'><strong>Duration: </strong>4h 55 min</p> </div> </div> </div> </div> </div> <div class='report-description'> <div id='report_description' class='row text-center'></div> </div> <div class='text-center buttons'> <div id='show_detail_line' class="btn-group pagination-centered" role="group" aria-label="TESTE"> <button type="button" class="btn btn-success" data-toggle="button" aria-pressed="false" data-placement="top" title="Show only the execution summary" onclick="showCase(0)">Summary </button> <button type="button" class="btn btn-info" data-toggle="button" aria-pressed="false" data-placement="top" title="Show only the execution summary" onclick="showCase(5)">Summary Problems </button> <button type="button" class="btn btn-warning" data-toggle="button" aria-pressed="false" data-placement="top" title="Show skipped test cases" onclick="showCase(3)">Skipped </button> <button type="button" class="btn btn-danger" data-toggle="button" aria-pressed="false" data-placement="top" title="Show the filed test cases" onclick="showCase(1)">Failed </button> <button type="button" class="btn btn-info" data-toggle="button" aria-pressed="false" data-placement="top" title="Show the filed test cases" onclick="showCase(4)">Error </button> <button type="button" class="btn btn-primary" data-toggle="tooltip" aria-pressed="false" data-placement="top" title="Show all test cases" onclick="showCase(2)">All </button> </div> </div> <table id='result_table' class='table table-bordered table-responsive table-curved'> <colgroup> <col/> <col/> <col/> <col/> <col/> <col/> </colgroup> <tr id='header_row' class="text-center bg-grey"> <td>Test Group/Test case</td> <td>Count</td> <td>Pass</td> <td>Fail</td> <td>Error</td> <td>Skip</td> <td>View</td> </tr> <tr id="su" class="passClass"> <td>TestAnonymous</td> <td class="text-center">13</td> <td class="text-center">13</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center"> <a onclick="showClassDetail('c1', 13)">Detail</a> </td> </tr> <tr id='pt1.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestAnonymous - test_check_locale_guest</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt1.2' class='hiddenRow bg-success'> <td> <div class='testcase'>TestAnonymous - test_guest_about</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt1.3' class='hiddenRow bg-success'> <td> <div class='testcase'>TestAnonymous - test_guest_change_visibility_category</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt1.4' class='hiddenRow bg-success'> <td> <div class='testcase'>TestAnonymous - test_guest_change_visibility_format</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt1.5' class='hiddenRow bg-success'> <td> <div class='testcase'>TestAnonymous - test_guest_change_visibility_hot</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt1.6' class='hiddenRow bg-success'> <td> <div class='testcase'>TestAnonymous - test_guest_change_visibility_language</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt1.7' class='hiddenRow bg-success'> <td> <div class='testcase'>TestAnonymous - test_guest_change_visibility_publisher</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt1.8' class='hiddenRow bg-success'> <td> <div class='testcase'>TestAnonymous - test_guest_change_visibility_rated</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt1.9' class='hiddenRow bg-success'> <td> <div class='testcase'>TestAnonymous - test_guest_change_visibility_rating</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt1.10' class='hiddenRow bg-success'> <td> <div class='testcase'>TestAnonymous - test_guest_change_visibility_series</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt1.11' class='hiddenRow bg-success'> <td> <div class='testcase'>TestAnonymous - test_guest_random_books_available</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt1.12' class='hiddenRow bg-success'> <td> <div class='testcase'>TestAnonymous - test_guest_restricted_settings_visibility</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt1.13' class='hiddenRow bg-success'> <td> <div class='testcase'>TestAnonymous - test_guest_visibility_sidebar</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="passClass"> <td>TestCli</td> <td class="text-center">12</td> <td class="text-center">12</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center"> <a onclick="showClassDetail('c2', 12)">Detail</a> </td> </tr> <tr id='pt2.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCli - test_already_started</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt2.2' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCli - test_bind_to_single_interface</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt2.3' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCli - test_change_password</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt2.4' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCli - test_cli_SSL_files</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt2.5' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCli - test_cli_different_folder</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt2.6' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCli - test_cli_different_settings_database</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt2.7' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCli - test_dryrun_update</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt2.8' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCli - test_enable_reconnect</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt2.9' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCli - test_environ_port_setting</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt2.10' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCli - test_no_database</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt2.11' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCli - test_settingsdb_not_writeable</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt2.12' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCli - test_writeonly_static_files</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="passClass"> <td>TestCliGdrivedb</td> <td class="text-center">4</td> <td class="text-center">4</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center"> <a onclick="showClassDetail('c3', 4)">Detail</a> </td> </tr> <tr id='pt3.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCliGdrivedb - test_cli_gdrive_folder</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt3.2' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCliGdrivedb - test_cli_gdrive_location</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt3.3' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCliGdrivedb - test_gdrive_db_nonwrite</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt3.4' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCliGdrivedb - test_no_database</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="passClass"> <td>TestCoverEditBooks</td> <td class="text-center">2</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"> <a onclick="showClassDetail('c4', 2)">Detail</a> </td> </tr> <tr id='pt4.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCoverEditBooks - test_invalid_jpg_hdd</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt4.2' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCoverEditBooks - test_upload_jpg</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="passClass"> <td>TestDeleteDatabase</td> <td class="text-center">1</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"> <a onclick="showClassDetail('c5', 1)">Detail</a> </td> </tr> <tr id='pt5.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestDeleteDatabase - test_delete_books_in_database</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="passClass"> <td>TestEbookConvertCalibre</td> <td class="text-center">15</td> <td class="text-center">15</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center"> <a onclick="showClassDetail('c6', 15)">Detail</a> </td> </tr> <tr id='pt6.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEbookConvertCalibre - test_calibre_log</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt6.2' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEbookConvertCalibre - test_convert_deactivate</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt6.3' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEbookConvertCalibre - test_convert_email</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt6.4' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEbookConvertCalibre - test_convert_failed_and_email</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt6.5' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEbookConvertCalibre - test_convert_only</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt6.6' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEbookConvertCalibre - test_convert_options</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt6.7' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEbookConvertCalibre - test_convert_parameter</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt6.8' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEbookConvertCalibre - test_convert_wrong_excecutable</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt6.9' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEbookConvertCalibre - test_convert_xss</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt6.10' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEbookConvertCalibre - test_email_failed</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt6.11' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEbookConvertCalibre - test_email_only</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt6.12' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEbookConvertCalibre - test_kindle_send_not_configured</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt6.13' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEbookConvertCalibre - test_ssl_smtp_setup_error</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt6.14' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEbookConvertCalibre - test_starttls_smtp_setup_error</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt6.15' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEbookConvertCalibre - test_user_convert_xss</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="failClass"> <td>TestEbookConvertCalibreGDrive</td> <td class="text-center">7</td> <td class="text-center">3</td> <td class="text-center">4</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center"> <a onclick="showClassDetail('c7', 7)">Detail</a> </td> </tr> <tr id="ft7.1" class="none bg-danger"> <td> <div class='testcase'>TestEbookConvertCalibreGDrive - test_convert_email</div> </td> <td colspan='6'> <div class="text-center"> <a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_ft7.1')">FAIL</a> </div> <!--css div popup start--> <div id="div_ft7.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_ft7.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_ebook_convert_gdrive.py", line 200, in test_convert_email self.assertTrue("Convert" in ret[-2]['task']) AssertionError: False is not true</pre> </div> <div class="clearfix"></div> </div> <!--css div popup end--> </td> </tr> <tr id='pt7.2' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEbookConvertCalibreGDrive - test_convert_failed_and_email</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="ft7.3" class="none bg-danger"> <td> <div class='testcase'>TestEbookConvertCalibreGDrive - test_convert_only</div> </td> <td colspan='6'> <div class="text-center"> <a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_ft7.3')">FAIL</a> </div> <!--css div popup start--> <div id="div_ft7.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_ft7.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_ebook_convert_gdrive.py", line 330, in test_convert_only self.assertEqual(ret[-6]['result'], 'Finished') AssertionError: 'Failed' != 'Finished' - Failed + Finished</pre> </div> <div class="clearfix"></div> </div> <!--css div popup end--> </td> </tr> <tr id='pt7.4' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEbookConvertCalibreGDrive - test_convert_parameter</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt7.5' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEbookConvertCalibreGDrive - test_email_failed</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="ft7.6" class="none bg-danger"> <td> <div class='testcase'>TestEbookConvertCalibreGDrive - test_email_only</div> </td> <td colspan='6'> <div class="text-center"> <a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_ft7.6')">FAIL</a> </div> <!--css div popup start--> <div id="div_ft7.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_ft7.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_gdrive.py", line 401, in test_email_only self.assertTrue(self.check_element_on_page((By.ID, "flash_success"))) AssertionError: False is not true</pre> </div> <div class="clearfix"></div> </div> <!--css div popup end--> </td> </tr> <tr id="ft7.7" class="none bg-danger"> <td> <div class='testcase'>TestEbookConvertCalibreGDrive - test_thumbnail_cache</div> </td> <td colspan='6'> <div class="text-center"> <a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_ft7.7')">FAIL</a> </div> <!--css div popup start--> <div id="div_ft7.7" 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_ft7.7').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_gdrive.py", line 442, in test_thumbnail_cache self.assertTrue(os.path.exists(thumbnail_cache_path)) AssertionError: False is not true</pre> </div> <div class="clearfix"></div> </div> <!--css div popup end--> </td> </tr> <tr id="su" class="errorClass"> <td>TestEbookConvertKepubify</td> <td class="text-center">3</td> <td class="text-center">0</td> <td class="text-center">2</td> <td class="text-center">1</td> <td class="text-center">0</td> <td class="text-center"> <a onclick="showClassDetail('c8', 3)">Detail</a> </td> </tr> <tr id="ft8.1" class="none bg-danger"> <td> <div class='testcase'>TestEbookConvertKepubify - test_convert_deactivate</div> </td> <td colspan='6'> <div class="text-center"> <a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_ft8.1')">FAIL</a> </div> <!--css div popup start--> <div id="div_ft8.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_ft8.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_ebook_convert_kepubify.py", line 66, in test_convert_deactivate self.assertFalse(details['kindlebtn']) AssertionError: <selenium.webdriver.remote.webelement.WebElement (session="08f9d634-ab98-4b2a-8ef0-64104fea59e4", element="ccda4037-d63c-46e0-be4e-a8c7917f117f")> is not false</pre> </div> <div class="clearfix"></div> </div> <!--css div popup end--> </td> </tr> <tr id="et8.2" class="none bg-info"> <td> <div class='testcase'>TestEbookConvertKepubify - test_convert_only</div> </td> <td colspan='6'> <div class="text-center"> <a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_et8.2')">ERROR</a> </div> <!--css div popup start--> <div id="div_et8.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_et8.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_ebook_convert_kepubify.py", line 113, in test_convert_only select = Select(vals['btn_from']) File "/home/ozzie/Development/calibre-web-test/venv/lib/python3.8/site-packages/selenium/webdriver/support/select.py", line 36, in __init__ if webelement.tag_name.lower() != "select": AttributeError: 'bool' object has no attribute 'tag_name'</pre> </div> <div class="clearfix"></div> </div> <!--css div popup end--> </td> </tr> <tr id="ft8.3" class="none bg-danger"> <td> <div class='testcase'>TestEbookConvertKepubify - test_convert_wrong_excecutable</div> </td> <td colspan='6'> <div class="text-center"> <a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_ft8.3')">FAIL</a> </div> <!--css div popup start--> <div id="div_ft8.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_ft8.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_ebook_convert_kepubify.py", line 82, in test_convert_wrong_excecutable self.assertFalse(details['kindlebtn']) AssertionError: <selenium.webdriver.remote.webelement.WebElement (session="08f9d634-ab98-4b2a-8ef0-64104fea59e4", element="57c8b86e-6bb9-454c-a20e-0e38c05bf281")> is not false</pre> </div> <div class="clearfix"></div> </div> <!--css div popup end--> </td> </tr> <tr id="su" class="errorClass"> <td>TestEbookConvertGDriveKepubify</td> <td class="text-center">3</td> <td class="text-center">0</td> <td class="text-center">2</td> <td class="text-center">1</td> <td class="text-center">0</td> <td class="text-center"> <a onclick="showClassDetail('c9', 3)">Detail</a> </td> </tr> <tr id="ft9.1" class="none bg-danger"> <td> <div class='testcase'>TestEbookConvertGDriveKepubify - test_convert_deactivate</div> </td> <td colspan='6'> <div class="text-center"> <a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_ft9.1')">FAIL</a> </div> <!--css div popup start--> <div id="div_ft9.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_ft9.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_ebook_convert_kepubify_gdrive.py", line 114, in test_convert_deactivate self.assertFalse(details['kindlebtn']) AssertionError: <selenium.webdriver.remote.webelement.WebElement (session="7761912c-cf57-49f4-88d0-faf36b22e36c", element="2c9a3a10-07d0-4d04-a5a0-ee09f0f3d0a5")> is not false</pre> </div> <div class="clearfix"></div> </div> <!--css div popup end--> </td> </tr> <tr id="et9.2" class="none bg-info"> <td> <div class='testcase'>TestEbookConvertGDriveKepubify - test_convert_only</div> </td> <td colspan='6'> <div class="text-center"> <a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_et9.2')">ERROR</a> </div> <!--css div popup start--> <div id="div_et9.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_et9.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_ebook_convert_kepubify_gdrive.py", line 159, in test_convert_only select = Select(vals['btn_from']) File "/home/ozzie/Development/calibre-web-test/venv/lib/python3.8/site-packages/selenium/webdriver/support/select.py", line 36, in __init__ if webelement.tag_name.lower() != "select": AttributeError: 'bool' object has no attribute 'tag_name'</pre> </div> <div class="clearfix"></div> </div> <!--css div popup end--> </td> </tr> <tr id="ft9.3" class="none bg-danger"> <td> <div class='testcase'>TestEbookConvertGDriveKepubify - test_convert_wrong_excecutable</div> </td> <td colspan='6'> <div class="text-center"> <a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_ft9.3')">FAIL</a> </div> <!--css div popup start--> <div id="div_ft9.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_ft9.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_ebook_convert_kepubify_gdrive.py", line 129, in test_convert_wrong_excecutable self.assertFalse(details['kindlebtn']) AssertionError: <selenium.webdriver.remote.webelement.WebElement (session="7761912c-cf57-49f4-88d0-faf36b22e36c", element="6425825b-eacd-4b24-8a86-84bd729786dc")> is not false</pre> </div> <div class="clearfix"></div> </div> <!--css div popup end--> </td> </tr> <tr id="su" class="skipClass"> <td>TestEditAdditionalBooks</td> <td class="text-center">17</td> <td class="text-center">16</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('c10', 17)">Detail</a> </td> </tr> <tr id='pt10.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditAdditionalBooks - test_cbz_comicinfo</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt10.2' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditAdditionalBooks - test_change_upload_formats</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt10.3' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditAdditionalBooks - test_delete_book</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt10.4' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditAdditionalBooks - test_delete_role</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt10.5' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditAdditionalBooks - test_details_popup</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt10.6' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditAdditionalBooks - test_edit_book_identifier</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt10.7' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditAdditionalBooks - test_edit_book_identifier_capital</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt10.8' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditAdditionalBooks - test_edit_book_identifier_standard</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt10.9' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditAdditionalBooks - test_edit_special_book_identifier</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt10.10' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditAdditionalBooks - test_title_sort</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt10.11' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditAdditionalBooks - test_upload_cbz_coverformats</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt10.12' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditAdditionalBooks - test_upload_edit_role</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt10.13' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditAdditionalBooks - test_upload_metadata_cbr</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt10.14' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditAdditionalBooks - test_upload_metadata_cbt</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='st10.15' class='none bg-warning'> <td> <div class='testcase'>TestEditAdditionalBooks - test_xss_author_edit</div> </td> <td colspan='6' align='center'>SKIP</td> </tr> <tr id='pt10.16' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditAdditionalBooks - test_xss_comment_edit</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt10.17' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditAdditionalBooks - test_xss_custom_comment_edit</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="skipClass"> <td>TestEditBooks</td> <td class="text-center">36</td> <td class="text-center">35</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('c11', 36)">Detail</a> </td> </tr> <tr id='pt11.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooks - test_download_book</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt11.2' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooks - test_edit_author</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt11.3' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooks - test_edit_category</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt11.4' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooks - test_edit_comments</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt11.5' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooks - test_edit_custom_bool</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt11.6' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooks - test_edit_custom_categories</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt11.7' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooks - test_edit_custom_comment</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt11.8' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooks - test_edit_custom_date</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt11.9' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooks - test_edit_custom_float</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt11.10' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooks - test_edit_custom_int</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt11.11' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooks - test_edit_custom_rating</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt11.12' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooks - test_edit_custom_single_select</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt11.13' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooks - test_edit_custom_text</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt11.14' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooks - test_edit_language</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt11.15' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooks - test_edit_publisher</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt11.16' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooks - test_edit_publishing_date</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt11.17' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooks - test_edit_rating</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt11.18' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooks - test_edit_series</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt11.19' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooks - test_edit_title</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="st11.20" class="none bg-warning"> <td> <div class='testcase'>TestEditBooks - test_rename_uppercase_lowercase</div> </td> <td colspan='6'> <div class="text-center"> <a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_st11.20')">SKIP</a> </div> <!--css div popup start--> <div id="div_st11.20" class="popup_window test_output" style="display:none;"> <div class='close_button pull-right'> <button type="button" class="close" aria-label="Close" onfocus="this.blur();" onclick="document.getElementById('div_st11.20').style.display='none'"><span aria-hidden="true">×</span></button> </div> <div class="text-left pull-left"> <pre class="text-left">Not Implemented</pre> </div> <div class="clearfix"></div> </div> <!--css div popup end--> </td> </tr> <tr id='pt11.21' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooks - test_typeahead_author</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt11.22' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooks - test_typeahead_functions</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt11.23' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooks - test_typeahead_language</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt11.24' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooks - test_typeahead_publisher</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt11.25' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooks - test_typeahead_series</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt11.26' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooks - test_typeahead_tag</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt11.27' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooks - test_upload_book_cbr</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt11.28' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooks - test_upload_book_cbt</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt11.29' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooks - test_upload_book_cbz</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt11.30' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooks - test_upload_book_epub</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt11.31' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooks - test_upload_book_fb2</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt11.32' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooks - test_upload_book_lit</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt11.33' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooks - test_upload_book_mobi</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt11.34' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooks - test_upload_book_pdf</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt11.35' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooks - test_upload_cbz_coverformats</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt11.36' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooks - test_upload_cover_hdd</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="passClass"> <td>TestEditAuthors</td> <td class="text-center">6</td> <td class="text-center">6</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center"> <a onclick="showClassDetail('c12', 6)">Detail</a> </td> </tr> <tr id='pt12.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditAuthors - test_change_capital_co_author</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt12.2' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditAuthors - test_change_capital_one_author_one_book</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt12.3' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditAuthors - test_change_capital_one_author_two_books</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt12.4' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditAuthors - test_change_capital_rename_co_author</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt12.5' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditAuthors - test_change_capital_rename_two_co_authors</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt12.6' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditAuthors - test_rename_capital_on_upload</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="passClass"> <td>TestEditAuthorsGdrive</td> <td class="text-center">6</td> <td class="text-center">6</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center"> <a onclick="showClassDetail('c13', 6)">Detail</a> </td> </tr> <tr id='pt13.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditAuthorsGdrive - test_change_capital_co_author</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt13.2' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditAuthorsGdrive - test_change_capital_one_author_one_book</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt13.3' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditAuthorsGdrive - test_change_capital_one_author_two_books</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt13.4' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditAuthorsGdrive - test_change_capital_rename_co_author</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt13.5' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditAuthorsGdrive - test_change_capital_rename_two_co_authors</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt13.6' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditAuthorsGdrive - test_rename_capital_on_upload</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="passClass"> <td>TestEditBooksList</td> <td class="text-center">18</td> <td class="text-center">18</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center"> <a onclick="showClassDetail('c14', 18)">Detail</a> </td> </tr> <tr id='pt14.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooksList - test_bookslist_edit_author</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt14.2' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooksList - test_bookslist_edit_categories</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt14.3' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooksList - test_bookslist_edit_comment</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt14.4' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooksList - test_bookslist_edit_cust_category</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt14.5' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooksList - test_bookslist_edit_cust_comment</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt14.6' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooksList - test_bookslist_edit_cust_enum</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt14.7' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooksList - test_bookslist_edit_cust_float</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt14.8' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooksList - test_bookslist_edit_cust_int</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt14.9' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooksList - test_bookslist_edit_cust_ratings</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt14.10' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooksList - test_bookslist_edit_cust_text</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt14.11' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooksList - test_bookslist_edit_languages</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt14.12' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooksList - test_bookslist_edit_publisher</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt14.13' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooksList - test_bookslist_edit_series</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt14.14' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooksList - test_bookslist_edit_seriesindex</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt14.15' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooksList - test_bookslist_edit_title</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt14.16' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooksList - test_list_visibility</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt14.17' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooksList - test_restricted_rights</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt14.18' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooksList - test_search_books_list</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="passClass"> <td>TestLoadMetadata</td> <td class="text-center">1</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"> <a onclick="showClassDetail('c15', 1)">Detail</a> </td> </tr> <tr id='pt15.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLoadMetadata - test_load_metadata</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="passClass"> <td>TestEditBooksOnGdrive</td> <td class="text-center">18</td> <td class="text-center">18</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center"> <a onclick="showClassDetail('c16', 18)">Detail</a> </td> </tr> <tr id='pt16.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooksOnGdrive - test_download_book</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt16.2' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooksOnGdrive - test_edit_author</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt16.3' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooksOnGdrive - test_edit_category</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt16.4' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooksOnGdrive - test_edit_comments</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt16.5' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooksOnGdrive - test_edit_custom_bool</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt16.6' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooksOnGdrive - test_edit_custom_categories</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt16.7' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooksOnGdrive - test_edit_custom_float</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt16.8' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooksOnGdrive - test_edit_custom_int</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt16.9' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooksOnGdrive - test_edit_custom_rating</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt16.10' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooksOnGdrive - test_edit_custom_single_select</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt16.11' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooksOnGdrive - test_edit_custom_text</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt16.12' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooksOnGdrive - test_edit_language</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt16.13' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooksOnGdrive - test_edit_publisher</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt16.14' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooksOnGdrive - test_edit_rating</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt16.15' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooksOnGdrive - test_edit_series</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt16.16' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooksOnGdrive - test_edit_title</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt16.17' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooksOnGdrive - test_upload_book_lit</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt16.18' class='hiddenRow bg-success'> <td> <div class='testcase'>TestEditBooksOnGdrive - test_watch_metadata</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="passClass"> <td>TestLoadMetadataScholar</td> <td class="text-center">1</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"> <a onclick="showClassDetail('c17', 1)">Detail</a> </td> </tr> <tr id='pt17.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLoadMetadataScholar - test_load_metadata</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="passClass"> <td>TestSTARTTLS</td> <td class="text-center">3</td> <td class="text-center">3</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center"> <a onclick="showClassDetail('c18', 3)">Detail</a> </td> </tr> <tr id='pt18.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestSTARTTLS - test_STARTTLS</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt18.2' class='hiddenRow bg-success'> <td> <div class='testcase'>TestSTARTTLS - test_STARTTLS_SSL_setup_error</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt18.3' class='hiddenRow bg-success'> <td> <div class='testcase'>TestSTARTTLS - test_STARTTLS_resend_password</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="passClass"> <td>TestSSL</td> <td class="text-center">7</td> <td class="text-center">7</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center"> <a onclick="showClassDetail('c19', 7)">Detail</a> </td> </tr> <tr id='pt19.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestSSL - test_SSL_None_setup_error</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt19.2' class='hiddenRow bg-success'> <td> <div class='testcase'>TestSSL - test_SSL_STARTTLS_setup_error</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt19.3' class='hiddenRow bg-success'> <td> <div class='testcase'>TestSSL - test_SSL_logging_email</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt19.4' class='hiddenRow bg-success'> <td> <div class='testcase'>TestSSL - test_SSL_non_admin_user</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt19.5' class='hiddenRow bg-success'> <td> <div class='testcase'>TestSSL - test_SSL_only</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt19.6' class='hiddenRow bg-success'> <td> <div class='testcase'>TestSSL - test_email_limit</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt19.7' class='hiddenRow bg-success'> <td> <div class='testcase'>TestSSL - test_filepicker_two_file</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="passClass"> <td>TestBookDatabase</td> <td class="text-center">1</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"> <a onclick="showClassDetail('c20', 1)">Detail</a> </td> </tr> <tr id='pt20.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestBookDatabase - test_invalid_book_path</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="passClass"> <td>TestErrorReadColumn</td> <td class="text-center">2</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"> <a onclick="showClassDetail('c21', 2)">Detail</a> </td> </tr> <tr id='pt21.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestErrorReadColumn - test_invalid_custom_column</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt21.2' class='hiddenRow bg-success'> <td> <div class='testcase'>TestErrorReadColumn - test_invalid_custom_read_column</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="skipClass"> <td>TestFilePicker</td> <td class="text-center">3</td> <td class="text-center">2</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('c22', 3)">Detail</a> </td> </tr> <tr id='pt22.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestFilePicker - test_filepicker_limited_file</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="st22.2" class="none bg-warning"> <td> <div class='testcase'>TestFilePicker - test_filepicker_new_file</div> </td> <td colspan='6'> <div class="text-center"> <a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_st22.2')">SKIP</a> </div> <!--css div popup start--> <div id="div_st22.2" class="popup_window test_output" style="display:none;"> <div class='close_button pull-right'> <button type="button" class="close" aria-label="Close" onfocus="this.blur();" onclick="document.getElementById('div_st22.2').style.display='none'"><span aria-hidden="true">×</span></button> </div> <div class="text-left pull-left"> <pre class="text-left">Not implemented</pre> </div> <div class="clearfix"></div> </div> <!--css div popup end--> </td> </tr> <tr id='pt22.3' class='hiddenRow bg-success'> <td> <div class='testcase'>TestFilePicker - test_two_filepickers</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="passClass"> <td>TestSetupGdrive</td> <td class="text-center">1</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"> <a onclick="showClassDetail('c23', 1)">Detail</a> </td> </tr> <tr id='pt23.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestSetupGdrive - test_config_gdrive</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="passClass"> <td>TestGoodreads</td> <td class="text-center">3</td> <td class="text-center">3</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center"> <a onclick="showClassDetail('c24', 3)">Detail</a> </td> </tr> <tr id='pt24.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestGoodreads - test_author_page</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt24.2' class='hiddenRow bg-success'> <td> <div class='testcase'>TestGoodreads - test_author_page_invalid</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt24.3' class='hiddenRow bg-success'> <td> <div class='testcase'>TestGoodreads - test_goodreads_about</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="passClass"> <td>TestKoboSync</td> <td class="text-center">11</td> <td class="text-center">11</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center"> <a onclick="showClassDetail('c25', 11)">Detail</a> </td> </tr> <tr id='pt25.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestKoboSync - test_book_download</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt25.2' class='hiddenRow bg-success'> <td> <div class='testcase'>TestKoboSync - test_kobo_about</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt25.3' class='hiddenRow bg-success'> <td> <div class='testcase'>TestKoboSync - test_kobo_sync_selected_shelfs</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt25.4' class='hiddenRow bg-success'> <td> <div class='testcase'>TestKoboSync - test_kobo_upload_book</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt25.5' class='hiddenRow bg-success'> <td> <div class='testcase'>TestKoboSync - test_shelves_add_remove_books</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt25.6' class='hiddenRow bg-success'> <td> <div class='testcase'>TestKoboSync - test_sync_changed_book</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt25.7' class='hiddenRow bg-success'> <td> <div class='testcase'>TestKoboSync - test_sync_invalid</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt25.8' class='hiddenRow bg-success'> <td> <div class='testcase'>TestKoboSync - test_sync_reading_state</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt25.9' class='hiddenRow bg-success'> <td> <div class='testcase'>TestKoboSync - test_sync_shelf</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt25.10' class='hiddenRow bg-success'> <td> <div class='testcase'>TestKoboSync - test_sync_unchanged</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt25.11' class='hiddenRow bg-success'> <td> <div class='testcase'>TestKoboSync - test_sync_upload</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="passClass"> <td>TestKoboSyncBig</td> <td class="text-center">6</td> <td class="text-center">6</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center"> <a onclick="showClassDetail('c26', 6)">Detail</a> </td> </tr> <tr id='pt26.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestKoboSyncBig - test_download_cover</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt26.2' class='hiddenRow bg-success'> <td> <div class='testcase'>TestKoboSyncBig - test_kobo_sync_multi_user</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt26.3' class='hiddenRow bg-success'> <td> <div class='testcase'>TestKoboSyncBig - test_kobo_sync_selected_shelves</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt26.4' class='hiddenRow bg-success'> <td> <div class='testcase'>TestKoboSyncBig - test_sync_changed_book</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt26.5' class='hiddenRow bg-success'> <td> <div class='testcase'>TestKoboSyncBig - test_sync_reading_state</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt26.6' class='hiddenRow bg-success'> <td> <div class='testcase'>TestKoboSyncBig - test_sync_shelf</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="passClass"> <td>TestLdapLogin</td> <td class="text-center">13</td> <td class="text-center">13</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center"> <a onclick="showClassDetail('c27', 13)">Detail</a> </td> </tr> <tr id='pt27.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLdapLogin - test_LDAP_SSL</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt27.2' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLdapLogin - test_LDAP_SSL_CERTIFICATE</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt27.3' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLdapLogin - test_LDAP_STARTTLS</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt27.4' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLdapLogin - test_LDAP_fallback_Login</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt27.5' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLdapLogin - test_LDAP_import</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt27.6' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLdapLogin - test_LDAP_import_memberfield</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt27.7' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLdapLogin - test_LDAP_login</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt27.8' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLdapLogin - test_invalid_LDAP</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt27.9' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLdapLogin - test_ldap_about</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt27.10' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLdapLogin - test_ldap_authentication</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt27.11' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLdapLogin - test_ldap_kobo_sync</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt27.12' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLdapLogin - test_ldap_opds_anonymous</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt27.13' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLdapLogin - test_ldap_opds_download_book</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="passClass"> <td>TestCalibreWebListOrders</td> <td class="text-center">10</td> <td class="text-center">10</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center"> <a onclick="showClassDetail('c28', 10)">Detail</a> </td> </tr> <tr id='pt28.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebListOrders - test_author_sort</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt28.2' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebListOrders - test_download_sort</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt28.3' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebListOrders - test_format_sort</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt28.4' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebListOrders - test_lang_sort</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt28.5' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebListOrders - test_order_authors_all_links</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt28.6' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebListOrders - test_order_series_all_links</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt28.7' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebListOrders - test_publisher_sort</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt28.8' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebListOrders - test_ratings_sort</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt28.9' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebListOrders - test_series_sort</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt28.10' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebListOrders - test_tags_sort</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="skipClass"> <td>TestLogging</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('c29', 9)">Detail</a> </td> </tr> <tr id='pt29.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLogging - test_access_log_recover</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt29.2' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLogging - test_debug_log</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt29.3' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLogging - test_debuginfo_download</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt29.4' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLogging - test_failed_login</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="st29.5" class="none bg-warning"> <td> <div class='testcase'>TestLogging - test_failed_register</div> </td> <td colspan='6'> <div class="text-center"> <a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_st29.5')">SKIP</a> </div> <!--css div popup start--> <div id="div_st29.5" class="popup_window test_output" style="display:none;"> <div class='close_button pull-right'> <button type="button" class="close" aria-label="Close" onfocus="this.blur();" onclick="document.getElementById('div_st29.5').style.display='none'"><span aria-hidden="true">×</span></button> </div> <div class="text-left pull-left"> <pre class="text-left">Not Implemented</pre> </div> <div class="clearfix"></div> </div> <!--css div popup end--> </td> </tr> <tr id='pt29.6' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLogging - test_logbook_download</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt29.7' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLogging - test_logfile_change</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt29.8' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLogging - test_logfile_recover</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt29.9' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLogging - test_logviewer</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="passClass"> <td>TestLogin</td> <td class="text-center">15</td> <td class="text-center">15</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center"> <a onclick="showClassDetail('c30', 15)">Detail</a> </td> </tr> <tr id='pt30.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLogin - test_digest_login</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt30.2' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLogin - test_login_capital_letters_user_unicode_password</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt30.3' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLogin - test_login_cookie_steal</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt30.4' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLogin - test_login_delete_admin</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt30.5' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLogin - test_login_empty_password</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt30.6' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLogin - test_login_locale_select</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt30.7' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLogin - test_login_protected</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt30.8' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLogin - test_login_remember_me</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt30.9' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLogin - test_login_rename_user</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt30.10' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLogin - test_login_unicode_user_space_end_password</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt30.11' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLogin - test_login_user_with_space_password_end_space</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt30.12' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLogin - test_magic_remote_login</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt30.13' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLogin - test_next</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt30.14' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLogin - test_proxy_login</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt30.15' class='hiddenRow bg-success'> <td> <div class='testcase'>TestLogin - test_robots</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="passClass"> <td>TestMergeBooksList</td> <td class="text-center">2</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"> <a onclick="showClassDetail('c31', 2)">Detail</a> </td> </tr> <tr id='pt31.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestMergeBooksList - test_book_merge</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt31.2' class='hiddenRow bg-success'> <td> <div class='testcase'>TestMergeBooksList - test_delete_book</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="passClass"> <td>TestOAuthLogin</td> <td class="text-center">2</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"> <a onclick="showClassDetail('c32', 2)">Detail</a> </td> </tr> <tr id='pt32.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestOAuthLogin - test_oauth_about</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt32.2' class='hiddenRow bg-success'> <td> <div class='testcase'>TestOAuthLogin - test_visible_oauth</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="passClass"> <td>TestOPDSFeed</td> <td class="text-center">23</td> <td class="text-center">23</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center"> <a onclick="showClassDetail('c33', 23)">Detail</a> </td> </tr> <tr id='pt33.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestOPDSFeed - test_opds</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt33.2' class='hiddenRow bg-success'> <td> <div class='testcase'>TestOPDSFeed - test_opds_author</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt33.3' class='hiddenRow bg-success'> <td> <div class='testcase'>TestOPDSFeed - test_opds_books</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt33.4' class='hiddenRow bg-success'> <td> <div class='testcase'>TestOPDSFeed - test_opds_calibre_companion</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt33.5' class='hiddenRow bg-success'> <td> <div class='testcase'>TestOPDSFeed - test_opds_colon_password</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt33.6' class='hiddenRow bg-success'> <td> <div class='testcase'>TestOPDSFeed - test_opds_cover</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt33.7' class='hiddenRow bg-success'> <td> <div class='testcase'>TestOPDSFeed - test_opds_download_book</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt33.8' class='hiddenRow bg-success'> <td> <div class='testcase'>TestOPDSFeed - test_opds_formats</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt33.9' class='hiddenRow bg-success'> <td> <div class='testcase'>TestOPDSFeed - test_opds_guest_user</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt33.10' class='hiddenRow bg-success'> <td> <div class='testcase'>TestOPDSFeed - test_opds_hot</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt33.11' class='hiddenRow bg-success'> <td> <div class='testcase'>TestOPDSFeed - test_opds_language</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt33.12' class='hiddenRow bg-success'> <td> <div class='testcase'>TestOPDSFeed - test_opds_non_admin</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt33.13' class='hiddenRow bg-success'> <td> <div class='testcase'>TestOPDSFeed - test_opds_publisher</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt33.14' class='hiddenRow bg-success'> <td> <div class='testcase'>TestOPDSFeed - test_opds_random</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt33.15' class='hiddenRow bg-success'> <td> <div class='testcase'>TestOPDSFeed - test_opds_ratings</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt33.16' class='hiddenRow bg-success'> <td> <div class='testcase'>TestOPDSFeed - test_opds_read_unread</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt33.17' class='hiddenRow bg-success'> <td> <div class='testcase'>TestOPDSFeed - test_opds_search</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt33.18' class='hiddenRow bg-success'> <td> <div class='testcase'>TestOPDSFeed - test_opds_series</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt33.19' class='hiddenRow bg-success'> <td> <div class='testcase'>TestOPDSFeed - test_opds_shelf_access</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt33.20' class='hiddenRow bg-success'> <td> <div class='testcase'>TestOPDSFeed - test_opds_tags</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt33.21' class='hiddenRow bg-success'> <td> <div class='testcase'>TestOPDSFeed - test_opds_top_rated</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt33.22' class='hiddenRow bg-success'> <td> <div class='testcase'>TestOPDSFeed - test_opds_unicode_user</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt33.23' class='hiddenRow bg-success'> <td> <div class='testcase'>TestOPDSFeed - test_recently_added</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="passClass"> <td>TestUploadPDF</td> <td class="text-center">1</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"> <a onclick="showClassDetail('c34', 1)">Detail</a> </td> </tr> <tr id='pt34.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUploadPDF - test_upload_invalid_pdf</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="passClass"> <td>TestPipInstall</td> <td class="text-center">3</td> <td class="text-center">3</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center"> <a onclick="showClassDetail('c35', 3)">Detail</a> </td> </tr> <tr id='pt35.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestPipInstall - test_command_start</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt35.2' class='hiddenRow bg-success'> <td> <div class='testcase'>TestPipInstall - test_foldername_database_location</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt35.3' class='hiddenRow bg-success'> <td> <div class='testcase'>TestPipInstall - test_module_start</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="passClass"> <td>TestReader</td> <td class="text-center">5</td> <td class="text-center">5</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center"> <a onclick="showClassDetail('c36', 5)">Detail</a> </td> </tr> <tr id='pt36.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestReader - test_comic_reader</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt36.2' class='hiddenRow bg-success'> <td> <div class='testcase'>TestReader - test_epub_reader</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt36.3' class='hiddenRow bg-success'> <td> <div class='testcase'>TestReader - test_pdf_reader</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt36.4' class='hiddenRow bg-success'> <td> <div class='testcase'>TestReader - test_sound_listener</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt36.5' class='hiddenRow bg-success'> <td> <div class='testcase'>TestReader - test_txt_reader</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="passClass"> <td>TestReadOnlyDatabase</td> <td class="text-center">1</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"> <a onclick="showClassDetail('c37', 1)">Detail</a> </td> </tr> <tr id='pt37.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestReadOnlyDatabase - test_readonly_path</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="passClass"> <td>TestRegister</td> <td class="text-center">8</td> <td class="text-center">8</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center"> <a onclick="showClassDetail('c38', 8)">Detail</a> </td> </tr> <tr id='pt38.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestRegister - test_forgot_password</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt38.2' class='hiddenRow bg-success'> <td> <div class='testcase'>TestRegister - test_illegal_email</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt38.3' class='hiddenRow bg-success'> <td> <div class='testcase'>TestRegister - test_limit_domain</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt38.4' class='hiddenRow bg-success'> <td> <div class='testcase'>TestRegister - test_register_no_server</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt38.5' class='hiddenRow bg-success'> <td> <div class='testcase'>TestRegister - test_registering_only_email</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt38.6' class='hiddenRow bg-success'> <td> <div class='testcase'>TestRegister - test_registering_user</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt38.7' class='hiddenRow bg-success'> <td> <div class='testcase'>TestRegister - test_registering_user_fail</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt38.8' class='hiddenRow bg-success'> <td> <div class='testcase'>TestRegister - test_user_change_password</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="passClass"> <td>TestReverseProxy</td> <td class="text-center">3</td> <td class="text-center">3</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center"> <a onclick="showClassDetail('c39', 3)">Detail</a> </td> </tr> <tr id='pt39.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestReverseProxy - test_logout</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt39.2' class='hiddenRow bg-success'> <td> <div class='testcase'>TestReverseProxy - test_move_page</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt39.3' class='hiddenRow bg-success'> <td> <div class='testcase'>TestReverseProxy - test_reverse_about</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="skipClass"> <td>TestShelf</td> <td class="text-center">16</td> <td class="text-center">15</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('c40', 16)">Detail</a> </td> </tr> <tr id='pt40.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestShelf - test_access_shelf</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt40.2' class='hiddenRow bg-success'> <td> <div class='testcase'>TestShelf - test_add_shelf_from_search</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt40.3' class='hiddenRow bg-success'> <td> <div class='testcase'>TestShelf - test_adv_search_shelf</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt40.4' class='hiddenRow bg-success'> <td> <div class='testcase'>TestShelf - test_arrange_shelf</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt40.5' class='hiddenRow bg-success'> <td> <div class='testcase'>TestShelf - test_create_public_shelf</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt40.6' class='hiddenRow bg-success'> <td> <div class='testcase'>TestShelf - test_create_public_shelf_no_permission</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt40.7' class='hiddenRow bg-success'> <td> <div class='testcase'>TestShelf - test_delete_book_of_shelf</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt40.8' class='hiddenRow bg-success'> <td> <div class='testcase'>TestShelf - test_private_shelf</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt40.9' class='hiddenRow bg-success'> <td> <div class='testcase'>TestShelf - test_public_private_shelf</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt40.10' class='hiddenRow bg-success'> <td> <div class='testcase'>TestShelf - test_public_shelf</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt40.11' class='hiddenRow bg-success'> <td> <div class='testcase'>TestShelf - test_rename_shelf</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt40.12' class='hiddenRow bg-success'> <td> <div class='testcase'>TestShelf - test_shelf_action_non_shelf_edit_role</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt40.13' class='hiddenRow bg-success'> <td> <div class='testcase'>TestShelf - test_shelf_anonymous</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="st40.14" class="none bg-warning"> <td> <div class='testcase'>TestShelf - test_shelf_database_change</div> </td> <td colspan='6'> <div class="text-center"> <a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_st40.14')">SKIP</a> </div> <!--css div popup start--> <div id="div_st40.14" class="popup_window test_output" style="display:none;"> <div class='close_button pull-right'> <button type="button" class="close" aria-label="Close" onfocus="this.blur();" onclick="document.getElementById('div_st40.14').style.display='none'"><span aria-hidden="true">×</span></button> </div> <div class="text-left pull-left"> <pre class="text-left">Change Database Not Implemented</pre> </div> <div class="clearfix"></div> </div> <!--css div popup end--> </td> </tr> <tr id='pt40.15' class='hiddenRow bg-success'> <td> <div class='testcase'>TestShelf - test_shelf_long_name</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt40.16' class='hiddenRow bg-success'> <td> <div class='testcase'>TestShelf - test_xss_shelf</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="passClass"> <td>TestThumbnailsEnv</td> <td class="text-center">1</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"> <a onclick="showClassDetail('c41', 1)">Detail</a> </td> </tr> <tr id='pt41.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestThumbnailsEnv - test_cover_cache_env_on_database_change</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="skipClass"> <td>TestThumbnails</td> <td class="text-center">8</td> <td class="text-center">7</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('c42', 8)">Detail</a> </td> </tr> <tr id='pt42.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestThumbnails - test_cache_non_writable</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt42.2' class='hiddenRow bg-success'> <td> <div class='testcase'>TestThumbnails - test_cache_of_deleted_book</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt42.3' class='hiddenRow bg-success'> <td> <div class='testcase'>TestThumbnails - test_cover_cache_on_database_change</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt42.4' class='hiddenRow bg-success'> <td> <div class='testcase'>TestThumbnails - test_cover_change_on_upload_new_cover</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='st42.5' class='none bg-warning'> <td> <div class='testcase'>TestThumbnails - test_cover_for_series</div> </td> <td colspan='6' align='center'>SKIP</td> </tr> <tr id='pt42.6' class='hiddenRow bg-success'> <td> <div class='testcase'>TestThumbnails - test_cover_on_upload_book</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt42.7' class='hiddenRow bg-success'> <td> <div class='testcase'>TestThumbnails - test_remove_cover_from_cache</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt42.8' class='hiddenRow bg-success'> <td> <div class='testcase'>TestThumbnails - test_sideloaded_book</div> </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'> <div class="text-center"> <a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_st43.7')">SKIP</a> </div> <!--css div popup start--> <div id="div_st43.7" class="popup_window test_output" style="display:none;"> <div class='close_button pull-right'> <button type="button" class="close" aria-label="Close" onfocus="this.blur();" onclick="document.getElementById('div_st43.7').style.display='none'"><span aria-hidden="true">×</span></button> </div> <div class="text-left pull-left"> <pre class="text-left">Takes too long</pre> </div> <div class="clearfix"></div> </div> <!--css div popup end--> </td> </tr> <tr id='pt43.8' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUpdater - test_reconnect_database</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt43.9' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUpdater - test_update_write_protect</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="failClass"> <td>TestUploadEPubs</td> <td class="text-center">4</td> <td class="text-center">2</td> <td class="text-center">2</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center"> <a onclick="showClassDetail('c44', 4)">Detail</a> </td> </tr> <tr id="ft44.1" class="none bg-danger"> <td> <div class='testcase'>TestUploadEPubs - test_upload_epub_cover</div> </td> <td colspan='6'> <div class="text-center"> <a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_ft44.1')">FAIL</a> </div> <!--css div popup start--> <div id="div_ft44.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_ft44.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_upload_epubs.py", line 146, in test_upload_epub_cover self.assertAlmostEqual(diff(BytesIO(original), BytesIO(cover_image), delete_diff_file=True), 0.0, delta=0.0001) AssertionError: 0.04601354277405644 != 0.0 within 0.0001 delta (0.04601354277405644 difference)</pre> </div> <div class="clearfix"></div> </div> <!--css div popup end--> </td> </tr> <tr id="ft44.2" class="none bg-danger"> <td> <div class='testcase'>TestUploadEPubs - test_upload_epub_cover_formats</div> </td> <td colspan='6'> <div class="text-center"> <a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_ft44.2')">FAIL</a> </div> <!--css div popup start--> <div id="div_ft44.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_ft44.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_upload_epubs.py", line 205, in test_upload_epub_cover_formats self.assertAlmostEqual(diff(BytesIO(original), BytesIO(cover_image), delete_diff_file=True), 0.0058, AssertionError: 0.0 != 0.0058 within 0.0001 delta (0.0058 difference)</pre> </div> <div class="clearfix"></div> </div> <!--css div popup end--> </td> </tr> <tr id='pt44.3' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUploadEPubs - test_upload_epub_duplicate</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt44.4' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUploadEPubs - test_upload_epub_lang</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="errorClass"> <td>TestUserList</td> <td class="text-center">18</td> <td class="text-center">15</td> <td class="text-center">1</td> <td class="text-center">2</td> <td class="text-center">0</td> <td class="text-center"> <a onclick="showClassDetail('c45', 18)">Detail</a> </td> </tr> <tr id='pt45.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserList - test_edit_user_email</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt45.2' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserList - test_list_visibility</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt45.3' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserList - test_user_list_admin_role</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt45.4' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserList - test_user_list_check_sort</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt45.5' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserList - test_user_list_denied_tags</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt45.6' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserList - test_user_list_download_role</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt45.7' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserList - test_user_list_edit_button</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt45.8' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserList - test_user_list_edit_email</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="et45.9" class="none bg-info"> <td> <div class='testcase'>TestUserList - test_user_list_edit_kindle</div> </td> <td colspan='6'> <div class="text-center"> <a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_et45.9')">ERROR</a> </div> <!--css div popup start--> <div id="div_et45.9" 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_et45.9').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 261, in test_user_list_edit_kindle self.assertEqual("muki1al@b.com", ul['table'][1]['Kindle E-mail']['text']) KeyError: 'Kindle E-mail'</pre> </div> <div class="clearfix"></div> </div> <!--css div popup end--> </td> </tr> <tr id='pt45.10' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserList - test_user_list_edit_language</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt45.11' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserList - test_user_list_edit_locale</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt45.12' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserList - test_user_list_edit_name</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt45.13' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserList - test_user_list_edit_visiblility</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt45.14' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserList - test_user_list_guest_edit</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt45.15' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserList - test_user_list_remove_admin</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt45.16' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserList - test_user_list_requests</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="et45.17" class="none bg-info"> <td> <div class='testcase'>TestUserList - test_user_list_search</div> </td> <td colspan='6'> <div class="text-center"> <a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_et45.17')">ERROR</a> </div> <!--css div popup start--> <div id="div_et45.17" 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_et45.17').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 542, in test_user_list_search self.check_search(ul, "m11", 1, "Kindle E-mail", "m11uklial@bds.com") File "/home/ozzie/Development/calibre-web-test/test/test_user_list.py", line 86, in check_search self.assertEqual(value, bl['table'][0][column]['text']) KeyError: 'Kindle E-mail'</pre> </div> <div class="clearfix"></div> </div> <!--css div popup end--> </td> </tr> <tr id="ft45.18" class="none bg-danger"> <td> <div class='testcase'>TestUserList - test_user_list_sort</div> </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 560, in test_user_list_sort self.assertEqual("Kindle E-mail", ul['header'][4]['text']) AssertionError: 'Kindle E-mail' != 'E-Reader E-mail' - Kindle E-mail + E-Reader E-mail</pre> </div> <div class="clearfix"></div> </div> <!--css div popup end--> </td> </tr> <tr id="su" class="passClass"> <td>TestUserLoad</td> <td class="text-center">1</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"> <a onclick="showClassDetail('c46', 1)">Detail</a> </td> </tr> <tr id='pt46.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserLoad - test_user_change_vis</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="passClass"> <td>TestUserTemplate</td> <td class="text-center">21</td> <td class="text-center">21</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center"> <a onclick="showClassDetail('c47', 21)">Detail</a> </td> </tr> <tr id='pt47.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserTemplate - test_allow_column_restriction</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt47.2' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserTemplate - test_allow_tag_restriction</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt47.3' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserTemplate - test_archived_format_template</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt47.4' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserTemplate - test_author_user_template</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt47.5' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserTemplate - test_best_user_template</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt47.6' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserTemplate - test_category_user_template</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt47.7' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserTemplate - test_deny_column_restriction</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt47.8' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserTemplate - test_deny_tag_restriction</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt47.9' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserTemplate - test_detail_random_user_template</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt47.10' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserTemplate - test_download_user_template</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt47.11' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserTemplate - test_format_user_template</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt47.12' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserTemplate - test_hot_user_template</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt47.13' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserTemplate - test_language_user_template</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt47.14' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserTemplate - test_limit_book_languages</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt47.15' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserTemplate - test_list_user_template</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt47.16' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserTemplate - test_publisher_user_template</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt47.17' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserTemplate - test_random_user_template</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt47.18' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserTemplate - test_read_user_template</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt47.19' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserTemplate - test_recent_user_template</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt47.20' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserTemplate - test_series_user_template</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt47.21' class='hiddenRow bg-success'> <td> <div class='testcase'>TestUserTemplate - test_ui_language_settings</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="passClass"> <td>TestCalibreWebVisibilitys</td> <td class="text-center">35</td> <td class="text-center">35</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center"> <a onclick="showClassDetail('c48', 35)">Detail</a> </td> </tr> <tr id='pt48.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebVisibilitys - test_about</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt48.2' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebVisibilitys - test_admin_SMTP_Settings</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt48.3' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebVisibilitys - test_admin_add_user</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt48.4' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebVisibilitys - test_admin_change_password</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt48.5' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebVisibilitys - test_admin_change_visibility_archived</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt48.6' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebVisibilitys - test_admin_change_visibility_authors</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt48.7' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebVisibilitys - test_admin_change_visibility_category</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt48.8' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebVisibilitys - test_admin_change_visibility_file_formats</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt48.9' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebVisibilitys - test_admin_change_visibility_hot</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt48.10' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebVisibilitys - test_admin_change_visibility_language</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt48.11' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebVisibilitys - test_admin_change_visibility_publisher</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt48.12' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebVisibilitys - test_admin_change_visibility_random</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt48.13' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebVisibilitys - test_admin_change_visibility_rated</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt48.14' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebVisibilitys - test_admin_change_visibility_rating</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt48.15' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebVisibilitys - test_admin_change_visibility_read</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt48.16' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebVisibilitys - test_admin_change_visibility_series</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt48.17' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebVisibilitys - test_allow_columns</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt48.18' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebVisibilitys - test_allow_tags</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt48.19' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebVisibilitys - test_archive_books</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt48.20' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebVisibilitys - test_authors_max_settings</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt48.21' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebVisibilitys - test_change_title</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt48.22' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebVisibilitys - test_checked_logged_in</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt48.23' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebVisibilitys - test_hide_custom_column</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt48.24' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebVisibilitys - test_link_column_to_read_status</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt48.25' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebVisibilitys - test_random_books_available</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt48.26' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebVisibilitys - test_read_status_visible</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt48.27' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebVisibilitys - test_request_link_column_to_read_status</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt48.28' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebVisibilitys - test_restrict_columns</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt48.29' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebVisibilitys - test_restrict_tags</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt48.30' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebVisibilitys - test_save_views_recent</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt48.31' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebVisibilitys - test_search_functions</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt48.32' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebVisibilitys - test_search_order</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt48.33' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebVisibilitys - test_search_string</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt48.34' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebVisibilitys - test_user_email_available</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt48.35' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreWebVisibilitys - test_user_visibility_sidebar</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id="su" class="passClass"> <td>TestCalibreHelper</td> <td class="text-center">16</td> <td class="text-center">16</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center">0</td> <td class="text-center"> <a onclick="showClassDetail('c49', 16)">Detail</a> </td> </tr> <tr id='pt49.1' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreHelper - test_author_sort</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt49.2' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreHelper - test_author_sort_comma</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt49.3' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreHelper - test_author_sort_junior</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt49.4' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreHelper - test_author_sort_oneword</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt49.5' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreHelper - test_author_sort_roman</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt49.6' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreHelper - test_check_Limit_Length</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt49.7' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreHelper - test_check_char_replacement</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt49.8' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreHelper - test_check_chinese_Characters</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt49.9' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreHelper - test_check_deg_eur_replacement</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt49.10' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreHelper - test_check_doubleS</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt49.11' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreHelper - test_check_finish_Dot</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt49.12' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreHelper - test_check_high23</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt49.13' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreHelper - test_check_umlauts</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt49.14' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreHelper - test_random_password</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt49.15' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreHelper - test_split_authors</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='pt49.16' class='hiddenRow bg-success'> <td> <div class='testcase'>TestCalibreHelper - test_whitespaces</div> </td> <td colspan='6' align='center'>PASS</td> </tr> <tr id='total_row' class="text-center bg-grey"> <td>Total</td> <td>424</td> <td>402</td> <td>11</td> <td>4</td> <td>7</td> <td> </td> </tr> </table> <div class="panel-group"> <div class="panel panel-default"> <div class="panel-heading"> <h4 class="panel-title"> <a class="accordion-toggle" data-toggle="collapse" href="#collapseOne"> <span class="glyphicon glyphicon-plus"></span> Tested environment </a> </h4> </div> <div id="collapseOne" class="panel-collapse collapse"> <div class="panel-body"> <table id="libs" class="table"> <thead> <tr> <th>Program library</th> <th>Installed Version</th> <th>Test class</th> </tr> </thead> <tbody> <tr> <th>Platform</th> <td>Linux 5.13.0-40-generic #45~20.04.1-Ubuntu SMP Mon Apr 4 09:38:31 UTC 2022 x86_64 x86_64</td> <td>Basic</td> </tr> <tr> <th>Python</th> <td>3.8.10</td> <td>Basic</td> </tr> <tr> <th>advocate</th> <td>1.0.0</td> <td>Basic</td> </tr> <tr> <th>APScheduler</th> <td>3.9.1</td> <td>Basic</td> </tr> <tr> <th>Babel</th> <td>2.10.1</td> <td>Basic</td> </tr> <tr> <th>backports-abc</th> <td>0.5</td> <td>Basic</td> </tr> <tr> <th>chardet</th> <td>4.0.0</td> <td>Basic</td> </tr> <tr> <th>Flask</th> <td>2.0.3</td> <td>Basic</td> </tr> <tr> <th>Flask-Babel</th> <td>2.0.0</td> <td>Basic</td> </tr> <tr> <th>Flask-Login</th> <td>0.6.0</td> <td>Basic</td> </tr> <tr> <th>Flask-Principal</th> <td>0.4.0</td> <td>Basic</td> </tr> <tr> <th>Flask-WTF</th> <td>1.0.1</td> <td>Basic</td> </tr> <tr> <th>greenlet</th> <td>1.1.2</td> <td>Basic</td> </tr> <tr> <th>iso-639</th> <td>0.4.5</td> <td>Basic</td> </tr> <tr> <th>Jinja2</th> <td>3.1.2</td> <td>Basic</td> </tr> <tr> <th>lxml</th> <td>4.8.0</td> <td>Basic</td> </tr> <tr> <th>pyasn1</th> <td>0.4.8</td> <td>Basic</td> </tr> <tr> <th>PyPDF3</th> <td>1.0.6</td> <td>Basic</td> </tr> <tr> <th>pytz</th> <td>2022.1</td> <td>Basic</td> </tr> <tr> <th>requests</th> <td>2.27.1</td> <td>Basic</td> </tr> <tr> <th>SQLAlchemy</th> <td>1.4.36</td> <td>Basic</td> </tr> <tr> <th>tornado</th> <td>6.1</td> <td>Basic</td> </tr> <tr> <th>Unidecode</th> <td>1.3.4</td> <td>Basic</td> </tr> <tr> <th>Wand</th> <td>0.6.7</td> <td>Basic</td> </tr> <tr> <th>Werkzeug</th> <td>2.0.3</td> <td>Basic</td> </tr> <tr> <th>google-api-python-client</th> <td>2.47.0</td> <td>TestCliGdrivedb</td> </tr> <tr> <th>httplib2</th> <td>0.20.4</td> <td>TestCliGdrivedb</td> </tr> <tr> <th>oauth2client</th> <td>4.1.3</td> <td>TestCliGdrivedb</td> </tr> <tr> <th>PyDrive2</th> <td>1.10.1</td> <td>TestCliGdrivedb</td> </tr> <tr> <th>PyYAML</th> <td>6.0</td> <td>TestCliGdrivedb</td> </tr> <tr> <th>google-api-python-client</th> <td>2.47.0</td> <td>TestEbookConvertCalibreGDrive</td> </tr> <tr> <th>httplib2</th> <td>0.20.4</td> <td>TestEbookConvertCalibreGDrive</td> </tr> <tr> <th>oauth2client</th> <td>4.1.3</td> <td>TestEbookConvertCalibreGDrive</td> </tr> <tr> <th>PyDrive2</th> <td>1.10.1</td> <td>TestEbookConvertCalibreGDrive</td> </tr> <tr> <th>PyYAML</th> <td>6.0</td> <td>TestEbookConvertCalibreGDrive</td> </tr> <tr> <th>google-api-python-client</th> <td>2.47.0</td> <td>TestEbookConvertGDriveKepubify</td> </tr> <tr> <th>httplib2</th> <td>0.20.4</td> <td>TestEbookConvertGDriveKepubify</td> </tr> <tr> <th>oauth2client</th> <td>4.1.3</td> <td>TestEbookConvertGDriveKepubify</td> </tr> <tr> <th>PyDrive2</th> <td>1.10.1</td> <td>TestEbookConvertGDriveKepubify</td> </tr> <tr> <th>PyYAML</th> <td>6.0</td> <td>TestEbookConvertGDriveKepubify</td> </tr> <tr> <th>comicapi</th> <td>2.2.1</td> <td>TestEditAdditionalBooks</td> </tr> <tr> <th>rarfile</th> <td>4.0</td> <td>TestEditAdditionalBooks</td> </tr> <tr> <th>google-api-python-client</th> <td>2.47.0</td> <td>TestEditAuthorsGdrive</td> </tr> <tr> <th>httplib2</th> <td>0.20.4</td> <td>TestEditAuthorsGdrive</td> </tr> <tr> <th>oauth2client</th> <td>4.1.3</td> <td>TestEditAuthorsGdrive</td> </tr> <tr> <th>PyDrive2</th> <td>1.10.1</td> <td>TestEditAuthorsGdrive</td> </tr> <tr> <th>PyYAML</th> <td>6.0</td> <td>TestEditAuthorsGdrive</td> </tr> <tr> <th>beautifulsoup4</th> <td>4.11.1</td> <td>TestLoadMetadata</td> </tr> <tr> <th>google-api-python-client</th> <td>2.47.0</td> <td>TestEditBooksOnGdrive</td> </tr> <tr> <th>httplib2</th> <td>0.20.4</td> <td>TestEditBooksOnGdrive</td> </tr> <tr> <th>oauth2client</th> <td>4.1.3</td> <td>TestEditBooksOnGdrive</td> </tr> <tr> <th>PyDrive2</th> <td>1.10.1</td> <td>TestEditBooksOnGdrive</td> </tr> <tr> <th>PyYAML</th> <td>6.0</td> <td>TestEditBooksOnGdrive</td> </tr> <tr> <th>beautifulsoup4</th> <td>4.11.1</td> <td>TestLoadMetadataScholar</td> </tr> <tr> <th>scholarly</th> <td>1.6.0</td> <td>TestLoadMetadataScholar</td> </tr> <tr> <th>google-api-python-client</th> <td>2.47.0</td> <td>TestSetupGdrive</td> </tr> <tr> <th>httplib2</th> <td>0.20.4</td> <td>TestSetupGdrive</td> </tr> <tr> <th>oauth2client</th> <td>4.1.3</td> <td>TestSetupGdrive</td> </tr> <tr> <th>PyDrive2</th> <td>1.10.1</td> <td>TestSetupGdrive</td> </tr> <tr> <th>PyYAML</th> <td>6.0</td> <td>TestSetupGdrive</td> </tr> <tr> <th>goodreads</th> <td>0.3.2</td> <td>TestGoodreads</td> </tr> <tr> <th>python-Levenshtein</th> <td>0.12.2</td> <td>TestGoodreads</td> </tr> <tr> <th>jsonschema</th> <td>4.5.1</td> <td>TestKoboSync</td> </tr> <tr> <th>jsonschema</th> <td>4.5.1</td> <td>TestKoboSyncBig</td> </tr> <tr> <th>Flask-SimpleLDAP</th> <td>1.4.0</td> <td>TestLdapLogin</td> </tr> <tr> <th>jsonschema</th> <td>4.5.1</td> <td>TestLdapLogin</td> </tr> <tr> <th>python-ldap</th> <td>3.4.0</td> <td>TestLdapLogin</td> </tr> <tr> <th>Flask-Dance</th> <td>6.0.0</td> <td>TestOAuthLogin</td> </tr> <tr> <th>SQLAlchemy-Utils</th> <td>0.38.2</td> <td>TestOAuthLogin</td> </tr> </tbody> </table> </div> </div> </div> </div> <script> drawCircle(402, 11, 4, 7); showCase(5); </script> <footer> <div id='foter' class="text-center"> <p>Made with HTMLTestRunner from https://github.com/oldani/HtmlTestRunner</p> </div> </footer> </body> </html>