Malarg commented on code in PR #26978:
URL: https://github.com/apache/beam/pull/26978#discussion_r1221294221
##########
learning/tour-of-beam/frontend/integration_test/tour_page_test.dart:
##########
@@ -259,3 +262,104 @@ Set<String> _getExpandedIds(WidgetTester wt) {
final controller = getContentTreeController(wt);
return controller.expandedIds;
}
+
+Future<void> _checkSdkChanges(WidgetTester wt) async {
+ await _selectUnitWithSnippetsInAllSdks(wt);
+ await _checkSnippetChangesOnSdkChanging(wt);
+}
+
+Future<void> _selectUnitWithSnippetsInAllSdks(WidgetTester wt) async {
+ final unitWithSnippets = await _findUnitWithSnippetsInAllSdks(wt);
+
+ if (unitWithSnippets == null) {
+ fail('No unit with snippets in all sdks');
+ }
+
+ final controller = getContentTreeController(wt);
+ controller.onNodePressed(unitWithSnippets);
+ await wt.pumpAndSettle();
+}
+
+Future<UnitModel?> _findUnitWithSnippetsInAllSdks(WidgetTester wt) async {
+ final unitContentCache = GetIt.instance.get<UnitContentCache>();
+ final commonUnits = await _getCommonUnitsInAllSdks(wt);
+ final sdks = GetIt.instance.get<SdkCache>().getSdks();
+
+ UnitModel? unitWithSnippets;
+ for (final unit in commonUnits) {
+ var areAllSdksContainsSnippet = true;
+ for (final sdk in sdks) {
+ final unitContent =
+ await unitContentCache.getUnitContent(sdk.id, unit.id);
+ if (unitContent.taskSnippetId == null) {
+ areAllSdksContainsSnippet = false;
+ break;
+ }
+ }
+ if (areAllSdksContainsSnippet) {
+ unitWithSnippets = unit;
+ break;
+ }
+ }
+ return unitWithSnippets;
+}
+
+Future<List<UnitModel>> _getCommonUnitsInAllSdks(WidgetTester wt) async {
+ final contentTrees = await _loadAllContentTrees(wt);
+ final sdkUnits = List<List<UnitModel>>.empty(growable: true);
+ for (final tree in contentTrees) {
+ sdkUnits.add(tree.getUnits().toList());
+ }
+
+ final commonUnitTitles = sdkUnits.first;
+ for (final units in sdkUnits.skip(1)) {
+ commonUnitTitles.removeWhere((u) => !units.contains(u));
+ }
Review Comment:
done
##########
learning/tour-of-beam/frontend/integration_test/tour_page_test.dart:
##########
@@ -259,3 +262,99 @@ Set<String> _getExpandedIds(WidgetTester wt) {
final controller = getContentTreeController(wt);
return controller.expandedIds;
}
+
+Future<void> _checkSdkChanges(WidgetTester wt) async {
+ await _selectUnitWithSnippetsInAllSdks(wt);
+ await _checkSnippetChangesOnSdkChanging(wt);
+}
+
+Future<void> _selectUnitWithSnippetsInAllSdks(WidgetTester wt) async {
+ final unitContentCache = GetIt.instance.get<UnitContentCache>();
+ final commonUnits = await _getCommonUnitsInAllSdks(wt);
+ final sdks = GetIt.instance.get<SdkCache>().getSdks();
+
+ UnitModel? unitWithSnippets;
+ for (final unit in commonUnits) {
+ var areAllSdksContainsSnippet = true;
+ for (final sdk in sdks) {
+ final unitContent =
+ await unitContentCache.getUnitContent(sdk.id, unit.id);
+ if (unitContent.taskSnippetId == null) {
+ areAllSdksContainsSnippet = false;
+ break;
+ }
+ }
+ if (areAllSdksContainsSnippet) {
+ unitWithSnippets = unit;
+ break;
+ }
+ }
+
+ if (unitWithSnippets == null) {
+ fail('No unit with snippets in all sdks');
+ }
+
+ final controller = getContentTreeController(wt);
+ controller.onNodePressed(unitWithSnippets);
+ await wt.pumpAndSettle();
+}
+
+Future<List<UnitModel>> _getCommonUnitsInAllSdks(WidgetTester wt) async {
+ final contentTrees = await _loadAllContentTrees(wt);
+ final sdkUnits = List<List<UnitModel>>.empty(growable: true);
+ for (final tree in contentTrees) {
+ sdkUnits.add(tree.getUnits().toList());
+ }
+
+ final commonUnitTitles = sdkUnits.first;
+ for (final units in sdkUnits.skip(1)) {
+ commonUnitTitles.removeWhere((u) => !units.contains(u));
+ }
+
+ return commonUnitTitles;
+}
+
+Future<List<ContentTreeModel>> _loadAllContentTrees(WidgetTester wt) async {
+ final sdkCache = GetIt.instance.get<SdkCache>();
+ final contentTreeCache = GetIt.instance.get<ContentTreeCache>();
+ final sdks = sdkCache.getSdks();
+ final nullableTrees = await Future.wait(
+ sdks.map((sdk) async => contentTreeCache.getContentTree(sdk)),
+ );
+
+ return nullableTrees.where((t) => t != null).map((t) => t!).toList();
Review Comment:
done
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]