1
0
mirror of https://github.com/janeczku/calibre-web synced 2024-11-17 23:34:53 +00:00
calibre-web/test/Calibre-Web TestSummary_Windows.html
2020-08-26 21:43:58 +02:00

3413 lines
110 KiB
HTML
Raw Blame History

<!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>2020-08-26 20:05:39</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>2020-08-26 21:23:04</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>1h 314 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 class="result['header']['style']">
<td>test_anonymous.testAnonymous</td>
<td class="text-center">13</td>
<td class="text-center">12</td>
<td class="text-center">0</td>
<td class="text-center">1</td>
<td class="text-center">0</td>
<td class="text-center">
<a onclick="showClassDetail('c1', 13)">Detail</a>
</td>
</tr>
<tr id='pt1.1' class='hiddenRow bg-success'>
<td>
<div class='testcase'>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'>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'>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'>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'>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'>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'>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'>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'>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'>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'>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'>test_guest_restricted_settings_visibility</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='et1.13' class='none bg-info'>
<td>
<div class='testcase'>test_guest_visibility_sidebar</div>
</td>
<td colspan='6'>
<div class="text-center">
<a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_et1.13')">ERROR</a>
</div>
<!--css div popup start-->
<div id='div_et1.13' 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_et1.13').style.display='none'"><span
aria-hidden="true">&times;</span></button>
</div>
<div class="text-left pull-left">
<pre class="text-left">Traceback (most recent call last):
File "C:\Entwicklung\calibre-web-test\test\test_anonymous.py", line 177, in test_guest_visibility_sidebar
self.assertIsNotNone(list_element)
TypeError: 'FirefoxWebElement' object is not subscriptable</pre>
</div>
<div class="clearfix"></div>
</div>
<!--css div popup end-->
</td>
</tr>
<tr class="result['header']['style']">
<td>test_cli.testCli</td>
<td class="text-center">7</td>
<td class="text-center">6</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('c2', 7)">Detail</a>
</td>
</tr>
<tr id='pt2.1' class='hiddenRow bg-success'>
<td>
<div class='testcase'>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'>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'>test_cli_SSL_files</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt2.4' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_cli_different_folder</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt2.5' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_cli_different_settings_database</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='st2.6' class='none bg-warning'>
<td>
<div class='testcase'>test_cli_gdrive_location</div>
</td>
<td colspan='6'>
<div class="text-center">
<a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_st2.6')">SKIP</a>
</div>
<!--css div popup start-->
<div id='div_st2.6' 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_st2.6').style.display='none'"><span
aria-hidden="true">&times;</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='pt2.7' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_environ_port_setting</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr class="result['header']['style']">
<td>test_cover_edit_books.testCoverEditBooks</td>
<td class="text-center">1</td>
<td class="text-center">0</td>
<td class="text-center">1</td>
<td class="text-center">0</td>
<td class="text-center">0</td>
<td class="text-center">
<a onclick="showClassDetail('c3', 1)">Detail</a>
</td>
</tr>
<tr id='ft3.1' class='none bg-danger'>
<td>
<div class='testcase'>test_upload_jpg</div>
</td>
<td colspan='6'>
<div class="text-center">
<a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_ft3.1')">FAIL</a>
</div>
<!--css div popup start-->
<div id='div_ft3.1' 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_ft3.1').style.display='none'"><span
aria-hidden="true">&times;</span></button>
</div>
<div class="text-left pull-left">
<pre class="text-left">Traceback (most recent call last):
File "C:\Entwicklung\calibre-web-test\test\test_cover_edit_books.py", line 77, in test_upload_jpg
self.assertEqual('17420', resp.headers['Content-Length'])
AssertionError: '17420' != '17403'
- 17420
? -
+ 17403
? +</pre>
</div>
<div class="clearfix"></div>
</div>
<!--css div popup end-->
</td>
</tr>
<tr class="result['header']['style']">
<td>test_delete_database.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('c4', 1)">Detail</a>
</td>
</tr>
<tr id='pt4.1' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_delete_books_in_database</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr class="result['header']['style']">
<td>test_ebook_convert.TestEbookConvert</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('c5', 11)">Detail</a>
</td>
</tr>
<tr id='pt5.1' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_convert_deactivate</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt5.2' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_convert_email</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt5.3' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_convert_failed_and_email</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt5.4' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_convert_only</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt5.5' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_convert_parameter</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt5.6' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_convert_wrong_excecutable</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt5.7' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_email_failed</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt5.8' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_email_only</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt5.9' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_kindle_send_not_configured</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt5.10' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_ssl_smtp_setup_error</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt5.11' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_starttls_smtp_setup_error</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr class="result['header']['style']">
<td>test_edit_additional_books.TestEditAdditionalBooks</td>
<td class="text-center">5</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">
<a onclick="showClassDetail('c6', 5)">Detail</a>
</td>
</tr>
<tr id='pt6.1' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_delete_book</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt6.2' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_upload_metadata_cbt</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='ft6.3' class='none bg-danger'>
<td>
<div class='testcase'>test_upload_metadate_cbr</div>
</td>
<td colspan='6'>
<div class="text-center">
<a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_ft6.3')">FAIL</a>
</div>
<!--css div popup start-->
<div id='div_ft6.3' 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_ft6.3').style.display='none'"><span
aria-hidden="true">&times;</span></button>
</div>
<div class="text-left pull-left">
<pre class="text-left">Traceback (most recent call last):
File "C:\Entwicklung\calibre-web-test\test\test_edit_additional_books.py", line 62, in test_upload_metadate_cbr
self.assertEqual('Test 执book', details['title'])
AssertionError: 'Test 执book' != 'book'
- Test 执book
+ book</pre>
</div>
<div class="clearfix"></div>
</div>
<!--css div popup end-->
</td>
</tr>
<tr id='pt6.4' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_writeonly_database</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='ft6.5' class='none bg-danger'>
<td>
<div class='testcase'>test_writeonly_path</div>
</td>
<td colspan='6'>
<div class="text-center">
<a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_ft6.5')">FAIL</a>
</div>
<!--css div popup start-->
<div id='div_ft6.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_ft6.5').style.display='none'"><span
aria-hidden="true">&times;</span></button>
</div>
<div class="text-left pull-left">
<pre class="text-left">Traceback (most recent call last):
File "C:\Entwicklung\calibre-web-test\test\test_edit_additional_books.py", line 173, in test_writeonly_path
self.assertTrue(self.check_element_on_page((By.ID, "flash_alert")))
AssertionError: False is not true</pre>
</div>
<div class="clearfix"></div>
</div>
<!--css div popup end-->
</td>
</tr>
<tr class="result['header']['style']">
<td>test_edit_books.TestEditBooks</td>
<td class="text-center">33</td>
<td class="text-center">29</td>
<td class="text-center">1</td>
<td class="text-center">1</td>
<td class="text-center">2</td>
<td class="text-center">
<a onclick="showClassDetail('c7', 33)">Detail</a>
</td>
</tr>
<tr id='pt7.1' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_download_book</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt7.2' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_edit_author</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt7.3' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_edit_category</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt7.4' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_edit_comments</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt7.5' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_edit_custom_bool</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt7.6' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_edit_custom_categories</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt7.7' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_edit_custom_float</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt7.8' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_edit_custom_int</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt7.9' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_edit_custom_rating</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt7.10' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_edit_custom_single_select</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt7.11' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_edit_custom_text</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt7.12' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_edit_language</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt7.13' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_edit_publisher</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='st7.14' class='none bg-warning'>
<td>
<div class='testcase'>test_edit_publishing_date</div>
</td>
<td colspan='6'>
<div class="text-center">
<a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_st7.14')">SKIP</a>
</div>
<!--css div popup start-->
<div id='div_st7.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_st7.14').style.display='none'"><span
aria-hidden="true">&times;</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='pt7.15' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_edit_rating</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt7.16' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_edit_series</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt7.17' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_edit_title</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='st7.18' class='none bg-warning'>
<td>
<div class='testcase'>test_rename_uppercase_lowercase</div>
</td>
<td colspan='6'>
<div class="text-center">
<a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_st7.18')">SKIP</a>
</div>
<!--css div popup start-->
<div id='div_st7.18' 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_st7.18').style.display='none'"><span
aria-hidden="true">&times;</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='pt7.19' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_typeahead_author</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt7.20' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_typeahead_functions</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt7.21' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_typeahead_language</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt7.22' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_typeahead_publisher</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt7.23' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_typeahead_series</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt7.24' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_typeahead_tag</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt7.25' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_upload_book_cbr</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt7.26' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_upload_book_cbt</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt7.27' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_upload_book_cbz</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='et7.28' class='none bg-info'>
<td>
<div class='testcase'>test_upload_book_epub</div>
</td>
<td colspan='6'>
<div class="text-center">
<a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_et7.28')">ERROR</a>
</div>
<!--css div popup start-->
<div id='div_et7.28' 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_et7.28').style.display='none'"><span
aria-hidden="true">&times;</span></button>
</div>
<div class="text-left pull-left">
<pre class="text-left">Traceback (most recent call last):
File "C:\Entwicklung\calibre-web-test\test\test_edit_books.py", line 830, in test_upload_book_epub
self.check_element_on_page((By.ID, 'edit_cancel')).click()
AttributeError: 'bool' object has no attribute 'click'</pre>
</div>
<div class="clearfix"></div>
</div>
<!--css div popup end-->
</td>
</tr>
<tr id='pt7.29' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_upload_book_fb2</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt7.30' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_upload_book_lit</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt7.31' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_upload_book_mobi</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt7.32' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_upload_book_pdf</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='ft7.33' class='none bg-danger'>
<td>
<div class='testcase'>test_upload_cover_hdd</div>
</td>
<td colspan='6'>
<div class="text-center">
<a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_ft7.33')">FAIL</a>
</div>
<!--css div popup start-->
<div id='div_ft7.33' 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_ft7.33').style.display='none'"><span
aria-hidden="true">&times;</span></button>
</div>
<div class="text-left pull-left">
<pre class="text-left">Traceback (most recent call last):
File "C:\Entwicklung\calibre-web-test\test\test_edit_books.py", line 723, in test_upload_cover_hdd
self.assertEqual('20317', resp.headers['Content-Length'])
AssertionError: '20317' != '20130'
- 20317
+ 20130</pre>
</div>
<div class="clearfix"></div>
</div>
<!--css div popup end-->
</td>
</tr>
<tr class="result['header']['style']">
<td>test_edit_books_gdrive.test_edit_books_gdrive</td>
<td class="text-center">1</td>
<td class="text-center">0</td>
<td class="text-center">1</td>
<td class="text-center">0</td>
<td class="text-center">0</td>
<td class="text-center">
<a onclick="showClassDetail('c8', 1)">Detail</a>
</td>
</tr>
<tr id='ft8.1' class='none bg-danger'>
<td>
<div class='testcase'>test_config_gdrive</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:none;">
<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">&times;</span></button>
</div>
<div class="text-left pull-left">
<pre class="text-left">Traceback (most recent call last):
File "C:\Entwicklung\calibre-web-test\test\test_edit_books_gdrive.py", line 107, in test_config_gdrive
self.assertTrue(gdriveError)
AssertionError: False is not true</pre>
</div>
<div class="clearfix"></div>
</div>
<!--css div popup end-->
</td>
</tr>
<tr class="result['header']['style']">
<td>test_email_STARTTLS.test_STARTTLS</td>
<td class="text-center">3</td>
<td class="text-center">0</td>
<td class="text-center">0</td>
<td class="text-center">3</td>
<td class="text-center">0</td>
<td class="text-center">
<a onclick="showClassDetail('c9', 3)">Detail</a>
</td>
</tr>
<tr id='et9.1' class='none bg-info'>
<td>
<div class='testcase'>test_STARTTLS</div>
</td>
<td colspan='6'>
<div class="text-center">
<a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_et9.1')">ERROR</a>
</div>
<!--css div popup start-->
<div id='div_et9.1' 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_et9.1').style.display='none'"><span
aria-hidden="true">&times;</span></button>
</div>
<div class="text-left pull-left">
<pre class="text-left">Traceback (most recent call last):
File "C:\Entwicklung\calibre-web-test\test\test_email_STARTTLS.py", line 59, in test_STARTTLS
task_len = len(self.check_tasks())
TypeError: object of type 'bool' has no len()</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'>test_STARTTLS_SSL_setup_error</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:none;">
<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">&times;</span></button>
</div>
<div class="text-left pull-left">
<pre class="text-left">Traceback (most recent call last):
File "C:\Entwicklung\calibre-web-test\test\test_email_STARTTLS.py", line 80, in test_STARTTLS_SSL_setup_error
task_len = len(self.check_tasks())
TypeError: object of type 'bool' has no len()</pre>
</div>
<div class="clearfix"></div>
</div>
<!--css div popup end-->
</td>
</tr>
<tr id='et9.3' class='none bg-info'>
<td>
<div class='testcase'>test_STARTTLS_resend_password</div>
</td>
<td colspan='6'>
<div class="text-center">
<a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_et9.3')">ERROR</a>
</div>
<!--css div popup start-->
<div id='div_et9.3' 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_et9.3').style.display='none'"><span
aria-hidden="true">&times;</span></button>
</div>
<div class="text-left pull-left">
<pre class="text-left">Traceback (most recent call last):
File "C:\python38\lib\site-packages\urllib3\connection.py", line 156, in _new_conn
conn = connection.create_connection(
File "C:\python38\lib\site-packages\urllib3\util\connection.py", line 84, in create_connection
raise err
File "C:\python38\lib\site-packages\urllib3\util\connection.py", line 74, in create_connection
sock.connect(sa)
ConnectionRefusedError: [WinError 10061] Es konnte keine Verbindung hergestellt werden, da der Zielcomputer die Verbindung verweigerte
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\python38\lib\site-packages\urllib3\connectionpool.py", line 665, in urlopen
httplib_response = self._make_request(
File "C:\python38\lib\site-packages\urllib3\connectionpool.py", line 387, in _make_request
conn.request(method, url, **httplib_request_kw)
File "C:\python38\lib\http\client.py", line 1240, in request
self._send_request(method, url, body, headers, encode_chunked)
File "C:\python38\lib\http\client.py", line 1286, in _send_request
self.endheaders(body, encode_chunked=encode_chunked)
File "C:\python38\lib\http\client.py", line 1235, in endheaders
self._send_output(message_body, encode_chunked=encode_chunked)
File "C:\python38\lib\http\client.py", line 1006, in _send_output
self.send(msg)
File "C:\python38\lib\http\client.py", line 946, in send
self.connect()
File "C:\python38\lib\site-packages\urllib3\connection.py", line 184, in connect
conn = self._new_conn()
File "C:\python38\lib\site-packages\urllib3\connection.py", line 168, in _new_conn
raise NewConnectionError(
urllib3.exceptions.NewConnectionError: <urllib3.connection.HTTPConnection object at 0x0689C2F8>: Failed to establish a new connection: [WinError 10061] Es konnte keine Verbindung hergestellt werden, da der Zielcomputer die Verbindung verweigerte
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Entwicklung\calibre-web-test\test\test_email_STARTTLS.py", line 100, in test_STARTTLS_resend_password
self.create_user('paswd_resend', {'password': '123', 'email': 'a@b.com', 'edit_role': 1})
File "C:\Entwicklung\calibre-web-test\test\helper_ui.py", line 856, in create_user
return cls.change_user(config)
File "C:\Entwicklung\calibre-web-test\test\helper_ui.py", line 895, in change_user
ele = cls.driver.find_element_by_id(checkbox)
File "C:\python38\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 360, in find_element_by_id
return self.find_element(by=By.ID, value=id_)
File "C:\python38\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 976, in find_element
return self.execute(Command.FIND_ELEMENT, {
File "C:\python38\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 319, in execute
response = self.command_executor.execute(driver_command, params)
File "C:\python38\lib\site-packages\selenium\webdriver\remote\remote_connection.py", line 374, in execute
return self._request(command_info[0], url, body=data)
File "C:\python38\lib\site-packages\selenium\webdriver\remote\remote_connection.py", line 397, in _request
resp = self._conn.request(method, url, body=body, headers=headers)
File "C:\python38\lib\site-packages\urllib3\request.py", line 79, in request
return self.request_encode_body(
File "C:\python38\lib\site-packages\urllib3\request.py", line 171, in request_encode_body
return self.urlopen(method, url, **extra_kw)
File "C:\python38\lib\site-packages\urllib3\poolmanager.py", line 330, in urlopen
response = conn.urlopen(method, u.request_uri, **kw)
File "C:\python38\lib\site-packages\urllib3\connectionpool.py", line 747, in urlopen
return self.urlopen(
File "C:\python38\lib\site-packages\urllib3\connectionpool.py", line 747, in urlopen
return self.urlopen(
File "C:\python38\lib\site-packages\urllib3\connectionpool.py", line 747, in urlopen
return self.urlopen(
File "C:\python38\lib\site-packages\urllib3\connectionpool.py", line 719, in urlopen
retries = retries.increment(
File "C:\python38\lib\site-packages\urllib3\util\retry.py", line 436, in increment
raise MaxRetryError(_pool, url, error or ResponseError(cause))
urllib3.exceptions.MaxRetryError: HTTPConnectionPool(host='127.0.0.1', port=62268): Max retries exceeded with url: /session/7c8a9979-87a1-4689-b4d4-ffb1b45e3f56/element (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x0689C2F8>: Failed to establish a new connection: [WinError 10061] Es konnte keine Verbindung hergestellt werden, da der Zielcomputer die Verbindung verweigerte'))</pre>
</div>
<div class="clearfix"></div>
</div>
<!--css div popup end-->
</td>
</tr>
<tr class="result['header']['style']">
<td>unittest.suite._ErrorHolder</td>
<td class="text-center">2</td>
<td class="text-center">0</td>
<td class="text-center">0</td>
<td class="text-center">2</td>
<td class="text-center">0</td>
<td class="text-center">
<a onclick="showClassDetail('c10', 2)">Detail</a>
</td>
</tr>
<tr id='et10.1' class='none bg-info'>
<td>
<div class='testcase'>tearDownClass (test_email_STARTTLS)</div>
</td>
<td colspan='6'>
<div class="text-center">
<a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_et10.1')">ERROR</a>
</div>
<!--css div popup start-->
<div id='div_et10.1' 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_et10.1').style.display='none'"><span
aria-hidden="true">&times;</span></button>
</div>
<div class="text-left pull-left">
<pre class="text-left">Traceback (most recent call last):
File "C:\python38\lib\site-packages\urllib3\connection.py", line 156, in _new_conn
conn = connection.create_connection(
File "C:\python38\lib\site-packages\urllib3\util\connection.py", line 84, in create_connection
raise err
File "C:\python38\lib\site-packages\urllib3\util\connection.py", line 74, in create_connection
sock.connect(sa)
ConnectionRefusedError: [WinError 10061] Es konnte keine Verbindung hergestellt werden, da der Zielcomputer die Verbindung verweigerte
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\python38\lib\site-packages\urllib3\connectionpool.py", line 665, in urlopen
httplib_response = self._make_request(
File "C:\python38\lib\site-packages\urllib3\connectionpool.py", line 387, in _make_request
conn.request(method, url, **httplib_request_kw)
File "C:\python38\lib\http\client.py", line 1240, in request
self._send_request(method, url, body, headers, encode_chunked)
File "C:\python38\lib\http\client.py", line 1286, in _send_request
self.endheaders(body, encode_chunked=encode_chunked)
File "C:\python38\lib\http\client.py", line 1235, in endheaders
self._send_output(message_body, encode_chunked=encode_chunked)
File "C:\python38\lib\http\client.py", line 1006, in _send_output
self.send(msg)
File "C:\python38\lib\http\client.py", line 946, in send
self.connect()
File "C:\python38\lib\site-packages\urllib3\connection.py", line 184, in connect
conn = self._new_conn()
File "C:\python38\lib\site-packages\urllib3\connection.py", line 168, in _new_conn
raise NewConnectionError(
urllib3.exceptions.NewConnectionError: <urllib3.connection.HTTPConnection object at 0x06895D78>: Failed to establish a new connection: [WinError 10061] Es konnte keine Verbindung hergestellt werden, da der Zielcomputer die Verbindung verweigerte
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Entwicklung\calibre-web-test\test\test_email_STARTTLS.py", line 49, in tearDownClass
cls.stop_calibre_web()
File "C:\Entwicklung\calibre-web-test\test\helper_ui.py", line 385, in stop_calibre_web
cls.driver.find_element_by_id('admin_stop').click()
File "C:\python38\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 360, in find_element_by_id
return self.find_element(by=By.ID, value=id_)
File "C:\python38\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 976, in find_element
return self.execute(Command.FIND_ELEMENT, {
File "C:\python38\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 319, in execute
response = self.command_executor.execute(driver_command, params)
File "C:\python38\lib\site-packages\selenium\webdriver\remote\remote_connection.py", line 374, in execute
return self._request(command_info[0], url, body=data)
File "C:\python38\lib\site-packages\selenium\webdriver\remote\remote_connection.py", line 397, in _request
resp = self._conn.request(method, url, body=body, headers=headers)
File "C:\python38\lib\site-packages\urllib3\request.py", line 79, in request
return self.request_encode_body(
File "C:\python38\lib\site-packages\urllib3\request.py", line 171, in request_encode_body
return self.urlopen(method, url, **extra_kw)
File "C:\python38\lib\site-packages\urllib3\poolmanager.py", line 330, in urlopen
response = conn.urlopen(method, u.request_uri, **kw)
File "C:\python38\lib\site-packages\urllib3\connectionpool.py", line 747, in urlopen
return self.urlopen(
File "C:\python38\lib\site-packages\urllib3\connectionpool.py", line 747, in urlopen
return self.urlopen(
File "C:\python38\lib\site-packages\urllib3\connectionpool.py", line 747, in urlopen
return self.urlopen(
File "C:\python38\lib\site-packages\urllib3\connectionpool.py", line 719, in urlopen
retries = retries.increment(
File "C:\python38\lib\site-packages\urllib3\util\retry.py", line 436, in increment
raise MaxRetryError(_pool, url, error or ResponseError(cause))
urllib3.exceptions.MaxRetryError: HTTPConnectionPool(host='127.0.0.1', port=62268): Max retries exceeded with url: /session/7c8a9979-87a1-4689-b4d4-ffb1b45e3f56/element (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x06895D78>: Failed to establish a new connection: [WinError 10061] Es konnte keine Verbindung hergestellt werden, da der Zielcomputer die Verbindung verweigerte'))</pre>
</div>
<div class="clearfix"></div>
</div>
<!--css div popup end-->
</td>
</tr>
<tr id='et10.2' class='none bg-info'>
<td>
<div class='testcase'>tearDownClass (test_updater)</div>
</td>
<td colspan='6'>
<div class="text-center">
<a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_et10.2')">ERROR</a>
</div>
<!--css div popup start-->
<div id='div_et10.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_et10.2').style.display='none'"><span
aria-hidden="true">&times;</span></button>
</div>
<div class="text-left pull-left">
<pre class="text-left">Traceback (most recent call last):
File "C:\Entwicklung\calibre-web-test\test\test_updater.py", line 44, in tearDownClass
cls.return_cw()
File "C:\Entwicklung\calibre-web-test\test\test_updater.py", line 86, in return_cw
shutil.rmtree(CALIBRE_WEB_PATH)
File "C:\python38\lib\shutil.py", line 737, in rmtree
return _rmtree_unsafe(path, onerror)
File "C:\python38\lib\shutil.py", line 610, in _rmtree_unsafe
_rmtree_unsafe(fullname, onerror)
File "C:\python38\lib\shutil.py", line 610, in _rmtree_unsafe
_rmtree_unsafe(fullname, onerror)
File "C:\python38\lib\shutil.py", line 610, in _rmtree_unsafe
_rmtree_unsafe(fullname, onerror)
File "C:\python38\lib\shutil.py", line 615, in _rmtree_unsafe
onerror(os.unlink, fullname, sys.exc_info())
File "C:\python38\lib\shutil.py", line 613, in _rmtree_unsafe
os.unlink(fullname)
PermissionError: [WinError 5] Zugriff verweigert: 'C:\\Entwicklung\\calibre-web\\.git\\objects\\01\\4a615d0befaf50f14e2b125b241e9976b3de9a'</pre>
</div>
<div class="clearfix"></div>
</div>
<!--css div popup end-->
</td>
</tr>
<tr class="result['header']['style']">
<td>test_email_ssl.test_SSL</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('c11', 4)">Detail</a>
</td>
</tr>
<tr id='pt11.1' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_SSL_None_setup_error</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt11.2' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_SSL_STARTTLS_setup_error</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt11.3' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_SSL_logging_email</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt11.4' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_SSL_only</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr class="result['header']['style']">
<td>test_goodreads.TestGoodreads</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">3</td>
<td class="text-center">
<a onclick="showClassDetail('c12', 3)">Detail</a>
</td>
</tr>
<tr id='st12.1' class='none bg-warning'>
<td>
<div class='testcase'>test_author_page</div>
</td>
<td colspan='6'>
<div class="text-center">
<a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_st12.1')">SKIP</a>
</div>
<!--css div popup start-->
<div id='div_st12.1' 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_st12.1').style.display='none'"><span
aria-hidden="true">&times;</span></button>
</div>
<div class="text-left pull-left">
<pre class="text-left">Skipping Goodread Test, no config file found</pre>
</div>
<div class="clearfix"></div>
</div>
<!--css div popup end-->
</td>
</tr>
<tr id='st12.2' class='none bg-warning'>
<td>
<div class='testcase'>test_author_page_invalid</div>
</td>
<td colspan='6'>
<div class="text-center">
<a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_st12.2')">SKIP</a>
</div>
<!--css div popup start-->
<div id='div_st12.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_st12.2').style.display='none'"><span
aria-hidden="true">&times;</span></button>
</div>
<div class="text-left pull-left">
<pre class="text-left">Skipping Goodread Test, no config file found</pre>
</div>
<div class="clearfix"></div>
</div>
<!--css div popup end-->
</td>
</tr>
<tr id='st12.3' class='none bg-warning'>
<td>
<div class='testcase'>test_goodreads_about</div>
</td>
<td colspan='6'>
<div class="text-center">
<a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_st12.3')">SKIP</a>
</div>
<!--css div popup start-->
<div id='div_st12.3' 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_st12.3').style.display='none'"><span
aria-hidden="true">&times;</span></button>
</div>
<div class="text-left pull-left">
<pre class="text-left">Skipping Goodread Test, no config file found</pre>
</div>
<div class="clearfix"></div>
</div>
<!--css div popup end-->
</td>
</tr>
<tr class="result['header']['style']">
<td>test_helper.CalibreHelper</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('c13', 16)">Detail</a>
</td>
</tr>
<tr id='pt13.1' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_author_sort</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt13.2' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_author_sort_comma</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt13.3' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_author_sort_junior</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt13.4' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_author_sort_oneword</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt13.5' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_author_sort_roman</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt13.6' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_check_Limit_Length</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt13.7' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_check_char_replacement</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt13.8' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_check_chinese_Characters</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt13.9' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_check_deg_eur_replacement</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt13.10' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_check_doubleS</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt13.11' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_check_finish_Dot</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt13.12' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_check_high23</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt13.13' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_check_umlauts</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt13.14' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_random_password</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt13.15' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_split_authors</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt13.16' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_whitespaces</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr class="result['header']['style']">
<td>test_kobo_sync.TestKoboSync</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('c14', 8)">Detail</a>
</td>
</tr>
<tr id='pt14.1' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_kobo_about</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt14.2' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_shelves_add_remove_books</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt14.3' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_sync_changed_book</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt14.4' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_sync_invalid</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt14.5' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_sync_reading_state</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt14.6' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_sync_shelf</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt14.7' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_sync_unchanged</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt14.8' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_sync_upload</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr class="result['header']['style']">
<td>unittest.loader._FailedTest</td>
<td class="text-center">1</td>
<td class="text-center">0</td>
<td class="text-center">0</td>
<td class="text-center">1</td>
<td class="text-center">0</td>
<td class="text-center">
<a onclick="showClassDetail('c15', 1)">Detail</a>
</td>
</tr>
<tr id='et15.1' class='none bg-info'>
<td>
<div class='testcase'>unittestloader_FailedTest)</div>
</td>
<td colspan='6'>
<div class="text-center">
<a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_et15.1')">ERROR</a>
</div>
<!--css div popup start-->
<div id='div_et15.1' 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_et15.1').style.display='none'"><span
aria-hidden="true">&times;</span></button>
</div>
<div class="text-left pull-left">
<pre class="text-left">ImportError: Failed to import test module: test_ldap
Traceback (most recent call last):
File "C:\python38\lib\unittest\loader.py", line 436, in _find_test_path
module = self._get_module_from_name(name)
File "C:\python38\lib\unittest\loader.py", line 377, in _get_module_from_name
__import__(name)
File "C:\Entwicklung\calibre-web-test\test\test_ldap.py", line 11, in <module>
from helper_ldap import TestLDAPServer
File "C:\Entwicklung\calibre-web-test\test\helper_ldap.py", line 10, in <module>
from ldaptor.inmemory import fromLDIFFile
ModuleNotFoundError: No module named 'ldaptor'</pre>
</div>
<div class="clearfix"></div>
</div>
<!--css div popup end-->
</td>
</tr>
<tr class="result['header']['style']">
<td>test_logging.test_logging</td>
<td class="text-center">7</td>
<td class="text-center">4</td>
<td class="text-center">1</td>
<td class="text-center">1</td>
<td class="text-center">1</td>
<td class="text-center">
<a onclick="showClassDetail('c16', 7)">Detail</a>
</td>
</tr>
<tr id='ft16.1' class='none bg-danger'>
<td>
<div class='testcase'>test_access_log_recover</div>
</td>
<td colspan='6'>
<div class="text-center">
<a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_ft16.1')">FAIL</a>
</div>
<!--css div popup start-->
<div id='div_ft16.1' 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_ft16.1').style.display='none'"><span
aria-hidden="true">&times;</span></button>
</div>
<div class="text-left pull-left">
<pre class="text-left">Traceback (most recent call last):
File "C:\Entwicklung\calibre-web-test\test\test_logging.py", line 155, in test_access_log_recover
self.assertFalse(os.path.isfile(os.path.join(CALIBRE_WEB_PATH, 'hö lo', 'lü g')))
AssertionError: True is not false</pre>
</div>
<div class="clearfix"></div>
</div>
<!--css div popup end-->
</td>
</tr>
<tr id='pt16.2' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_debug_log</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt16.3' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_failed_login</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='st16.4' class='none bg-warning'>
<td>
<div class='testcase'>test_failed_register</div>
</td>
<td colspan='6'>
<div class="text-center">
<a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_st16.4')">SKIP</a>
</div>
<!--css div popup start-->
<div id='div_st16.4' 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_st16.4').style.display='none'"><span
aria-hidden="true">&times;</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='pt16.5' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_logfile_change</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='et16.6' class='none bg-info'>
<td>
<div class='testcase'>test_logfile_recover</div>
</td>
<td colspan='6'>
<div class="text-center">
<a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_et16.6')">ERROR</a>
</div>
<!--css div popup start-->
<div id='div_et16.6' 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_et16.6').style.display='none'"><span
aria-hidden="true">&times;</span></button>
</div>
<div class="text-left pull-left">
<pre class="text-left">Traceback (most recent call last):
File "C:\Entwicklung\calibre-web-test\test\test_logging.py", line 120, in test_logfile_recover
os.makedirs(os.path.join(CALIBRE_WEB_PATH, 'hü lo'))
File "C:\python38\lib\os.py", line 223, in makedirs
mkdir(name, mode)
FileExistsError: [WinError 183] Eine Datei kann nicht erstellt werden, wenn sie bereits vorhanden ist: 'C:\\Entwicklung\\calibre-web\\hü lo'</pre>
</div>
<div class="clearfix"></div>
</div>
<!--css div popup end-->
</td>
</tr>
<tr id='pt16.7' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_logviewer</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr class="result['header']['style']">
<td>test_login.test_Login</td>
<td class="text-center">11</td>
<td class="text-center">10</td>
<td class="text-center">1</td>
<td class="text-center">0</td>
<td class="text-center">0</td>
<td class="text-center">
<a onclick="showClassDetail('c17', 11)">Detail</a>
</td>
</tr>
<tr id='pt17.1' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_digest_login</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt17.2' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_login_capital_letters_user_unicode_password</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt17.3' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_login_delete_admin</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt17.4' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_login_empty_password</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt17.5' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_login_locale_select</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt17.6' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_login_protected</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt17.7' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_login_remember_me</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt17.8' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_login_rename_user</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt17.9' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_login_unicode_user_space_end_password</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt17.10' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_login_user_with_space_password_end_space</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='ft17.11' class='none bg-danger'>
<td>
<div class='testcase'>test_robots</div>
</td>
<td colspan='6'>
<div class="text-center">
<a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_ft17.11')">FAIL</a>
</div>
<!--css div popup start-->
<div id='div_ft17.11' 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_ft17.11').style.display='none'"><span
aria-hidden="true">&times;</span></button>
</div>
<div class="text-left pull-left">
<pre class="text-left">Traceback (most recent call last):
File "C:\Entwicklung\calibre-web-test\test\test_login.py", line 372, in test_robots
self.assertEqual('This is a robÄtsfile', r.text)
AssertionError: 'This is a robÄtsfile' != 'This is a rob<6F>tsfile'
- This is a robÄtsfile
? ^
+ This is a rob<6F>tsfile
? ^</pre>
</div>
<div class="clearfix"></div>
</div>
<!--css div popup end-->
</td>
</tr>
<tr class="result['header']['style']">
<td>test_oauth.test_OAuth_login</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('c18', 2)">Detail</a>
</td>
</tr>
<tr id='pt18.1' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_oauth_about</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt18.2' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_visible_oauth</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr class="result['header']['style']">
<td>test_opds_feed.test_opds_feed</td>
<td class="text-center">20</td>
<td class="text-center">20</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', 20)">Detail</a>
</td>
</tr>
<tr id='pt19.1' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_opds</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt19.2' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_opds_author</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt19.3' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_opds_calibre_companion</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt19.4' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_opds_cover</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt19.5' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_opds_download_book</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt19.6' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_opds_formats</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt19.7' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_opds_guest_user</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt19.8' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_opds_hot</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt19.9' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_opds_language</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt19.10' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_opds_non_admin</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt19.11' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_opds_publisher</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt19.12' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_opds_random</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt19.13' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_opds_ratings</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt19.14' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_opds_read_unread</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt19.15' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_opds_search</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt19.16' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_opds_series</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt19.17' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_opds_shelf_access</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt19.18' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_opds_tags</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt19.19' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_opds_top_rated</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt19.20' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_recently_added</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr class="result['header']['style']">
<td>test_register.test_register</td>
<td class="text-center">7</td>
<td class="text-center">6</td>
<td class="text-center">1</td>
<td class="text-center">0</td>
<td class="text-center">0</td>
<td class="text-center">
<a onclick="showClassDetail('c20', 7)">Detail</a>
</td>
</tr>
<tr id='ft20.1' class='none bg-danger'>
<td>
<div class='testcase'>test_forgot_password</div>
</td>
<td colspan='6'>
<div class="text-center">
<a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_ft20.1')">FAIL</a>
</div>
<!--css div popup start-->
<div id='div_ft20.1' 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_ft20.1').style.display='none'"><span
aria-hidden="true">&times;</span></button>
</div>
<div class="text-left pull-left">
<pre class="text-left">Traceback (most recent call last):
File "C:\Entwicklung\calibre-web-test\test\test_register.py", line 200, in test_forgot_password
self.assertTrue(self.check_user_logged_in('forget', noCompare=True))
AssertionError: False is not true</pre>
</div>
<div class="clearfix"></div>
</div>
<!--css div popup end-->
</td>
</tr>
<tr id='pt20.2' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_limit_domain</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt20.3' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_register_no_server</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt20.4' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_registering_only_email</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt20.5' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_registering_user</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt20.6' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_registering_user_fail</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt20.7' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_user_change_password</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr class="result['header']['style']">
<td>test_shelf.test_shelf</td>
<td class="text-center">10</td>
<td class="text-center">9</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('c21', 10)">Detail</a>
</td>
</tr>
<tr id='pt21.1' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_add_shelf_from_search</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt21.2' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_arrange_shelf</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt21.3' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_delete_book_of_shelf</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt21.4' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_private_shelf</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt21.5' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_public_private_shelf</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt21.6' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_public_shelf</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt21.7' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_rename_shelf</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt21.8' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_shelf_action_non_shelf_edit_role</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='st21.9' class='none bg-warning'>
<td>
<div class='testcase'>test_shelf_database_change</div>
</td>
<td colspan='6'>
<div class="text-center">
<a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_st21.9')">SKIP</a>
</div>
<!--css div popup start-->
<div id='div_st21.9' 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_st21.9').style.display='none'"><span
aria-hidden="true">&times;</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='pt21.10' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_shelf_long_name</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr class="result['header']['style']">
<td>test_updater.TestUpdater</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('c22', 8)">Detail</a>
</td>
</tr>
<tr id='pt22.1' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_check_update_nightly_errors</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt22.2' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_check_update_nightly_request_errors</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt22.3' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_check_update_stable_errors</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt22.4' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_check_update_stable_versions</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt22.5' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_perform_update</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt22.6' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_perform_update_stable_errors</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='st22.7' class='none bg-warning'>
<td>
<div class='testcase'>test_perform_update_timeout</div>
</td>
<td colspan='6'>
<div class="text-center">
<a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_st22.7')">SKIP</a>
</div>
<!--css div popup start-->
<div id='div_st22.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_st22.7').style.display='none'"><span
aria-hidden="true">&times;</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='pt22.8' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_reconnect_database</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr class="result['header']['style']">
<td>test_user_template.test_user_template</td>
<td class="text-center">19</td>
<td class="text-center">19</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', 19)">Detail</a>
</td>
</tr>
<tr id='pt23.1' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_allow_column_restriction</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt23.2' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_allow_tag_restriction</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt23.3' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_archived_format_template</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt23.4' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_author_user_template</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt23.5' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_best_user_template</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt23.6' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_category_user_template</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt23.7' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_deny_column_restriction</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt23.8' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_deny_tag_restriction</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt23.9' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_detail_random_user_template</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt23.10' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_format_user_template</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt23.11' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_hot_user_template</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt23.12' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_language_user_template</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt23.13' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_limit_book_languages</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt23.14' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_publisher_user_template</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt23.15' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_random_user_template</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt23.16' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_read_user_template</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt23.17' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_recent_user_template</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt23.18' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_series_user_template</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt23.19' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_ui_language_settings</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr class="result['header']['style']">
<td>test_visiblilitys.TestCalibreWebVisibilitys</td>
<td class="text-center">30</td>
<td class="text-center">30</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', 30)">Detail</a>
</td>
</tr>
<tr id='pt24.1' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_about</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt24.2' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_admin_SMTP_Settings</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt24.3' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_admin_add_user</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt24.4' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_admin_change_password</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt24.5' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_admin_change_visibility_archived</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt24.6' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_admin_change_visibility_authors</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt24.7' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_admin_change_visibility_category</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt24.8' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_admin_change_visibility_file_formats</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt24.9' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_admin_change_visibility_hot</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt24.10' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_admin_change_visibility_language</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt24.11' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_admin_change_visibility_publisher</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt24.12' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_admin_change_visibility_random</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt24.13' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_admin_change_visibility_rated</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt24.14' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_admin_change_visibility_rating</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt24.15' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_admin_change_visibility_read</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt24.16' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_admin_change_visibility_series</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt24.17' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_allow_columns</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt24.18' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_allow_tags</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt24.19' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_archive_books</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt24.20' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_authors_max_settings</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt24.21' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_checked_logged_in</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt24.22' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_hide_custom_column</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt24.23' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_link_column_to_read_status</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt24.24' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_random_books_available</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt24.25' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_restrict_columns</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt24.26' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_restrict_tags</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt24.27' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_search_functions</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt24.28' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_search_string</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt24.29' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_user_email_available</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='pt24.30' class='hiddenRow bg-success'>
<td>
<div class='testcase'>test_user_visibility_sidebar</div>
</td>
<td colspan='6' align='center'>PASS</td>
</tr>
<tr id='total_row' class="text-center bg-grey">
<td>Total</td>
<td>223</td>
<td>197</td>
<td>8</td>
<td>9</td>
<td>9</td>
<td>&nbsp;</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>Windows 10 10.0.19041 Intel64 Family 6 Model 69 Stepping 1, GenuineIntel AMD64</td>
<td>Basic</td>
</tr>
<tr>
<th>Python</th>
<td>3.8.3</td>
<td>Basic</td>
</tr>
<tr>
<th>Babel</th>
<td>2.8.0</td>
<td>Basic</td>
</tr>
<tr>
<th>backports-abc</th>
<td>0.5</td>
<td>Basic</td>
</tr>
<tr>
<th>Flask</th>
<td>1.1.2</td>
<td>Basic</td>
</tr>
<tr>
<th>Flask-Babel</th>
<td>1.0.0</td>
<td>Basic</td>
</tr>
<tr>
<th>Flask-Login</th>
<td>0.5.0</td>
<td>Basic</td>
</tr>
<tr>
<th>Flask-Principal</th>
<td>0.4.0</td>
<td>Basic</td>
</tr>
<tr>
<th>iso-639</th>
<td>0.4.5</td>
<td>Basic</td>
</tr>
<tr>
<th>Jinja2</th>
<td>2.11.2</td>
<td>Basic</td>
</tr>
<tr>
<th>natsort</th>
<td>7.0.1</td>
<td>Basic</td>
</tr>
<tr>
<th>pyasn1</th>
<td>0.4.8</td>
<td>Basic</td>
</tr>
<tr>
<th>pyasn1-modules</th>
<td>0.2.8</td>
<td>Basic</td>
</tr>
<tr>
<th>PyPDF2</th>
<td>1.26.0</td>
<td>Basic</td>
</tr>
<tr>
<th>pytz</th>
<td>2020.1</td>
<td>Basic</td>
</tr>
<tr>
<th>requests</th>
<td>2.23.0</td>
<td>Basic</td>
</tr>
<tr>
<th>rsa</th>
<td>4.6</td>
<td>Basic</td>
</tr>
<tr>
<th>singledispatch</th>
<td>3.4.0.3</td>
<td>Basic</td>
</tr>
<tr>
<th>six</th>
<td>1.15.0</td>
<td>Basic</td>
</tr>
<tr>
<th>SQLAlchemy</th>
<td>1.3.19</td>
<td>Basic</td>
</tr>
<tr>
<th>tornado</th>
<td>6.0.4</td>
<td>Basic</td>
</tr>
<tr>
<th>Unidecode</th>
<td>1.1.1</td>
<td>Basic</td>
</tr>
<tr>
<th>uritemplate</th>
<td>3.0.1</td>
<td>Basic</td>
</tr>
<tr>
<th>Wand</th>
<td>0.5.9</td>
<td>Basic</td>
</tr>
<tr>
<th>Werkzeug</th>
<td>1.0.1</td>
<td>Basic</td>
</tr>
<tr>
<th>Pillow</th>
<td>7.2.0</td>
<td>testCoverEditBooks</td>
</tr>
<tr>
<th>comicapi</th>
<td>2.1.1</td>
<td>TestEditAdditionalBooks</td>
</tr>
<tr>
<th>lxml</th>
<td>4.5.2</td>
<td>TestEditAdditionalBooks</td>
</tr>
<tr>
<th>Pillow</th>
<td>7.2.0</td>
<td>TestEditAdditionalBooks</td>
</tr>
<tr>
<th>rarfile</th>
<td>4.0</td>
<td>TestEditAdditionalBooks</td>
</tr>
<tr>
<th>lxml</th>
<td>4.5.2</td>
<td>TestEditBooks</td>
</tr>
<tr>
<th>Pillow</th>
<td>7.2.0</td>
<td>TestEditBooks</td>
</tr>
<tr>
<th>google-api-python-client</th>
<td>1.10.1</td>
<td>test_edit_books_gdrive</td>
</tr>
<tr>
<th>httplib2</th>
<td>0.18.1</td>
<td>test_edit_books_gdrive</td>
</tr>
<tr>
<th>oauth2client</th>
<td>4.1.3</td>
<td>test_edit_books_gdrive</td>
</tr>
<tr>
<th>PyDrive</th>
<td>1.3.1</td>
<td>test_edit_books_gdrive</td>
</tr>
<tr>
<th>PyYAML</th>
<td>5.3.1</td>
<td>test_edit_books_gdrive</td>
</tr>
<tr>
<th>jsonschema</th>
<td>3.2.0</td>
<td>TestKoboSync</td>
</tr>
<tr>
<th>Flask-Dance</th>
<td>3.0.0</td>
<td>test_OAuth_login</td>
</tr>
<tr>
<th>SQLAlchemy-Utils</th>
<td>0.36.8</td>
<td>test_OAuth_login</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
<script>
drawCircle(197, 8, 9, 9);
</script>
</div>
<footer>
<div id='foter' class="text-center">
<p>Made with HTMLTestRunner from https://github.com/oldani/HtmlTestRunner</p>
</div>
</footer>
</body>
</html>