add replace players in a match test
This commit is contained in:
@@ -884,5 +884,36 @@ void main() {
|
|||||||
expect(playersInTeam.length, 1);
|
expect(playersInTeam.length, 1);
|
||||||
expect(playersInTeam[0].id, testPlayer2.id);
|
expect(playersInTeam[0].id, testPlayer2.id);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// Verifies that replaceMatchPlayers removes all existing players and replaces with new list.
|
||||||
|
test('replaceMatchPlayers replaces all match players correctly', () async {
|
||||||
|
// Create initial match with 3 players
|
||||||
|
await database.matchDao.addMatch(match: testMatchOnlyPlayers);
|
||||||
|
|
||||||
|
// Verify initial players
|
||||||
|
var matchPlayers = await database.matchDao.getMatchById(
|
||||||
|
matchId: testMatchOnlyPlayers.id,
|
||||||
|
);
|
||||||
|
expect(matchPlayers.players.length, 3);
|
||||||
|
|
||||||
|
// Replace with new list containing 2 different players
|
||||||
|
final newPlayersList = [testPlayer1, testPlayer2];
|
||||||
|
await database.matchDao.replaceMatchPlayers(
|
||||||
|
matchId: testMatchOnlyPlayers.id,
|
||||||
|
newPlayers: newPlayersList,
|
||||||
|
);
|
||||||
|
|
||||||
|
// Get updated match and verify players
|
||||||
|
matchPlayers = await database.matchDao.getMatchById(
|
||||||
|
matchId: testMatchOnlyPlayers.id,
|
||||||
|
);
|
||||||
|
|
||||||
|
expect(matchPlayers.players.length, 2);
|
||||||
|
expect(matchPlayers.players.any((p) => p.id == testPlayer1.id), true);
|
||||||
|
expect(matchPlayers.players.any((p) => p.id == testPlayer2.id), true);
|
||||||
|
expect(matchPlayers.players.any((p) => p.id == testPlayer4.id), false);
|
||||||
|
expect(matchPlayers.players.any((p) => p.id == testPlayer5.id), false);
|
||||||
|
expect(matchPlayers.players.any((p) => p.id == testPlayer6.id), false);
|
||||||
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user