-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
- Loading branch information
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
name: PR review/test | ||
|
||
on: | ||
pull_request: | ||
|
||
jobs: | ||
analyze: | ||
runs-on: ubuntu-latest | ||
timeout-minutes: 10 | ||
|
||
steps: | ||
- uses: actions/checkout@v3 | ||
- name: Setup Flutter | ||
uses: subosito/flutter-action@v2 | ||
- name: Install dependencies | ||
run: | | ||
flutter pub get | ||
- uses: invertase/github-action-dart-analyzer@v1 | ||
- name: Run tests | ||
run: | | ||
flutter test |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,139 @@ | ||
import 'package:flutter_riverpod/flutter_riverpod.dart'; | ||
import 'package:flutter_test/flutter_test.dart'; | ||
|
||
import 'package:tic_tac_toe_handson/provider/tic_tac_toe_provider.dart'; | ||
Check failure on line 4 in test/place_mark_test.dart
|
||
|
||
void main() { | ||
late TicTacToeProvider target; | ||
Check failure on line 7 in test/place_mark_test.dart
|
||
|
||
setUp(() { | ||
final container = ProviderContainer(); | ||
target = container.read(ticTacToeProvider.notifier); | ||
Check failure on line 11 in test/place_mark_test.dart
|
||
}); | ||
|
||
test("placeMark test - row: 0, col: 0", () { | ||
expect(target.state.board, [ | ||
['', '', ''], | ||
['', '', ''], | ||
['', '', ''], | ||
]); | ||
target.placeMark(0, 0); | ||
expect(target.state.board, [ | ||
['X', '', ''], | ||
['', '', ''], | ||
['', '', ''], | ||
]); | ||
}); | ||
|
||
test("placeMark test - row: 0, col: 1", () { | ||
expect(target.state.board, [ | ||
['', '', ''], | ||
['', '', ''], | ||
['', '', ''], | ||
]); | ||
target.placeMark(0, 1); | ||
expect(target.state.board, [ | ||
['', 'X', ''], | ||
['', '', ''], | ||
['', '', ''], | ||
]); | ||
}); | ||
|
||
test("placeMark test - row: 0, col: 2", () { | ||
expect(target.state.board, [ | ||
['', '', ''], | ||
['', '', ''], | ||
['', '', ''], | ||
]); | ||
target.placeMark(0, 2); | ||
expect(target.state.board, [ | ||
['', '', 'X'], | ||
['', '', ''], | ||
['', '', ''], | ||
]); | ||
}); | ||
|
||
test("placeMark test - row: 1, col: 0", () { | ||
expect(target.state.board, [ | ||
['', '', ''], | ||
['', '', ''], | ||
['', '', ''], | ||
]); | ||
target.placeMark(1, 0); | ||
expect(target.state.board, [ | ||
['', '', ''], | ||
['X', '', ''], | ||
['', '', ''], | ||
]); | ||
}); | ||
|
||
test("placeMark test - row: 1, col: 1", () { | ||
expect(target.state.board, [ | ||
['', '', ''], | ||
['', '', ''], | ||
['', '', ''], | ||
]); | ||
target.placeMark(1, 1); | ||
expect(target.state.board, [ | ||
['', '', ''], | ||
['', 'X', ''], | ||
['', '', ''], | ||
]); | ||
}); | ||
|
||
test("placeMark test - row: 1, col: 2", () { | ||
expect(target.state.board, [ | ||
['', '', ''], | ||
['', '', ''], | ||
['', '', ''], | ||
]); | ||
target.placeMark(1, 2); | ||
expect(target.state.board, [ | ||
['', '', ''], | ||
['', '', 'X'], | ||
['', '', ''], | ||
]); | ||
}); | ||
|
||
test("placeMark test - row: 2, col: 0", () { | ||
expect(target.state.board, [ | ||
['', '', ''], | ||
['', '', ''], | ||
['', '', ''], | ||
]); | ||
target.placeMark(2, 0); | ||
expect(target.state.board, [ | ||
['', '', ''], | ||
['', '', ''], | ||
['X', '', ''], | ||
]); | ||
}); | ||
|
||
test("placeMark test - row: 2, col: 1", () { | ||
expect(target.state.board, [ | ||
['', '', ''], | ||
['', '', ''], | ||
['', '', ''], | ||
]); | ||
target.placeMark(2, 1); | ||
expect(target.state.board, [ | ||
['', '', ''], | ||
['', '', ''], | ||
['', 'X', ''], | ||
]); | ||
}); | ||
|
||
test("placeMark test - row: 2, col: 2", () { | ||
expect(target.state.board, [ | ||
['', '', ''], | ||
['', '', ''], | ||
['', '', ''], | ||
]); | ||
target.placeMark(2, 2); | ||
expect(target.state.board, [ | ||
['', '', ''], | ||
['', '', ''], | ||
['', '', 'X'], | ||
]); | ||
}); | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,148 @@ | ||
import 'package:flutter_riverpod/flutter_riverpod.dart'; | ||
import 'package:flutter_test/flutter_test.dart'; | ||
|
||
import 'package:tic_tac_toe_handson/provider/tic_tac_toe_provider.dart'; | ||
Check failure on line 4 in test/reset_board_test.dart
|
||
|
||
void main() { | ||
late TicTacToeProvider target; | ||
Check failure on line 7 in test/reset_board_test.dart
|
||
|
||
setUp(() { | ||
final container = ProviderContainer(); | ||
target = container.read(ticTacToeProvider.notifier); | ||
Check failure on line 11 in test/reset_board_test.dart
|
||
}); | ||
|
||
test("resetBoard test - row: 0, col: 0", () { | ||
target.placeMark(0, 0); | ||
expect(target.state.board, [ | ||
['X', '', ''], | ||
['', '', ''], | ||
['', '', ''], | ||
]); | ||
target.resetBoard(); | ||
expect(target.state.board, [ | ||
['', '', ''], | ||
['', '', ''], | ||
['', '', ''], | ||
]); | ||
}); | ||
|
||
test("resetBoard test - row: 0, col: 1", () { | ||
target.placeMark(0, 1); | ||
expect(target.state.board, [ | ||
['', 'X', ''], | ||
['', '', ''], | ||
['', '', ''], | ||
]); | ||
target.resetBoard(); | ||
expect(target.state.board, [ | ||
['', '', ''], | ||
['', '', ''], | ||
['', '', ''], | ||
]); | ||
}); | ||
|
||
test("resetBoard test - row: 0, col: 2", () { | ||
target.placeMark(0, 2); | ||
expect(target.state.board, [ | ||
['', '', 'X'], | ||
['', '', ''], | ||
['', '', ''], | ||
]); | ||
target.resetBoard(); | ||
expect(target.state.board, [ | ||
['', '', ''], | ||
['', '', ''], | ||
['', '', ''], | ||
]); | ||
}); | ||
|
||
test("resetBoard test - row: 1, col: 0", () { | ||
target.placeMark(1, 0); | ||
expect(target.state.board, [ | ||
['', '', ''], | ||
['X', '', ''], | ||
['', '', ''], | ||
]); | ||
target.resetBoard(); | ||
expect(target.state.board, [ | ||
['', '', ''], | ||
['', '', ''], | ||
['', '', ''], | ||
]); | ||
}); | ||
|
||
test("resetBoard test - row: 1, col: 1", () { | ||
target.placeMark(1, 1); | ||
expect(target.state.board, [ | ||
['', '', ''], | ||
['', 'X', ''], | ||
['', '', ''], | ||
]); | ||
target.resetBoard(); | ||
expect(target.state.board, [ | ||
['', '', ''], | ||
['', '', ''], | ||
['', '', ''], | ||
]); | ||
}); | ||
|
||
test("resetBoard test - row: 1, col: 2", () { | ||
target.placeMark(1, 2); | ||
expect(target.state.board, [ | ||
['', '', ''], | ||
['', '', 'X'], | ||
['', '', ''], | ||
]); | ||
target.resetBoard(); | ||
expect(target.state.board, [ | ||
['', '', ''], | ||
['', '', ''], | ||
['', '', ''], | ||
]); | ||
}); | ||
|
||
test("resetBoard test - row: 2, col: 0", () { | ||
target.placeMark(2, 0); | ||
expect(target.state.board, [ | ||
['', '', ''], | ||
['', '', ''], | ||
['X', '', ''], | ||
]); | ||
target.resetBoard(); | ||
expect(target.state.board, [ | ||
['', '', ''], | ||
['', '', ''], | ||
['', '', ''], | ||
]); | ||
}); | ||
|
||
test("resetBoard test - row: 2, col: 1", () { | ||
target.placeMark(2, 1); | ||
expect(target.state.board, [ | ||
['', '', ''], | ||
['', '', ''], | ||
['', 'X', ''], | ||
]); | ||
target.resetBoard(); | ||
expect(target.state.board, [ | ||
['', '', ''], | ||
['', '', ''], | ||
['', '', ''], | ||
]); | ||
}); | ||
|
||
test("resetBoard test - row: 2, col: 2", () { | ||
target.placeMark(2, 2); | ||
expect(target.state.board, [ | ||
['', '', ''], | ||
['', '', ''], | ||
['', '', 'X'], | ||
]); | ||
target.resetBoard(); | ||
expect(target.state.board, [ | ||
['', '', ''], | ||
['', '', ''], | ||
['', '', ''], | ||
]); | ||
}); | ||
} |