tora-muscle / 1weekPDCA

このアプリは一週間をより有意義なものにするために一週間単位で生活を振り返ることができるアプリです
MIT License
0 stars 0 forks source link

💚 ユニットテストを導入する #13

Closed tora-muscle closed 1 year ago

tora-muscle commented 1 year ago

🎫 関連課題

親課題

✨ 実現したいこと

▼ what?・why?

🚩 やらないこと

🔀 達成条件

👀 備考

▼ 参考文献

▼ メモ

tora-muscle commented 1 year ago

🗒 macOSアップデート ▶︎ Ruby の編集権限剥奪でpod updateできなかった

▼ エラー詳細

/Library/Ruby/Site/2.6.0/rubygems.rb:265:in `find_spec_for_exe': can't find gem cocoapods (>= 0.a) with executable pod (Gem::GemNotFoundException)
    from /Library/Ruby/Site/2.6.0/rubygems.rb:284:in `activate_bin_path'
    from /usr/local/bin/pod:23:in `<main>'

▼ 原因

▼ 対処法

▼ 参考文献

死のうかと思うくらい焦ったし、修正に時間かかった。。。

tora-muscle commented 1 year ago

🗒 ViewInspector で書いたテストが BuildFailed していた件

スクリーンショット 2023-02-23 12 32 24

▼ 原因

▼ 対処法

▼ 参考文献

パッケージ管理は全部愚直に CocoaPods で行えばいいわけじゃないのね。。。

tora-muscle commented 1 year ago

🗒 ViewInspector が優秀すぎた件

▼ What?

▼ Why?

▼ When?

他にも優秀そうなライブラリはあるが、シンプルに書ける ViewInspector は初学者にはわかりやすかった🙌

▼ 他のライブラリ抜粋

tora-muscle commented 1 year ago

🗒 実装、調べていて感じたテストコードの意義

▼ Why?

func testDeleteTask() throws {

        // task を 3 回追加
        for _ in 0 ... 3 {
            taskCardManager.appendTask()
        }

        // task カードを右にドラッグした際のジェスチャー情報をスタブ化
        let dummyValue = DragGesture.Value(
            time: Date().addingTimeInterval(-0.5),
            location: .init(x: 20.0, y: 0),
            startLocation: .zero,
            velocity: .zero
        )

        taskCardManager.deleteTask(index: 0, value: dummyValue)

        let taskCardView = TaskCardListView().environmentObject(taskCardManager)
        let taskCards = try taskCardView.inspect().forEach(0)

        XCTAssertEqual(taskCards.count, taskCardManager.taskCardData.count)
    }

▼ 参考文献

tora-muscle commented 1 year ago

💢 またまた ruby の実行ファイルが見つからないよエラー発生

▼ エラー詳細

/Library/Ruby/Site/2.6.0/rubygems.rb:265:in `find_spec_for_exe': can't find gem cocoapods (>= 0.a) with executable pod (Gem::GemNotFoundException)
    from /Library/Ruby/Site/2.6.0/rubygems.rb:284:in `activate_bin_path'
    from /usr/local/bin/pod:23:in `<main>'

▼ 原因

▼ 対処法

▼ 参考文献

なんかまた同じエラーが発生しそう。。。🥶