Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Retrofit2 + Moshi + RxJava(RxKotlin, RxAndroid)を利用したAPI通信処理 #8

Closed
16 tasks done
YusukeOba opened this issue Jul 17, 2021 · 2 comments
Closed
16 tasks done

Comments

@YusukeOba
Copy link
Owner

YusukeOba commented Jul 17, 2021

概要

タイトルどおり、「Retrofit2 + Moshi + RxJava(RxKotlin, RxAndroid)を利用したAPI通信処理」を導入する

設計アーキテクチャについては #3 を参照。

やること

  • APIClientの用意
  • RemoteDataSourceの用意
    • JUnitでテストが出来るようにインタフェースを用意すること
  • Repositoryの用意
    • JUnitでテストが出来るようにインタフェースを用意すること
  • ViewModelの用意
    • Espressoでテストが出来るようにコンストラクタでRepositoryのインタフェースが差し込めるようになっていること
  • オレオレDIの用意
    • 今回、規模感的にdaggerを使うようなものでもないので(多分、使ったらかえって複雑になる(´・ω・`))ので、
      オレオレDIを用意しておく
  • 通信結果を画面に表示する
    • 見た目は別のIssueで対応するので、このIssudeでは単にTextViewに表示するだけで良いものとする
  • JUnitでテストコードを書く
    • RemoteDataStoreのテスト
      • 空のレスポンスを差し込んで[]が返却されるか?
      • 通常レスポンスを差し込んでJSONデータをパース〜クラスで返却されるか
      • 異常データを差し込んでExceptionが返却されるか
    • Repositoryのテスト
      • 空のBooks Entityを差し込んで[]が返却されるか?
      • 通常Books Entityを差し込んでそのまま返却されるか
      • 例外がRemoteDataStoreで発生したとして、Repositoryで例外を依存元に返却できているか
    • ViewModelのテスト
      • 空のBooks Entityを差し込んで[]が返却されるか?
      • 通常Books Entityを差し込んでView表示用のレスポンスに加工して返却されるか
      • 例外がRepositoryで発生したとして、それをViewに伝搬させられているか
@YusukeOba
Copy link
Owner Author

ViewModelのテストコードはUI実装とともに行うので、後回しとする

YusukeOba added a commit that referenced this issue Jul 17, 2021
Retrofit2 + Moshi + RxJava(RxKotlin, RxAndroid)を利用したAPI通信処理 #8
@YusukeOba
Copy link
Owner Author

#9 でマージ済み。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant