43 lines
1.5 KiB
Dart
43 lines
1.5 KiB
Dart
import 'package:flutter/material.dart';
|
|
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
|
import 'package:flutter_test/flutter_test.dart';
|
|
import 'package:provider/provider.dart';
|
|
import 'package:yumi/modules/room/seat/sc_seat_item.dart';
|
|
import 'package:yumi/services/audio/rtc_manager.dart';
|
|
import 'package:yumi/shared/business_logic/models/res/join_room_res.dart';
|
|
import 'package:yumi/shared/business_logic/models/res/room_res.dart';
|
|
import 'package:yumi/ui_kit/widgets/room/seat/room_seat_widget.dart';
|
|
|
|
void main() {
|
|
testWidgets(
|
|
'RoomSeatWidget falls back to configured mikeSize when mic list is empty',
|
|
(tester) async {
|
|
await tester.binding.setSurfaceSize(const Size(1600, 1200));
|
|
addTearDown(() async {
|
|
await tester.binding.setSurfaceSize(null);
|
|
});
|
|
|
|
final rtcProvider =
|
|
RealTimeCommunicationManager()
|
|
..currenRoom = JoinRoomRes(
|
|
roomProfile: RoomProfile(roomSetting: RoomSetting(mikeSize: 10)),
|
|
);
|
|
|
|
await tester.pumpWidget(
|
|
ScreenUtilInit(
|
|
designSize: const Size(375, 812),
|
|
builder:
|
|
(_, __) =>
|
|
ChangeNotifierProvider<RealTimeCommunicationManager>.value(
|
|
value: rtcProvider,
|
|
child: MaterialApp(home: Scaffold(body: RoomSeatWidget())),
|
|
),
|
|
),
|
|
);
|
|
|
|
expect(find.byType(RoomSeatWidget), findsOneWidget);
|
|
expect(find.byType(SCSeatItem), findsNWidgets(10));
|
|
},
|
|
);
|
|
}
|