test: his_request_test mobile

This commit is contained in:
DenserMeerkat
2024-08-21 22:09:30 +05:30
parent eb02c435e3
commit 063b9258c2
6 changed files with 91 additions and 13 deletions

View File

@@ -0,0 +1,78 @@
import 'package:flutter/material.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:spot/spot.dart';
import 'package:apidash/app.dart';
import 'package:apidash/consts.dart';
import 'package:apidash/widgets/widgets.dart';
import 'package:apidash/screens/history/history_pane.dart';
import 'package:apidash/screens/history/history_widgets/history_widgets.dart';
import '../../test/extensions/widget_tester_extensions.dart';
import '../test_helper.dart';
void main() async {
await ApidashTestHelper.initialize(
size: Size(kCompactWindowWidth, kMinWindowSize.height));
apidashWidgetTest("Testing History of Requests in mobile end-to-end",
(WidgetTester tester, helper) async {
await tester.pumpUntilFound(find.byType(DashApp));
await Future.delayed(const Duration(seconds: 1));
/// Create New Request
await helper.reqHelper.addRequest(
"https://api.apidash.dev/humanize/social",
name: "test-his-name",
params: [("num", "870000")],
isMobile: true,
);
await Future.delayed(const Duration(milliseconds: 200));
await helper.reqHelper.sendRequest();
await helper.reqHelper.sendRequest();
/// Navigate to History
await helper.navigateToHistory(scaffoldKey: kHomeScaffoldKey);
kHisScaffoldKey.currentState!.openDrawer();
var sidebarCards = spot<HistoryPane>().spot<SidebarHistoryCard>().finder;
final initSidebarCardCount =
tester.widgetList<SidebarHistoryCard>(sidebarCards).length;
kHisScaffoldKey.currentState!.closeDrawer();
await act.tap(
spot<HistorySheetButton>().spotIcon(Icons.keyboard_arrow_up_rounded));
await tester.pumpAndSettle();
var historyCards = find.byType(HistoryRequestCard, skipOffstage: false);
final initHistoryCardCount =
tester.widgetList<HistoryRequestCard>(historyCards).length;
await tester.tapAt(const Offset(100, 100));
await tester.pumpAndSettle();
/// Send another request with same name
await helper.navigateToRequestEditor(scaffoldKey: kHisScaffoldKey);
await Future.delayed(const Duration(milliseconds: 200));
await helper.reqHelper.addRequest(
"https://api.apidash.dev/convert/leet",
name: "test-his-name",
params: [("text", "apidash")],
isMobile: true,
);
await Future.delayed(const Duration(milliseconds: 200));
await helper.reqHelper.sendRequest();
/// Check history Card counts
await helper.navigateToHistory(scaffoldKey: kHomeScaffoldKey);
sidebarCards = spot<HistoryPane>().spot<SidebarHistoryCard>().finder;
final newSidebarCardCount =
tester.widgetList<SidebarHistoryCard>(sidebarCards).length;
kHisScaffoldKey.currentState!.closeDrawer();
await act.tap(
spot<HistorySheetButton>().spotIcon(Icons.keyboard_arrow_up_rounded));
await tester.pumpAndSettle();
historyCards = find.byType(HistoryRequestCard, skipOffstage: false);
final newHistoryCardCount =
tester.widgetList<HistoryRequestCard>(historyCards).length;
await tester.tapAt(const Offset(100, 100));
await tester.pumpAndSettle();
expect(newSidebarCardCount, initSidebarCardCount);
expect(newHistoryCardCount, initHistoryCardCount + 1);
});
}