mirror of
https://github.com/cypherstack/stack_wallet.git
synced 2025-02-03 11:46:41 +00:00
WIP: Desktop widget tests and update other tests
This commit is contained in:
parent
91606e03b6
commit
1c2cd82292
9 changed files with 198 additions and 15 deletions
|
@ -1,3 +1,4 @@
|
|||
import 'package:event_bus/event_bus.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_test/flutter_test.dart';
|
||||
import 'package:stackwallet/utilities/theme/light_colors.dart';
|
||||
|
@ -6,8 +7,7 @@ import 'package:stackwallet/widgets/custom_loading_overlay.dart';
|
|||
|
||||
void main() {
|
||||
testWidgets("Test wiget displays correct text", (widgetTester) async {
|
||||
const customLoadingOverlay =
|
||||
CustomLoadingOverlay(message: "Updating exchange rate", eventBus: null);
|
||||
final eventBus = EventBus();
|
||||
await widgetTester.pumpWidget(
|
||||
MaterialApp(
|
||||
theme: ThemeData(
|
||||
|
@ -15,8 +15,9 @@ void main() {
|
|||
StackColors.fromStackColorTheme(LightColors()),
|
||||
],
|
||||
),
|
||||
home: const Material(
|
||||
child: customLoadingOverlay,
|
||||
home: Material(
|
||||
child: CustomLoadingOverlay(
|
||||
message: "Updating exchange rate", eventBus: eventBus),
|
||||
),
|
||||
),
|
||||
);
|
||||
|
|
33
test/widget_tests/desktop/custom_text_button_test.dart
Normal file
33
test/widget_tests/desktop/custom_text_button_test.dart
Normal file
|
@ -0,0 +1,33 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_test/flutter_test.dart';
|
||||
import 'package:stackwallet/utilities/theme/light_colors.dart';
|
||||
import 'package:stackwallet/utilities/theme/stack_colors.dart';
|
||||
import 'package:stackwallet/utilities/util.dart';
|
||||
import 'package:stackwallet/widgets/desktop/custom_text_button.dart';
|
||||
|
||||
void main() {
|
||||
testWidgets("Test text button ", (widgetTester) async {
|
||||
final key = UniqueKey();
|
||||
|
||||
await widgetTester.pumpWidget(
|
||||
MaterialApp(
|
||||
theme: ThemeData(
|
||||
extensions: [
|
||||
StackColors.fromStackColorTheme(LightColors()),
|
||||
],
|
||||
),
|
||||
home: Material(
|
||||
child: CustomTextButtonBase(
|
||||
key: key,
|
||||
width: 200,
|
||||
height: 300,
|
||||
textButton:
|
||||
const TextButton(onPressed: null, child: Text("Some Text")),
|
||||
),
|
||||
),
|
||||
),
|
||||
);
|
||||
|
||||
expect(find.byType(CustomTextButtonBase), findsOneWidget);
|
||||
});
|
||||
}
|
34
test/widget_tests/desktop/desktop_app_bar_test.dart
Normal file
34
test/widget_tests/desktop/desktop_app_bar_test.dart
Normal file
|
@ -0,0 +1,34 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_test/flutter_test.dart';
|
||||
import 'package:stackwallet/pages_desktop_specific/home/my_stack_view/exit_to_my_stack_button.dart';
|
||||
import 'package:stackwallet/utilities/theme/light_colors.dart';
|
||||
import 'package:stackwallet/utilities/theme/stack_colors.dart';
|
||||
import 'package:stackwallet/widgets/custom_buttons/app_bar_icon_button.dart';
|
||||
import 'package:stackwallet/widgets/desktop/desktop_app_bar.dart';
|
||||
|
||||
void main() {
|
||||
testWidgets("Test DesktopAppBar widget", (widgetTester) async {
|
||||
final key = UniqueKey();
|
||||
|
||||
await widgetTester.pumpWidget(
|
||||
MaterialApp(
|
||||
theme: ThemeData(
|
||||
extensions: [
|
||||
StackColors.fromStackColorTheme(LightColors()),
|
||||
],
|
||||
),
|
||||
home: Material(
|
||||
child: DesktopAppBar(
|
||||
key: key,
|
||||
isCompactHeight: false,
|
||||
leading: const AppBarBackButton(),
|
||||
trailing: const ExitToMyStackButton(),
|
||||
center: const Text("Some Text"),
|
||||
),
|
||||
),
|
||||
),
|
||||
);
|
||||
|
||||
expect(find.byType(DesktopAppBar), findsOneWidget);
|
||||
});
|
||||
}
|
|
@ -0,0 +1,40 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||
import 'package:flutter_test/flutter_test.dart';
|
||||
import 'package:mockingjay/mockingjay.dart' as mockingjay;
|
||||
import 'package:stackwallet/utilities/theme/light_colors.dart';
|
||||
import 'package:stackwallet/utilities/theme/stack_colors.dart';
|
||||
import 'package:stackwallet/widgets/custom_buttons/app_bar_icon_button.dart';
|
||||
import 'package:stackwallet/widgets/desktop/desktop_dialog_close_button.dart';
|
||||
|
||||
void main() {
|
||||
testWidgets("test DesktopDialog button pressed", (widgetTester) async {
|
||||
final key = UniqueKey();
|
||||
|
||||
final navigator = mockingjay.MockNavigator();
|
||||
|
||||
await widgetTester.pumpWidget(
|
||||
ProviderScope(
|
||||
overrides: [],
|
||||
child: MaterialApp(
|
||||
theme: ThemeData(
|
||||
extensions: [
|
||||
StackColors.fromStackColorTheme(LightColors()),
|
||||
],
|
||||
),
|
||||
home: mockingjay.MockNavigatorProvider(
|
||||
navigator: navigator,
|
||||
child: DesktopDialogCloseButton(
|
||||
key: key,
|
||||
onPressedOverride: null,
|
||||
)),
|
||||
),
|
||||
),
|
||||
);
|
||||
|
||||
await widgetTester.tap(find.byType(AppBarIconButton));
|
||||
await widgetTester.pumpAndSettle();
|
||||
|
||||
mockingjay.verify(() => navigator.pop()).called(1);
|
||||
});
|
||||
}
|
30
test/widget_tests/desktop/desktop_dialog_test.dart
Normal file
30
test/widget_tests/desktop/desktop_dialog_test.dart
Normal file
|
@ -0,0 +1,30 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_test/flutter_test.dart';
|
||||
import 'package:stackwallet/utilities/theme/light_colors.dart';
|
||||
import 'package:stackwallet/utilities/theme/stack_colors.dart';
|
||||
import 'package:stackwallet/widgets/desktop/desktop_dialog.dart';
|
||||
import 'package:stackwallet/widgets/desktop/desktop_dialog_close_button.dart';
|
||||
|
||||
void main() {
|
||||
testWidgets("test DesktopDialog builds", (widgetTester) async {
|
||||
final key = UniqueKey();
|
||||
|
||||
await widgetTester.pumpWidget(
|
||||
MaterialApp(
|
||||
theme: ThemeData(
|
||||
extensions: [
|
||||
StackColors.fromStackColorTheme(LightColors()),
|
||||
],
|
||||
),
|
||||
home: Material(
|
||||
child: DesktopDialog(
|
||||
key: key,
|
||||
child: const DesktopDialogCloseButton(),
|
||||
),
|
||||
),
|
||||
),
|
||||
);
|
||||
|
||||
expect(find.byType(DesktopDialog), findsOneWidget);
|
||||
});
|
||||
}
|
|
@ -18,6 +18,7 @@ import 'package:stackwallet/widgets/managed_favorite.dart';
|
|||
import 'package:stackwallet/utilities/enums/coin_enum.dart';
|
||||
import 'package:stackwallet/utilities/theme/light_colors.dart';
|
||||
import 'package:stackwallet/utilities/theme/stack_colors.dart';
|
||||
import 'package:stackwallet/utilities/util.dart';
|
||||
|
||||
import 'managed_favorite_test.mocks.dart';
|
||||
|
||||
|
|
|
@ -82,7 +82,7 @@ void main() {
|
|||
(realInvocation) => NodeModel(
|
||||
host: "127.0.0.1",
|
||||
port: 2000,
|
||||
name: "Stack Default",
|
||||
name: "Some other node name",
|
||||
id: "node id",
|
||||
useSSL: true,
|
||||
enabled: true,
|
||||
|
@ -94,7 +94,7 @@ void main() {
|
|||
NodeModel(
|
||||
host: "127.0.0.1",
|
||||
port: 2000,
|
||||
name: "Stack Default",
|
||||
name: "Some other node name",
|
||||
id: "node id",
|
||||
useSSL: true,
|
||||
enabled: true,
|
||||
|
@ -122,7 +122,7 @@ void main() {
|
|||
);
|
||||
await tester.pumpAndSettle();
|
||||
|
||||
expect(find.text("Stack Default"), findsOneWidget);
|
||||
expect(find.text("Some other node name"), findsOneWidget);
|
||||
expect(find.text("Connected"), findsOneWidget);
|
||||
expect(find.byType(Text), findsNWidgets(2));
|
||||
expect(find.byType(SvgPicture), findsWidgets);
|
||||
|
|
|
@ -29,7 +29,7 @@ void main() {
|
|||
(realInvocation) => NodeModel(
|
||||
host: "127.0.0.1",
|
||||
port: 2000,
|
||||
name: "Stack Default",
|
||||
name: "Some other name",
|
||||
id: "node id",
|
||||
useSSL: true,
|
||||
enabled: true,
|
||||
|
@ -41,7 +41,7 @@ void main() {
|
|||
(realInvocation) => NodeModel(
|
||||
host: "127.0.0.1",
|
||||
port: 2000,
|
||||
name: "Stack Default",
|
||||
name: "Some other name",
|
||||
id: "node id",
|
||||
useSSL: true,
|
||||
enabled: true,
|
||||
|
@ -72,7 +72,7 @@ void main() {
|
|||
|
||||
await tester.pumpAndSettle();
|
||||
expect(find.text("Node options"), findsOneWidget);
|
||||
expect(find.text("Stack Default"), findsOneWidget);
|
||||
expect(find.text("Some other name"), findsOneWidget);
|
||||
expect(find.text("Connected"), findsOneWidget);
|
||||
expect(find.byType(SvgPicture), findsNWidgets(2));
|
||||
expect(find.text("Details"), findsOneWidget);
|
||||
|
@ -204,7 +204,6 @@ void main() {
|
|||
|
||||
await tester.pumpAndSettle();
|
||||
expect(find.text("Node options"), findsOneWidget);
|
||||
// expect(find.text("Stack Default"), findsOneWidget);
|
||||
expect(find.text("Disconnected"), findsOneWidget);
|
||||
|
||||
await tester.tap(find.text("Connect"));
|
||||
|
|
|
@ -1,10 +1,55 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_svg/svg.dart';
|
||||
import 'package:flutter_test/flutter_test.dart';
|
||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||
import 'package:mockito/annotations.dart';
|
||||
import 'package:mockito/mockito.dart';
|
||||
import 'package:stackwallet/models/exchange/response_objects/trade.dart';
|
||||
import 'package:stackwallet/utilities/theme/light_colors.dart';
|
||||
import 'package:stackwallet/utilities/theme/stack_colors.dart';
|
||||
import 'package:stackwallet/widgets/trade_card.dart';
|
||||
|
||||
void main() {}
|
||||
void main() {
|
||||
testWidgets("Test Trade card builds", (widgetTester) async {
|
||||
final trade = Trade(
|
||||
uuid: "uuid",
|
||||
tradeId: "trade id",
|
||||
rateType: "Estimate rate",
|
||||
direction: "",
|
||||
timestamp: DateTime.parse("1662544771"),
|
||||
updatedAt: DateTime.parse("1662544771"),
|
||||
payInCurrency: "BTC",
|
||||
payInAmount: "10",
|
||||
payInAddress: "btc address",
|
||||
payInNetwork: "",
|
||||
payInExtraId: "",
|
||||
payInTxid: "",
|
||||
payOutCurrency: "xmr",
|
||||
payOutAmount: "10",
|
||||
payOutAddress: "xmr address",
|
||||
payOutNetwork: "",
|
||||
payOutExtraId: "",
|
||||
payOutTxid: "",
|
||||
refundAddress: "refund address",
|
||||
refundExtraId: "",
|
||||
status: "Failed",
|
||||
exchangeName: "Some Exchange");
|
||||
|
||||
await widgetTester.pumpWidget(
|
||||
ProviderScope(
|
||||
overrides: [],
|
||||
child: MaterialApp(
|
||||
theme: ThemeData(
|
||||
extensions: [
|
||||
StackColors.fromStackColorTheme(
|
||||
LightColors(),
|
||||
),
|
||||
],
|
||||
),
|
||||
home: TradeCard(trade: trade, onTap: () {}),
|
||||
),
|
||||
),
|
||||
);
|
||||
|
||||
expect(find.byType(TradeCard), findsOneWidget);
|
||||
expect(find.text("BTC → XMR"), findsOneWidget);
|
||||
expect(find.text("Some Exchange"), findsOneWidget);
|
||||
});
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue