element-web/test/components/views/rooms/__snapshots__/DecryptionFailureBar-test.tsx.snap
Suguru Hirahara 232daaff68
Fix decryption failure bar covering the timeline (#10360)
* Use grid layout instead

- BEM naming style
- Increase block gap from 4px to 8px
- Use flexbox inside 'header' grid-area to let the buttons wrapped
- Use variables
- Remove 4px gap when one of the buttons is not rendered
- Change 'body' to 'message'
- Set 'align-self: start' to the icon and spinner

Signed-off-by: Suguru Hirahara <luixxiul@users.noreply.github.com>

* Unset height of spinner

Signed-off-by: Suguru Hirahara <luixxiul@users.noreply.github.com>

* Break lines at newline characters with white-space: pre-line

Signed-off-by: Suguru Hirahara <luixxiul@users.noreply.github.com>

* Edit tests to check decryption failure bars on narrow timeline

- checkTimelineNarrow() looks for buttons by default
- Test indicator as well

Signed-off-by: Suguru Hirahara <luixxiul@users.noreply.github.com>

* Remove a line

Signed-off-by: Suguru Hirahara <luixxiul@users.noreply.github.com>

* Edit the test to have it check mx_EventTile_last only inside mx_RoomView_body

Signed-off-by: Suguru Hirahara <luixxiul@users.noreply.github.com>

* Fix double underscores

Signed-off-by: Suguru Hirahara <luixxiul@users.noreply.github.com>

* Fix double underscores - pcss

Signed-off-by: Suguru Hirahara <luixxiul@users.noreply.github.com>

* Iterate - buttons at the bottom

- Set common spacing to buttons with variables
- Remove line breaks, yarn run i18n
- Set data-testid for headlines and buttons in case the tested strings would be displayed elsewhere simultaneously

Signed-off-by: Suguru Hirahara <luixxiul@users.noreply.github.com>

* Check waiting headline as well

Signed-off-by: Suguru Hirahara <luixxiul@users.noreply.github.com>

* Increase spacing between the message and the buttons

Signed-off-by: Suguru Hirahara <luixxiul@users.noreply.github.com>

* lint

Signed-off-by: Suguru Hirahara <luixxiul@users.noreply.github.com>

* Increase block gap between wrapped buttons for clickability

Apply 8px between wrapped buttons

Signed-off-by: Suguru Hirahara <luixxiul@users.noreply.github.com>

* Revert bottom margin of buttons which are not expected to be wrapped

Signed-off-by: Suguru Hirahara <luixxiul@users.noreply.github.com>

* Check visibility instead of existence

This commit removes data-testid from headlines and data-testid-button and checks whether the elements are really visible, not overflowing the viewport.

Signed-off-by: Suguru Hirahara <luixxiul@users.noreply.github.com>

* Remove redundant gap between 'mx_DecryptionFailureBar_start' and the bottom edge

This commit adds '.mx_DecryptionFailureBar--withEnd' class name to have it applied to the bar only if it has button(s). This way the bar is rendered with a flexbox and the row-gap declaration is respected only if there is a 'mx_DecryptionFailureBar--withEnd' element. The element  currently includes the button(s) only.

Signed-off-by: Suguru Hirahara <luixxiul@users.noreply.github.com>

* lint - prettier

Signed-off-by: Suguru Hirahara <luixxiul@users.noreply.github.com>

* Have Percy take a snapshot of the bar loading spinner before checkTimelineNarrow()

The loading spinner is likely to disappear while checking the bar on the narrow timeline.

Signed-off-by: Suguru Hirahara <luixxiul@users.noreply.github.com>

---------

Signed-off-by: Suguru Hirahara <luixxiul@users.noreply.github.com>
Co-authored-by: Kerry <kerrya@element.io>
2023-03-30 10:11:16 +01:00

705 lines
19 KiB
Text

// Jest Snapshot v1, https://goo.gl/fbAQLP
exports[`<DecryptionFailureBar /> Displays a general error message if there are no other verified devices 1`] = `
<div
class="mx_DecryptionFailureBar"
>
<div
class="mx_DecryptionFailureBar_start"
>
<div
class="mx_DecryptionFailureBar_start_status"
>
<div
data-testid="decryption-failure-bar-indicator"
>
<div
class="mx_DecryptionFailureBar_start_status_icon"
data-testid="decryption-failure-bar-icon"
/>
</div>
</div>
<div
class="mx_DecryptionFailureBar_start_headline"
>
Some messages could not be decrypted
</div>
<div
class="mx_DecryptionFailureBar_start_message"
>
Unfortunately, there are no other verified devices to request decryption keys from. Signing in and verifying other devices may help avoid this situation in the future.
</div>
</div>
<div
class="mx_DecryptionFailureBar_end"
/>
</div>
`;
exports[`<DecryptionFailureBar /> Displays a loading spinner 1`] = `
<div
class="mx_DecryptionFailureBar"
>
<div
class="mx_DecryptionFailureBar_start"
>
<div
class="mx_DecryptionFailureBar_start_status"
>
<div
data-testid="decryption-failure-bar-indicator"
>
<div
class="mx_Spinner"
>
<div
aria-label="Loading…"
class="mx_Spinner_icon"
data-testid="spinner"
role="progressbar"
style="width: 24px; height: 24px;"
/>
</div>
</div>
</div>
<div
class="mx_DecryptionFailureBar_start_headline"
>
Decrypting messages…
</div>
<div
class="mx_DecryptionFailureBar_start_message"
>
Please wait as we try to decrypt your messages. This may take a few moments.
</div>
</div>
<div
class="mx_DecryptionFailureBar_end"
/>
</div>
`;
exports[`<DecryptionFailureBar /> Displays button to resend key requests if we are verified 1`] = `
<div
class="mx_DecryptionFailureBar mx_DecryptionFailureBar--withEnd"
>
<div
class="mx_DecryptionFailureBar_start"
>
<div
class="mx_DecryptionFailureBar_start_status"
>
<div
data-testid="decryption-failure-bar-indicator"
>
<div
class="mx_DecryptionFailureBar_start_status_icon"
data-testid="decryption-failure-bar-icon"
/>
</div>
</div>
<div
class="mx_DecryptionFailureBar_start_headline"
>
Open another device to load encrypted messages
</div>
<div
class="mx_DecryptionFailureBar_start_message"
>
This device is requesting decryption keys from your other devices. Opening one of your other devices may speed this up.
</div>
</div>
<div
class="mx_DecryptionFailureBar_end"
>
<div
class="mx_AccessibleButton mx_DecryptionFailureBar_end_button mx_AccessibleButton_hasKind mx_AccessibleButton_kind_primary_outline"
data-testid="decryption-failure-bar-button"
role="button"
tabindex="0"
>
View your device list
</div>
<div
class="mx_AccessibleButton mx_DecryptionFailureBar_end_button mx_AccessibleButton_hasKind mx_AccessibleButton_kind_primary"
data-testid="decryption-failure-bar-button"
role="button"
tabindex="0"
>
Resend key requests
</div>
</div>
</div>
`;
exports[`<DecryptionFailureBar /> Displays button to resend key requests if we are verified 2`] = `
<div
class="mx_DecryptionFailureBar mx_DecryptionFailureBar--withEnd"
>
<div
class="mx_DecryptionFailureBar_start"
>
<div
class="mx_DecryptionFailureBar_start_status"
>
<div
data-testid="decryption-failure-bar-indicator"
>
<div
class="mx_DecryptionFailureBar_start_status_icon"
data-testid="decryption-failure-bar-icon"
/>
</div>
</div>
<div
class="mx_DecryptionFailureBar_start_headline"
>
Open another device to load encrypted messages
</div>
<div
class="mx_DecryptionFailureBar_start_message"
>
This device is requesting decryption keys from your other devices. Opening one of your other devices may speed this up.
</div>
</div>
<div
class="mx_DecryptionFailureBar_end"
>
<div
class="mx_AccessibleButton mx_DecryptionFailureBar_end_button mx_AccessibleButton_hasKind mx_AccessibleButton_kind_primary_outline"
data-testid="decryption-failure-bar-button"
role="button"
tabindex="0"
>
View your device list
</div>
</div>
</div>
`;
exports[`<DecryptionFailureBar /> Displays the button to resend key requests only if there are sessions we haven't already requested 1`] = `
<div
class="mx_DecryptionFailureBar mx_DecryptionFailureBar--withEnd"
>
<div
class="mx_DecryptionFailureBar_start"
>
<div
class="mx_DecryptionFailureBar_start_status"
>
<div
data-testid="decryption-failure-bar-indicator"
>
<div
class="mx_DecryptionFailureBar_start_status_icon"
data-testid="decryption-failure-bar-icon"
/>
</div>
</div>
<div
class="mx_DecryptionFailureBar_start_headline"
>
Open another device to load encrypted messages
</div>
<div
class="mx_DecryptionFailureBar_start_message"
>
This device is requesting decryption keys from your other devices. Opening one of your other devices may speed this up.
</div>
</div>
<div
class="mx_DecryptionFailureBar_end"
>
<div
class="mx_AccessibleButton mx_DecryptionFailureBar_end_button mx_AccessibleButton_hasKind mx_AccessibleButton_kind_primary_outline"
data-testid="decryption-failure-bar-button"
role="button"
tabindex="0"
>
View your device list
</div>
<div
class="mx_AccessibleButton mx_DecryptionFailureBar_end_button mx_AccessibleButton_hasKind mx_AccessibleButton_kind_primary"
data-testid="decryption-failure-bar-button"
role="button"
tabindex="0"
>
Resend key requests
</div>
</div>
</div>
`;
exports[`<DecryptionFailureBar /> Displays the button to resend key requests only if there are sessions we haven't already requested 2`] = `
<div
class="mx_DecryptionFailureBar mx_DecryptionFailureBar--withEnd"
>
<div
class="mx_DecryptionFailureBar_start"
>
<div
class="mx_DecryptionFailureBar_start_status"
>
<div
data-testid="decryption-failure-bar-indicator"
>
<div
class="mx_DecryptionFailureBar_start_status_icon"
data-testid="decryption-failure-bar-icon"
/>
</div>
</div>
<div
class="mx_DecryptionFailureBar_start_headline"
>
Open another device to load encrypted messages
</div>
<div
class="mx_DecryptionFailureBar_start_message"
>
This device is requesting decryption keys from your other devices. Opening one of your other devices may speed this up.
</div>
</div>
<div
class="mx_DecryptionFailureBar_end"
>
<div
class="mx_AccessibleButton mx_DecryptionFailureBar_end_button mx_AccessibleButton_hasKind mx_AccessibleButton_kind_primary_outline"
data-testid="decryption-failure-bar-button"
role="button"
tabindex="0"
>
View your device list
</div>
</div>
</div>
`;
exports[`<DecryptionFailureBar /> Displays the button to resend key requests only if there are sessions we haven't already requested 3`] = `
<div
class="mx_DecryptionFailureBar mx_DecryptionFailureBar--withEnd"
>
<div
class="mx_DecryptionFailureBar_start"
>
<div
class="mx_DecryptionFailureBar_start_status"
>
<div
data-testid="decryption-failure-bar-indicator"
>
<div
class="mx_DecryptionFailureBar_start_status_icon"
data-testid="decryption-failure-bar-icon"
/>
</div>
</div>
<div
class="mx_DecryptionFailureBar_start_headline"
>
Open another device to load encrypted messages
</div>
<div
class="mx_DecryptionFailureBar_start_message"
>
This device is requesting decryption keys from your other devices. Opening one of your other devices may speed this up.
</div>
</div>
<div
class="mx_DecryptionFailureBar_end"
>
<div
class="mx_AccessibleButton mx_DecryptionFailureBar_end_button mx_AccessibleButton_hasKind mx_AccessibleButton_kind_primary_outline"
data-testid="decryption-failure-bar-button"
role="button"
tabindex="0"
>
View your device list
</div>
<div
class="mx_AccessibleButton mx_DecryptionFailureBar_end_button mx_AccessibleButton_hasKind mx_AccessibleButton_kind_primary"
data-testid="decryption-failure-bar-button"
role="button"
tabindex="0"
>
Resend key requests
</div>
</div>
</div>
`;
exports[`<DecryptionFailureBar /> Displays the button to resend key requests only if there are sessions we haven't already requested 4`] = `
<div
class="mx_DecryptionFailureBar mx_DecryptionFailureBar--withEnd"
>
<div
class="mx_DecryptionFailureBar_start"
>
<div
class="mx_DecryptionFailureBar_start_status"
>
<div
data-testid="decryption-failure-bar-indicator"
>
<div
class="mx_DecryptionFailureBar_start_status_icon"
data-testid="decryption-failure-bar-icon"
/>
</div>
</div>
<div
class="mx_DecryptionFailureBar_start_headline"
>
Open another device to load encrypted messages
</div>
<div
class="mx_DecryptionFailureBar_start_message"
>
This device is requesting decryption keys from your other devices. Opening one of your other devices may speed this up.
</div>
</div>
<div
class="mx_DecryptionFailureBar_end"
>
<div
class="mx_AccessibleButton mx_DecryptionFailureBar_end_button mx_AccessibleButton_hasKind mx_AccessibleButton_kind_primary_outline"
data-testid="decryption-failure-bar-button"
role="button"
tabindex="0"
>
View your device list
</div>
</div>
</div>
`;
exports[`<DecryptionFailureBar /> Does not display a button to send key requests if we are unverified 1`] = `
<div
class="mx_DecryptionFailureBar mx_DecryptionFailureBar--withEnd"
>
<div
class="mx_DecryptionFailureBar_start"
>
<div
class="mx_DecryptionFailureBar_start_status"
>
<div
data-testid="decryption-failure-bar-indicator"
>
<div
class="mx_DecryptionFailureBar_start_status_icon"
data-testid="decryption-failure-bar-icon"
/>
</div>
</div>
<div
class="mx_DecryptionFailureBar_start_headline"
>
Verify this device to access all messages
</div>
<div
class="mx_DecryptionFailureBar_start_message"
>
This device was unable to decrypt some messages because it has not been verified yet.
</div>
</div>
<div
class="mx_DecryptionFailureBar_end"
>
<div
class="mx_AccessibleButton mx_DecryptionFailureBar_end_button mx_AccessibleButton_hasKind mx_AccessibleButton_kind_primary"
data-testid="decryption-failure-bar-button"
role="button"
tabindex="0"
>
Verify
</div>
</div>
</div>
`;
exports[`<DecryptionFailureBar /> Handles device updates 1`] = `
<div
class="mx_DecryptionFailureBar mx_DecryptionFailureBar--withEnd"
>
<div
class="mx_DecryptionFailureBar_start"
>
<div
class="mx_DecryptionFailureBar_start_status"
>
<div
data-testid="decryption-failure-bar-indicator"
>
<div
class="mx_DecryptionFailureBar_start_status_icon"
data-testid="decryption-failure-bar-icon"
/>
</div>
</div>
<div
class="mx_DecryptionFailureBar_start_headline"
>
Verify this device to access all messages
</div>
<div
class="mx_DecryptionFailureBar_start_message"
>
This device was unable to decrypt some messages because it has not been verified yet.
</div>
</div>
<div
class="mx_DecryptionFailureBar_end"
>
<div
class="mx_AccessibleButton mx_DecryptionFailureBar_end_button mx_AccessibleButton_hasKind mx_AccessibleButton_kind_primary"
data-testid="decryption-failure-bar-button"
role="button"
tabindex="0"
>
Verify
</div>
</div>
</div>
`;
exports[`<DecryptionFailureBar /> Handles device updates 2`] = `
<div
class="mx_DecryptionFailureBar mx_DecryptionFailureBar--withEnd"
>
<div
class="mx_DecryptionFailureBar_start"
>
<div
class="mx_DecryptionFailureBar_start_status"
>
<div
data-testid="decryption-failure-bar-indicator"
>
<div
class="mx_DecryptionFailureBar_start_status_icon"
data-testid="decryption-failure-bar-icon"
/>
</div>
</div>
<div
class="mx_DecryptionFailureBar_start_headline"
>
Open another device to load encrypted messages
</div>
<div
class="mx_DecryptionFailureBar_start_message"
>
This device is requesting decryption keys from your other devices. Opening one of your other devices may speed this up.
</div>
</div>
<div
class="mx_DecryptionFailureBar_end"
>
<div
class="mx_AccessibleButton mx_DecryptionFailureBar_end_button mx_AccessibleButton_hasKind mx_AccessibleButton_kind_primary_outline"
data-testid="decryption-failure-bar-button"
role="button"
tabindex="0"
>
View your device list
</div>
<div
class="mx_AccessibleButton mx_DecryptionFailureBar_end_button mx_AccessibleButton_hasKind mx_AccessibleButton_kind_primary"
data-testid="decryption-failure-bar-button"
role="button"
tabindex="0"
>
Resend key requests
</div>
</div>
</div>
`;
exports[`<DecryptionFailureBar /> Prompts the user to reset if they have no other verified devices and no backups 1`] = `
<div
class="mx_DecryptionFailureBar mx_DecryptionFailureBar--withEnd"
>
<div
class="mx_DecryptionFailureBar_start"
>
<div
class="mx_DecryptionFailureBar_start_status"
>
<div
data-testid="decryption-failure-bar-indicator"
>
<div
class="mx_DecryptionFailureBar_start_status_icon"
data-testid="decryption-failure-bar-icon"
/>
</div>
</div>
<div
class="mx_DecryptionFailureBar_start_headline"
>
Reset your keys to prevent future decryption errors
</div>
<div
class="mx_DecryptionFailureBar_start_message"
>
You will not be able to access old undecryptable messages, but resetting your keys will allow you to receive new messages.
</div>
</div>
<div
class="mx_DecryptionFailureBar_end"
>
<div
class="mx_AccessibleButton mx_DecryptionFailureBar_end_button mx_AccessibleButton_hasKind mx_AccessibleButton_kind_primary"
data-testid="decryption-failure-bar-button"
role="button"
tabindex="0"
>
Reset
</div>
</div>
</div>
`;
exports[`<DecryptionFailureBar /> Prompts the user to verify if they have backups 1`] = `
<div
class="mx_DecryptionFailureBar mx_DecryptionFailureBar--withEnd"
>
<div
class="mx_DecryptionFailureBar_start"
>
<div
class="mx_DecryptionFailureBar_start_status"
>
<div
data-testid="decryption-failure-bar-indicator"
>
<div
class="mx_DecryptionFailureBar_start_status_icon"
data-testid="decryption-failure-bar-icon"
/>
</div>
</div>
<div
class="mx_DecryptionFailureBar_start_headline"
>
Verify this device to access all messages
</div>
<div
class="mx_DecryptionFailureBar_start_message"
>
This device was unable to decrypt some messages because it has not been verified yet.
</div>
</div>
<div
class="mx_DecryptionFailureBar_end"
>
<div
class="mx_AccessibleButton mx_DecryptionFailureBar_end_button mx_AccessibleButton_hasKind mx_AccessibleButton_kind_primary"
data-testid="decryption-failure-bar-button"
role="button"
tabindex="0"
>
Verify
</div>
</div>
</div>
`;
exports[`<DecryptionFailureBar /> Prompts the user to verify if they have other devices 1`] = `
<div
class="mx_DecryptionFailureBar mx_DecryptionFailureBar--withEnd"
>
<div
class="mx_DecryptionFailureBar_start"
>
<div
class="mx_DecryptionFailureBar_start_status"
>
<div
data-testid="decryption-failure-bar-indicator"
>
<div
class="mx_DecryptionFailureBar_start_status_icon"
data-testid="decryption-failure-bar-icon"
/>
</div>
</div>
<div
class="mx_DecryptionFailureBar_start_headline"
>
Verify this device to access all messages
</div>
<div
class="mx_DecryptionFailureBar_start_message"
>
This device was unable to decrypt some messages because it has not been verified yet.
</div>
</div>
<div
class="mx_DecryptionFailureBar_end"
>
<div
class="mx_AccessibleButton mx_DecryptionFailureBar_end_button mx_AccessibleButton_hasKind mx_AccessibleButton_kind_primary"
data-testid="decryption-failure-bar-button"
role="button"
tabindex="0"
>
Verify
</div>
</div>
</div>
`;
exports[`<DecryptionFailureBar /> Recommends opening other devices if there are other verified devices 1`] = `
<div
class="mx_DecryptionFailureBar mx_DecryptionFailureBar--withEnd"
>
<div
class="mx_DecryptionFailureBar_start"
>
<div
class="mx_DecryptionFailureBar_start_status"
>
<div
data-testid="decryption-failure-bar-indicator"
>
<div
class="mx_DecryptionFailureBar_start_status_icon"
data-testid="decryption-failure-bar-icon"
/>
</div>
</div>
<div
class="mx_DecryptionFailureBar_start_headline"
>
Open another device to load encrypted messages
</div>
<div
class="mx_DecryptionFailureBar_start_message"
>
This device is requesting decryption keys from your other devices. Opening one of your other devices may speed this up.
</div>
</div>
<div
class="mx_DecryptionFailureBar_end"
>
<div
class="mx_AccessibleButton mx_DecryptionFailureBar_end_button mx_AccessibleButton_hasKind mx_AccessibleButton_kind_primary_outline"
data-testid="decryption-failure-bar-button"
role="button"
tabindex="0"
>
View your device list
</div>
<div
class="mx_AccessibleButton mx_DecryptionFailureBar_end_button mx_AccessibleButton_hasKind mx_AccessibleButton_kind_primary"
data-testid="decryption-failure-bar-button"
role="button"
tabindex="0"
>
Resend key requests
</div>
</div>
</div>
`;