0

MediaItemのリストをに解析/変換しようとしてConcatenatingAudioSourceいますが、単体テストで、変換されConcatenatingAudioSourceたものがターゲット ソースと一致しないというエラーが表示され続けます。私のテストは

List<MediaItem> audioSource = <MediaItem>[
      MediaItem(
        // This can be any unique id, but we use the audio URL for convenience.
        id: "https://s3.amazonaws.com/scifri-episodes/scifri20181123-episode.mp3",
        album: "Science Friday",
        title: "A Salute To Head-Scratching Science",
        artist: "Science Friday and WNYC Studios",
        duration: Duration(milliseconds: 5739820),
        artUri: Uri.parse(
            "https://media.wnyc.org/i/1400/1400/l/80/1/ScienceFriday_WNYCStudios_1400.jpg"),
      ),
      MediaItem(
        id: "https://s3.amazonaws.com/scifri-segments/scifri201711241.mp3",
        album: "Science Friday",
        title: "From Cat Rheology To Operatic Incompetence",
        artist: "Science Friday and WNYC Studios",
        duration: Duration(milliseconds: 2856950),
        artUri: Uri.parse(
            "https://media.wnyc.org/i/1400/1400/l/80/1/ScienceFriday_WNYCStudios_1400.jpg"),
      ),
];

test('mediaItem2ConcatenatingAudioSource test', () {
      expect(
        // Here's where the conversion happens
        ConcatenatingAudioSource(
          children: audioSource
              .map((item) => AudioSource.uri(Uri.parse(item.id)))
              .toList(),
        ),
        ConcatenatingAudioSource(children: [
          AudioSource.uri(Uri.parse(
              'https://s3.amazonaws.com/scifri-episodes/scifri20181123-episode.mp3')),
          AudioSource.uri(Uri.parse(
              "https://s3.amazonaws.com/scifri-segments/scifri201711241.mp3")),
        ]),
      );
});

私が得るエラーは以下の通りです。ConcatenatingAudioSource2つは同じではない、あるべき場所にあると言っていると思います。

Expected: <Instance of 'ConcatenatingAudioSource'>
  Actual: <Instance of 'ConcatenatingAudioSource'>

変換部分をaudio_service例 (362 行目) から文字通りコピーしたので、ここで何が間違っているのか本当に混乱しています。(この変換コードも、実際のアプリが実行されているときには機能しません。actualテストの一部をsetSource()メソッドに入れましたplay()が、何も起こりません。)

どんな助けでも大歓迎です!ありがとうございました!

4

1 に答える 1