insert players at end of list (preserve index numbers)
This commit is contained in:
parent
767c9b9221
commit
ac92182b20
|
@ -149,7 +149,7 @@ addPlayer s = fromMaybe s $ do
|
||||||
pos = cps^.cpsPosition
|
pos = cps^.cpsPosition
|
||||||
player = newPlayer num name pos
|
player = newPlayer num name pos
|
||||||
Just $ s & database.dbPlayers
|
Just $ s & database.dbPlayers
|
||||||
%~ (player:)
|
%~ (++[player])
|
||||||
|
|
||||||
-- | Awards the goal and assists to the players
|
-- | Awards the goal and assists to the players
|
||||||
recordGoalAssists :: ProgState -> ProgState
|
recordGoalAssists :: ProgState -> ProgState
|
||||||
|
|
|
@ -182,7 +182,8 @@ selectPlayerPrompt pStr callback = Prompt
|
||||||
& cpsName .~ sStr
|
& cpsName .~ sStr
|
||||||
& cpsSuccessCallback .~ do
|
& cpsSuccessCallback .~ do
|
||||||
modify $ progMode .~ mode
|
modify $ progMode .~ mode
|
||||||
callback (Just 0)
|
pIndex <- pred . length <$> gets (view $ database.dbPlayers)
|
||||||
|
callback $ Just pIndex
|
||||||
& cpsFailureCallback .~ do
|
& cpsFailureCallback .~ do
|
||||||
modify $ progMode .~ mode
|
modify $ progMode .~ mode
|
||||||
callback Nothing
|
callback Nothing
|
||||||
|
|
|
@ -342,7 +342,7 @@ addPlayerSpec = describe "addPlayer" $ do
|
||||||
p1 = newPlayer 1 "Joe" "centre"
|
p1 = newPlayer 1 "Joe" "centre"
|
||||||
p2 = newPlayer 2 "Bob" "defense"
|
p2 = newPlayer 2 "Bob" "defense"
|
||||||
db = newDatabase
|
db = newDatabase
|
||||||
& dbPlayers .~ [p2]
|
& dbPlayers .~ [p1]
|
||||||
s pm = newProgState
|
s pm = newProgState
|
||||||
& progMode .~ pm
|
& progMode .~ pm
|
||||||
& database .~ db
|
& database .~ db
|
||||||
|
@ -350,15 +350,15 @@ addPlayerSpec = describe "addPlayer" $ do
|
||||||
context "data available" $
|
context "data available" $
|
||||||
it "should create the player" $ let
|
it "should create the player" $ let
|
||||||
s' = addPlayer $ s $ CreatePlayer $ newCreatePlayerState
|
s' = addPlayer $ s $ CreatePlayer $ newCreatePlayerState
|
||||||
& cpsNumber ?~ 1
|
& cpsNumber ?~ 2
|
||||||
& cpsName .~ "Joe"
|
& cpsName .~ "Bob"
|
||||||
& cpsPosition .~ "centre"
|
& cpsPosition .~ "defense"
|
||||||
in s'^.database.dbPlayers `shouldBe` [p1, p2]
|
in s'^.database.dbPlayers `shouldBe` [p1, p2]
|
||||||
|
|
||||||
context "data unavailable" $
|
context "data unavailable" $
|
||||||
it "should not create the player" $ let
|
it "should not create the player" $ let
|
||||||
s' = addPlayer $ s MainMenu
|
s' = addPlayer $ s MainMenu
|
||||||
in s'^.database.dbPlayers `shouldBe` [p2]
|
in s'^.database.dbPlayers `shouldBe` [p1]
|
||||||
|
|
||||||
recordGoalAssistsSpec :: Spec
|
recordGoalAssistsSpec :: Spec
|
||||||
recordGoalAssistsSpec = describe "recordGoalAssists" $ do
|
recordGoalAssistsSpec = describe "recordGoalAssists" $ do
|
||||||
|
|
Loading…
Reference in New Issue
Block a user