1
0
mirror of https://github.com/danbee/chess synced 2025-03-04 08:39:06 +00:00
Commit Graph

113 Commits

Author SHA1 Message Date
2c8f2c7bcd
Pawn can be blocked 2018-03-13 22:20:48 -04:00
4513bf324c
Re-order diagonal moves 2018-03-12 15:53:33 -04:00
8c9d52a0a4
King moves 2018-03-12 15:53:33 -04:00
3a421ca213
Knight moves 2018-03-12 15:53:33 -04:00
961920740e
Use Moves.available instead of calling the module directly 2018-03-12 15:53:33 -04:00
a7fbffcb5d
Queen moves 2018-03-12 15:53:33 -04:00
af8027e6d8
💄 2018-03-12 15:53:33 -04:00
47bba0555c
Bishop moves 2018-03-12 15:53:32 -04:00
568c2cf7ff
Add Rook moves 2018-03-12 15:53:32 -04:00
375be4711c
Show available moves for pawn 2018-03-12 11:29:22 -04:00
c64d40f99a
Add basic pawn move generation 2018-03-12 11:29:21 -04:00
fe0c58917f
Remove unnecessary API controller 2018-03-12 11:17:26 -04:00
5cd3c74021
Add moduledocs 2018-03-09 15:29:34 -05:00
67f0d8f45e
Split out move feature tests and add opponent test 2018-03-09 15:29:33 -05:00
a05d4ad2e3
Update layout and CSS 2018-03-05 10:19:47 -05:00
b09cb26b85
Move user into the store module 2018-03-04 11:15:33 -05:00
7529aa9d24
Simplify user factory 2018-03-03 20:43:58 -05:00
e9cf51e57f
Add some tests for unsuccessful registration 2018-03-03 20:24:33 -05:00
155284139e
Change username to email 2018-03-03 20:24:33 -05:00
4bf4c4cb45
Fix registration test 2018-03-03 20:24:32 -05:00
7cec3fb1a9
Big test/factory refactor 2018-03-03 20:24:32 -05:00
36670245d7
More move tests
Specifically:

* Test that a user cannot move an opponents pieces
* Test that a user cannot move if it's not their turn
* Test that a move is reflected on the opponents view
2018-03-01 20:16:21 -05:00
a8bb242385
Better way of setting defaults 2018-03-01 08:46:53 -05:00
3b3f3e687a
Create a channel and connect the socket 2018-02-25 15:07:45 -05:00
c0facfa4d5
Players take turns
Restricts players to only be able to move their own pieces and only when
it's their turn.
2018-02-24 15:52:22 -05:00
7b2fa5cc8e
Update game data test to account for foreign key constraint 2018-02-23 13:51:25 -05:00
7d31ebdc98
Restrict access to API update endpoint 2018-02-23 13:51:23 -05:00
c2bb7f3052
Add API controller test 2018-02-23 13:51:22 -05:00
5511ef0a06
Restrict game viewing to players 2018-02-23 13:51:22 -05:00
070f9b1474
Fix and refactor game controller tests 2018-02-23 13:51:22 -05:00
8634d7aa9f
Show opponent on game screen 2018-02-23 13:51:22 -05:00
9b47a85d8f
Show correct opponent in the games list 2018-02-23 13:51:22 -05:00
b122c4d44f
Games list shows opponent 2018-02-23 13:51:21 -05:00
8f19a086df
Game controller accepts opponent id 2018-02-23 13:51:21 -05:00
fffff9624e
WIP: Opponent is now required
Only the tests fail with "can't be blank" for some reason...
2018-02-23 13:51:21 -05:00
46c3109b7c
Game now has an opponent 2018-02-23 13:51:21 -05:00
ea79ba962a
Games are now associated to a user 2018-02-18 11:51:36 -05:00
d5b8f7d7c2
Add uniqueness constraint 2018-02-02 15:42:07 -05:00
0568b69cbb
Move user creation in tests to a factory 2018-02-02 14:37:20 -05:00
2d816feadd
Trace will disable async tests 2018-02-02 10:59:10 -05:00
ddcb204758
Make session language consistent 2018-02-02 10:31:05 -05:00
1299d4f5e5
User can login and create games 2018-02-02 10:31:05 -05:00
dda4bf0c5a
Validate uniqueness of username 2018-02-02 10:31:05 -05:00
9fb960fa5e
Add log in link and fix game tests 2018-02-02 10:31:04 -05:00
558b4a5ff9
Registration works 2018-02-02 10:31:04 -05:00
c080985fc4
Add invalid username test 2018-02-02 10:31:04 -05:00
5b7c67481c
Default to verbose test output 2018-02-02 10:31:04 -05:00
374524bb1d
User can sign in 2018-02-02 10:31:04 -05:00
e1cdcbac0a
Better auth tests 2018-02-02 10:30:38 -05:00
aeba3083df
Add tests for authenticating user 2018-02-02 10:30:38 -05:00
80e58f765f
WIP: Authentication with Guardian/Comeonin 2018-02-02 10:30:38 -05:00
065e7e02c9
Fix JS and switch to Wallaby 2018-01-19 16:17:35 -05:00
c4755bdfb1
Move model tests to data tests 2018-01-15 21:27:09 -05:00
41a9faabc9
Fix up tests after 1.3 upgrade 2018-01-15 16:06:00 -05:00
43a4299478
Upgrade to Phoenix 1.3
I've also moved everything around to match the new Phoenix 1.3 directory
structure.
2018-01-12 16:47:26 -05:00
3397f2048a
Fix warnings 2017-01-19 12:23:10 +00:00
7ff1b03f89
Refactor the board data structure
Now we're only storing the pieces keyed by the piece position rather
than storing the entire board as a set of nested Maps. This makes moving
pieces much easier. We're also now storing the position as a pair of
array indices which should make calculating the possible moves easier.
2017-01-18 16:36:38 +00:00
549ba445bb
Test moving of a piece 2016-12-22 18:44:01 -05:00
d888ab8d83
Make sure the JS works in PhantomJS
PhantomJS does not implement `Object.assign` which is how we were
updating the state immutably. I've switched it over to use the
ImmutableJS library instead.
2016-12-22 10:28:33 +00:00
34a3d48260
Fix the fucking tests 2016-12-11 20:45:47 +00:00
b479f0eade Remove unnecessary test 2016-12-10 19:35:01 +01:00
f6c38661c7 Create new games and display them 2016-12-10 19:35:01 +01:00
418eaa6f47 Make it a Phoenix app 2016-12-10 19:35:01 +01:00