mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-07-26 02:49:16 -04:00
Merge pull request #2812 from GSA/2802-making-the-data-more-scannable-through-better-formatting-and-status-indicators
cleaning up css and add better visual for pagination
This commit is contained in:
@@ -77,8 +77,7 @@ def test_all_activity(
|
||||
"Started",
|
||||
"Sender",
|
||||
"Report",
|
||||
"Delivered",
|
||||
"Failed",
|
||||
"Status",
|
||||
]
|
||||
|
||||
assert (
|
||||
@@ -90,7 +89,7 @@ def test_all_activity(
|
||||
|
||||
job_row = rows[0]
|
||||
cells = job_row.find_all("td")
|
||||
assert len(cells) == 7, "Expected five columns in the job row"
|
||||
assert len(cells) == 6, "Expected six columns in the job row"
|
||||
|
||||
job_id_cell = cells[0].find("a").get_text(strip=True)
|
||||
|
||||
@@ -113,13 +112,9 @@ def test_all_activity(
|
||||
report_cell = cells[4].find("span").get_text(strip=True)
|
||||
assert report_cell == "N/A", f"Expected report 'N/A', but got '{report_cell}'"
|
||||
|
||||
delivered_cell = cells[5].get_text(strip=True)
|
||||
assert (
|
||||
delivered_cell == "1"
|
||||
), f"Expected delivered count '1', but got '{delivered_cell}'"
|
||||
|
||||
failed_cell = cells[6].get_text(strip=True)
|
||||
assert failed_cell == "5", f"Expected failed count '5', but got '{failed_cell}'"
|
||||
status_cell = cells[5].get_text(strip=True)
|
||||
assert "1 delivered" in status_cell, f"Expected status to contain '1 delivered', but got '{status_cell}'"
|
||||
assert "5 failed" in status_cell, f"Expected status to contain '5 failed', but got '{status_cell}'"
|
||||
|
||||
|
||||
def test_all_activity_no_jobs(client_request, mocker):
|
||||
|
||||
@@ -239,14 +239,19 @@ test('handleDropdownChange updates DOM for individual selection', () => {
|
||||
<h2 id="table-heading"></h2>
|
||||
<table id="activity-table">
|
||||
<caption id="caption"></caption>
|
||||
<thead>
|
||||
<tr>
|
||||
<th data-column="sender">Sender</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr><td class="sender-column">Test User</td></tr>
|
||||
<tr><td class="sender-column">Other User</td></tr>
|
||||
<tr><td class="sender-column">Test User</td></tr>
|
||||
<tr><td class="sender-column">Test User</td></tr>
|
||||
<tr><td class="sender-column">Other User</td></tr>
|
||||
<tr><td class="sender-column">Test User</td></tr>
|
||||
<tr><td class="sender-column">Test User</td></tr>
|
||||
<tr><td data-sender="Test User">Test User</td></tr>
|
||||
<tr><td data-sender="Other User">Other User</td></tr>
|
||||
<tr><td data-sender="Test User">Test User</td></tr>
|
||||
<tr><td data-sender="Test User">Test User</td></tr>
|
||||
<tr><td data-sender="Other User">Other User</td></tr>
|
||||
<tr><td data-sender="Test User">Test User</td></tr>
|
||||
<tr><td data-sender="Test User">Test User</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
@@ -269,15 +274,18 @@ test('handleDropdownChange updates DOM for individual selection', () => {
|
||||
expect(document.getElementById('table-heading').textContent).toBe('My activity');
|
||||
expect(document.getElementById('caption').textContent).toContain('Test User');
|
||||
|
||||
document.querySelectorAll('.sender-column').forEach(col => {
|
||||
expect(col.style.display).toBe('none');
|
||||
const senderHeader = document.querySelector('[data-column="sender"]');
|
||||
expect(senderHeader.style.display).toBe('none');
|
||||
|
||||
document.querySelectorAll('[data-sender]').forEach(cell => {
|
||||
expect(cell.style.display).toBe('none');
|
||||
});
|
||||
|
||||
const rows = Array.from(document.querySelectorAll('#activity-table tbody tr'));
|
||||
const visibleRows = rows.filter(row => row.style.display !== 'none');
|
||||
expect(visibleRows.length).toBeLessThanOrEqual(5);
|
||||
visibleRows.forEach(row => {
|
||||
const sender = row.querySelector('.sender-column').textContent.trim();
|
||||
const sender = row.querySelector('[data-sender]').dataset.sender;
|
||||
expect(sender).toBe('Test User');
|
||||
});
|
||||
|
||||
@@ -295,10 +303,15 @@ test('handleDropdownChange shows empty message when user has no jobs', () => {
|
||||
<h2 id="table-heading"></h2>
|
||||
<table id="activity-table">
|
||||
<caption id="caption"></caption>
|
||||
<thead>
|
||||
<tr>
|
||||
<th data-column="sender">Sender</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr><td class="sender-column">Other User</td></tr>
|
||||
<tr><td class="sender-column">Another User</td></tr>
|
||||
<tr><td class="sender-column">Different User</td></tr>
|
||||
<tr><td data-sender="Other User">Other User</td></tr>
|
||||
<tr><td data-sender="Another User">Another User</td></tr>
|
||||
<tr><td data-sender="Different User">Different User</td></tr>
|
||||
<tr class="table-row">
|
||||
<td class="table-empty-message" colspan="10">No batched job messages found (messages are kept for 7 days).</td>
|
||||
</tr>
|
||||
@@ -324,8 +337,11 @@ test('handleDropdownChange shows empty message when user has no jobs', () => {
|
||||
expect(document.getElementById('table-heading').textContent).toBe('My activity');
|
||||
expect(document.getElementById('caption').textContent).toContain('Test User');
|
||||
|
||||
document.querySelectorAll('.sender-column').forEach(col => {
|
||||
expect(col.style.display).toBe('none');
|
||||
const senderHeader = document.querySelector('[data-column="sender"]');
|
||||
expect(senderHeader.style.display).toBe('none');
|
||||
|
||||
document.querySelectorAll('[data-sender]').forEach(cell => {
|
||||
expect(cell.style.display).toBe('none');
|
||||
});
|
||||
|
||||
const emptyMessageRow = document.querySelector('.table-empty-message').closest('tr');
|
||||
|
||||
Reference in New Issue
Block a user