BETA

flutter_linkify の Linkify ウィジェットは find.text() じゃ取れない

投稿日:2020-04-24
最終更新:2020-04-24

※この内容は Flutter SDK v1.12.13+hotfix.5, flutter_linkify 3.1.0で確認しました。

本文中にURLやメールアドレスなどがあると自動でハイパーリンクにしてくれる flutter_linkify という素晴らしいパッケージがあるのですが、今まで標準の Text ウィジェットを使っていたところをこのパッケージの Linkify ウィジェットに差し替えたらテストがこけました。

今までは "test" という文字列を Text ウィジェットに表示していた場合

final finder = find.text("test");  

で取れていたのですが、どうやら Linkify ウィジェットがテキストを表示している部分は find.text() では取れないらしいのです。

もっとも手っ取り早い解決策は Linkify ウィジェットに Key をつけて

final finder = find.byKey(Key("Linkify1"));  

みたいにすることだと思います。

これで取得すれば、

final w = textFinder1.evaluate().single.widget as Linkify;  
expect(w.text, "test");  

として表示されているテキストをテストできます。

技術ブログをはじめよう Qrunch(クランチ)は、プログラマの技術アプトプットに特化したブログサービスです
駆け出しエンジニアからエキスパートまで全ての方々のアウトプットを歓迎しております!
or 外部アカウントで 登録 / ログイン する
クランチについてもっと詳しく

この記事が掲載されているブログ

技術系記事を書きます。

よく一緒に読まれる記事

0件のコメント

ブログ開設 or ログイン してコメントを送ってみよう