Skip to content

Commit

Permalink
PLZ REVERT: Debug in CI
Browse files Browse the repository at this point in the history
  • Loading branch information
Gustl22 committed Dec 22, 2022
1 parent 7d432d4 commit d37a8c0
Showing 1 changed file with 110 additions and 55 deletions.
165 changes: 110 additions & 55 deletions packages/audioplayers/example/integration_test/lib_test.dart
Original file line number Diff line number Diff line change
Expand Up @@ -57,66 +57,121 @@ void main() {
),
];

testWidgets('test mp3 on Android', (WidgetTester tester) async {
// FIXME: Unexpected platform error: MediaPlayer error with what:MEDIA_ERROR_UNKNOWN {what:1} extra:MEDIA_ERROR_SYSTEM
// Source: UrlSource(url: http://10.0.2.2:8080/files/audio/ambient_c_motion.mp3)
// testWidgets('test mp3 on Android', (WidgetTester tester) async {
// // FIXME: Unexpected platform error: MediaPlayer error with what:MEDIA_ERROR_UNKNOWN {what:1} extra:MEDIA_ERROR_SYSTEM
// // Source: UrlSource(url: http://10.0.2.2:8080/files/audio/ambient_c_motion.mp3)
// final sourceA = LibSourceTestData(
// source: UrlSource(mp3Url1),
// duration: const Duration(minutes: 3, seconds: 30, milliseconds: 77),
// );
// final sourceB = LibSourceTestData(
// source: UrlSource(mp3Url2),
// duration: const Duration(minutes: 1, seconds: 34, milliseconds: 119),
// );
// final sourceC = LibSourceTestData(
// source: UrlSource(m3u8StreamUrl),
// duration: Duration.zero,
// isLiveStream: true,
// );
// final playerA = AudioPlayer();
// final playerB = AudioPlayer();
// final playerC = AudioPlayer();
// print('players initialized');
// await Future.wait<void>([
// playerA.play(sourceA.source),
// playerB.play(sourceB.source),
// playerC.play(sourceC.source),
// ]);
// print('all players started playing');
//
// await tester.pumpAndSettle();
// print('pump and settle');
// await tester.pump(const Duration(seconds: 8));
// print('pump 8s');
//
// await playerA.stop();
// await playerB.stop();
// await playerC.stop();
// print('test finished');
// });

final sourceA = LibSourceTestData(
source: UrlSource(mp3Url2),
duration: const Duration(minutes: 1, seconds: 34, milliseconds: 119),
);
final playerA = AudioPlayer();
final playerB = AudioPlayer();
final playerC = AudioPlayer();
print('players initialized');
await playerA.play(sourceA.source);
print('player A started playing');
await Future.wait<void>([
playerA.play(sourceA.source),
playerB.play(sourceA.source),
playerC.play(sourceA.source),
]);
print('all players started playing');

await tester.pumpAndSettle();
print('pump and settle');
await tester.pump(const Duration(seconds: 8));
print('pump 8s');

await playerA.stop();
await playerB.stop();
await playerC.stop();
});
// for (int k = 6; k < audioTestDataList.length; k++) {
// testWidgets(
// 'play multiple sources simultaneously $k',
// (WidgetTester tester) async {
// print('\n\n\n ######################## simultan $k\n');
// final players = List.generate(k, (_) => AudioPlayer());
//
// // Start all players simultaneously
// final iterator = List<int>.generate(k, (i) => i);
// await Future.wait<void>(
// iterator.map((i) async {
// print('initialize $i: ${audioTestDataList[i].source}');
// final a = await players[i].play(audioTestDataList[i].source);
// print('start playing $i: ${audioTestDataList[i].source}');
// return a;
// }),
// );
// await tester.pumpAndSettle();
// print('pump and settle');
// // Sources take some time to get initialized
// await tester.pump(const Duration(seconds: 8));
// print('pump 8s');
// for (var i = 0; i < k; i++) {
// final td = audioTestDataList[i];
// if (td.isLiveStream || td.duration > const Duration(seconds: 10)) {
// await tester.pump();
// final position = await players[i].getCurrentPosition();
// printOnFailure('Test position: $td');
// expect(position, greaterThan(Duration.zero));
// }
// print('stop player $i');
// await players[i].stop();
// }
// },
// timeout: const Timeout(Duration(minutes: 5)),
// );
// }

testWidgets('play multiple sources simultaneously',
final l = audioTestDataList.length;
for (int k = 2; k < l; k++) {
testWidgets(
'play multiple sources reverted $k',
(WidgetTester tester) async {
final players =
List.generate(audioTestDataList.length, (_) => AudioPlayer());
print('\n\n\n ######################## reverted $k\n');
final players = List.generate(k, (_) => AudioPlayer());

// Start all players simultaneously
final iterator = List<int>.generate(audioTestDataList.length, (i) => i);
await Future.wait<void>(
iterator.map((i) {
print('initialize $i: ${audioTestDataList[i].source}');
final a = players[i].play(audioTestDataList[i].source);
print('start playing $i: ${audioTestDataList[i].source}');
return a;
}),
// Start all players simultaneously
final iterator = List<int>.generate(k, (i) => i);
await Future.wait<void>(
iterator.map((i) async {
print('initialize $i: ${audioTestDataList[l - i - 1].source}');
final a =
await players[i].play(audioTestDataList[l - i - 1].source);
print('start playing $i: ${audioTestDataList[l - i - 1].source}');
return a;
}),
);
await tester.pumpAndSettle();
print('pump and settle');
// Sources take some time to get initialized
await tester.pump(const Duration(seconds: 8));
print('pump 8s');
for (var i = 0; i < k; i++) {
final td = audioTestDataList[l - i - 1];
if (td.isLiveStream || td.duration > const Duration(seconds: 10)) {
await tester.pump();
final position = await players[i].getCurrentPosition();
printOnFailure('Test position: $td');
expect(position, greaterThan(Duration.zero));
}
print('stop player $i');
await players[i].stop();
}
},
timeout: const Timeout(Duration(minutes: 5)),
);
await tester.pumpAndSettle();
// Sources take some time to get initialized
await tester.pump(const Duration(seconds: 8));
for (var i = 0; i < audioTestDataList.length; i++) {
final td = audioTestDataList[i];
if (td.isLiveStream || td.duration > const Duration(seconds: 10)) {
await tester.pump();
final position = await players[i].getCurrentPosition();
printOnFailure('Test position: $td');
expect(position, greaterThan(Duration.zero));
}
await players[i].stop();
}
});
}

testWidgets('play multiple sources consecutively',
(WidgetTester tester) async {
Expand Down

0 comments on commit d37a8c0

Please sign in to comment.