mirror of
https://github.com/cake-tech/cake_wallet.git
synced 2025-01-21 02:04:43 +00:00
3e10023e18
* CI update - use existing build outputs in build_monero_all.sh - update $HOME, fix gh actions - add secrets earlier in the runtime (potentially speed up 'Build generated code' step) - add windows dockerfile - add linux/android dockerfile - update android/linux ci script * [skip slack] [run tests] Run tests on CI, fix tests * [skip slack] [run tests] force enable kvm in android * [skip slack] [run tests] remove inexisting flag * [run tests] [skip slack] update tests * add extra dependencies [skip ci] * [skip slack] [run tests] Add secrets * [skip slack] [run tests] Timeout test cases, continue on error * [skip slack] [run tests] Xvfb fix, timeout fix * [skip slack] [run tests] Start dbus to clean up the logs, use SIGKILL * [skip slack] [run tests] Enable network manager * [skip slack] [run tests] Screen record test, resize screen * [skip slack] [run tests] Improve status report for tests * [skip slack] [run tests] Increase framerate * [skip slack] [run tests] Remove test that I am unable to fix locally easily from CI * [skip slack] [run tests] Simplify ffmpeg command * [skip slack] [run tests] Increase timeout, add comment * [skip slack] Update dockerfile, migrate from mrcyjanek to cake-tech for the ghcr org * Update lib/entities/default_settings_migration.dart Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com> --------- Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
66 lines
2.6 KiB
Dart
66 lines
2.6 KiB
Dart
import 'package:flutter/material.dart';
|
|
import 'package:flutter_test/flutter_test.dart';
|
|
import 'package:integration_test/integration_test.dart';
|
|
|
|
import '../components/common_test_constants.dart';
|
|
import '../components/common_test_flows.dart';
|
|
import '../robots/auth_page_robot.dart';
|
|
import '../robots/dashboard_page_robot.dart';
|
|
import '../robots/exchange_confirm_page_robot.dart';
|
|
import '../robots/exchange_page_robot.dart';
|
|
import '../robots/exchange_trade_page_robot.dart';
|
|
import 'package:cake_wallet/.secrets.g.dart' as secrets;
|
|
|
|
void main() {
|
|
IntegrationTestWidgetsFlutterBinding.ensureInitialized();
|
|
|
|
AuthPageRobot authPageRobot;
|
|
CommonTestFlows commonTestFlows;
|
|
ExchangePageRobot exchangePageRobot;
|
|
DashboardPageRobot dashboardPageRobot;
|
|
ExchangeTradePageRobot exchangeTradePageRobot;
|
|
ExchangeConfirmPageRobot exchangeConfirmPageRobot;
|
|
|
|
testWidgets('Exchange flow', (tester) async {
|
|
authPageRobot = AuthPageRobot(tester);
|
|
commonTestFlows = CommonTestFlows(tester);
|
|
exchangePageRobot = ExchangePageRobot(tester);
|
|
dashboardPageRobot = DashboardPageRobot(tester);
|
|
exchangeTradePageRobot = ExchangeTradePageRobot(tester);
|
|
exchangeConfirmPageRobot = ExchangeConfirmPageRobot(tester);
|
|
|
|
await commonTestFlows.startAppFlow(ValueKey('exchange_app_test_key'));
|
|
await commonTestFlows.welcomePageToRestoreWalletThroughSeedsFlow(
|
|
CommonTestConstants.testWalletType,
|
|
secrets.solanaTestWalletSeeds,
|
|
CommonTestConstants.pin,
|
|
);
|
|
await dashboardPageRobot.navigateToExchangePage();
|
|
|
|
// ----------- Exchange Page -------------
|
|
await exchangePageRobot.selectDepositCurrency(CommonTestConstants.testDepositCurrency);
|
|
await exchangePageRobot.selectReceiveCurrency(CommonTestConstants.testReceiveCurrency);
|
|
|
|
await exchangePageRobot.enterDepositAmount(CommonTestConstants.exchangeTestAmount);
|
|
await exchangePageRobot.enterDepositRefundAddress(
|
|
depositAddress: CommonTestConstants.testWalletAddress,
|
|
);
|
|
await exchangePageRobot.enterReceiveAddress(CommonTestConstants.testWalletAddress);
|
|
|
|
await exchangePageRobot.onExchangeButtonPressed();
|
|
|
|
await exchangePageRobot.handleErrors(CommonTestConstants.exchangeTestAmount);
|
|
|
|
final onAuthPage = authPageRobot.onAuthPage();
|
|
if (onAuthPage) {
|
|
await authPageRobot.enterPinCode(CommonTestConstants.pin);
|
|
}
|
|
|
|
final onAuthPageDesktop = authPageRobot.onAuthPageDesktop();
|
|
if (onAuthPageDesktop) {
|
|
await authPageRobot.enterPassword(CommonTestConstants.pin.join(""));
|
|
}
|
|
await exchangeConfirmPageRobot.onSavedTradeIdButtonPressed();
|
|
await exchangeTradePageRobot.onGotItButtonPressed();
|
|
});
|
|
}
|