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

[Rust]簡単なテストコードとtestingライブラリの導入 #134

Merged

Conversation

qwerty2501
Copy link
Contributor

内容

参考になりそうな簡単なテストコードと独断ですがtestingライブラリを導入しました

関連 Issue

refs #128, #133

その他

#133 がmergeされないとレビューできないので #133 からレビューする必要がある

@Hiroshiba
Copy link
Member

pull requestのときに毎回テストを走らせるには、test.ymlにこのあたりのコードが必要かもです

push:
branches:
# - main
pull_request:

@@ -13,5 +13,9 @@ derive-new = "0.5.9"
once_cell = "1.10.0"
thiserror = "1.0.31"

[dev-dependencies]
rstest = "0.12.0"
pretty_assertions = "1.2.1"
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

rstest は parameterized testや fixtureを提供できるらしいtesting libraryで今回は parameterized testを行うために導入
pretty_assertions は標準ライブラリにある assert_eq!, assert_ne! をリッチにしたもので、差分の表示が色付きでわかりやすく表示される rustのバージョンがあたらしくなってからは各test moduleごとにuse する必要が出たが、他に有力そうなものがなさそうだったので採用

手探りなのでこっちのがいいよ!ってあったら教えてください

@qwerty2501 qwerty2501 changed the title 簡単なテストコードとtestingライブラリの導入 [Rust}簡単なテストコードとtestingライブラリの導入 May 15, 2022
@qwerty2501 qwerty2501 changed the title [Rust}簡単なテストコードとtestingライブラリの導入 [Rust]簡単なテストコードとtestingライブラリの導入 May 15, 2022
参考になりそうな簡単なテストコードと独断ですがtestingライブラリを導入しました
@qwerty2501 qwerty2501 force-pushed the feature/added_unit_test_and_testing_libs branch from 538fa2f to 427d340 Compare May 15, 2022 04:14
#[cfg(test)]
mod tests {
use super::*;
use pretty_assertions::assert_eq;
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

pretty_assertionsを使う場合はこんな感じで各test module内で useする必要があるらしい

@qwerty2501 qwerty2501 marked this pull request as ready for review May 15, 2022 04:15
@qwerty2501
Copy link
Contributor Author

qwerty2501 commented May 15, 2022

@Hiroshiba 提示された書き方だとなんかエディタ上でエラーが出るので若干違いますが pull_requestも含めるようにしました
test実行についてとりあえず全部のOS入れてるんですが、多そうなら絞ったほうが良いかもです

Copy link
Member

@Hiroshiba Hiroshiba left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!!

@Hiroshiba Hiroshiba merged commit 57e4c27 into VOICEVOX:rust May 15, 2022
qwerty2501 added a commit to qwerty2501/voicevox_core that referenced this pull request Jul 23, 2022
* 簡単なテストコードとtestingライブラリの導入

参考になりそうな簡単なテストコードと独断ですがtestingライブラリを導入しました

* pull_request時にtestが実行されるようにした
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

Successfully merging this pull request may close these issues.

2 participants