summaryrefslogtreecommitdiffhomepage
path: root/gui/src
diff options
context:
space:
mode:
authorOskar Nyberg <oskar@mullvad.net>2024-04-16 08:06:53 +0200
committerOskar Nyberg <oskar@mullvad.net>2024-04-19 11:35:01 +0200
commita45790318396d5f8b73a55c82d512868968fbe4b (patch)
treec42f14c823b239f245a75f563ed5c0c8433e69d5 /gui/src
parentb2e98f22541612604a2438746f1e784342d23a6f (diff)
downloadmullvadvpn-a45790318396d5f8b73a55c82d512868968fbe4b.tar.xz
mullvadvpn-a45790318396d5f8b73a55c82d512868968fbe4b.zip
Add GUI test for custom bridge
Diffstat (limited to 'gui/src')
-rw-r--r--gui/src/renderer/components/OpenVpnSettings.tsx3
-rw-r--r--gui/src/renderer/components/cell/Selector.tsx10
2 files changed, 10 insertions, 3 deletions
diff --git a/gui/src/renderer/components/OpenVpnSettings.tsx b/gui/src/renderer/components/OpenVpnSettings.tsx
index dee1e64089..5013b158f8 100644
--- a/gui/src/renderer/components/OpenVpnSettings.tsx
+++ b/gui/src/renderer/components/OpenVpnSettings.tsx
@@ -269,6 +269,7 @@ function BridgeModeSelector() {
label: messages.gettext('On'),
value: 'on',
disabled: tunnelProtocol !== 'openvpn' || transportProtocol === 'udp',
+ 'data-testid': 'bridge-mode-on',
},
{
label: messages.gettext('Off'),
@@ -367,7 +368,7 @@ function BridgeModeSelector() {
<SmallButton key="cancel" onClick={hideConfirmationDialog}>
{messages.gettext('Cancel')}
</SmallButton>,
- <SmallButton key="confirm" onClick={confirmBridgeState}>
+ <SmallButton key="confirm" onClick={confirmBridgeState} data-testid="enable-confirm">
{messages.gettext('Enable')}
</SmallButton>,
]}
diff --git a/gui/src/renderer/components/cell/Selector.tsx b/gui/src/renderer/components/cell/Selector.tsx
index e527017435..5e5d685a59 100644
--- a/gui/src/renderer/components/cell/Selector.tsx
+++ b/gui/src/renderer/components/cell/Selector.tsx
@@ -16,6 +16,8 @@ export interface SelectorItem<T> {
label: string;
value: T;
disabled?: boolean;
+ // eslint-disable-next-line @typescript-eslint/naming-convention
+ 'data-testid'?: string;
}
// T represents the available values and U represent the value of "Automatic"/"Any" if there is one.
@@ -51,7 +53,8 @@ export default function Selector<T, U>(props: SelectorProps<T, U>) {
isSelected={selected}
disabled={props.disabled || item.disabled}
forwardedRef={ref}
- onSelect={props.onSelect}>
+ onSelect={props.onSelect}
+ data-testid={item['data-testid']}>
{item.label}
</SelectorCell>
);
@@ -133,6 +136,8 @@ interface SelectorCellProps<T> {
onSelect: (value: T) => void;
children: React.ReactNode | Array<React.ReactNode>;
forwardedRef?: React.Ref<HTMLButtonElement>;
+ // eslint-disable-next-line @typescript-eslint/naming-convention
+ 'data-testid'?: string;
}
function SelectorCell<T>(props: SelectorCellProps<T>) {
@@ -150,7 +155,8 @@ function SelectorCell<T>(props: SelectorCellProps<T>) {
disabled={props.disabled}
role="option"
aria-selected={props.isSelected}
- aria-disabled={props.disabled}>
+ aria-disabled={props.disabled}
+ data-testid={props['data-testid']}>
<StyledCellIcon
$visible={props.isSelected}
source="icon-tick"