to do: updateResources action, actions test suite
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
import { buyCard, getTotalBuyingPower, tooExpensive, updateResources } from './buyCardActions';
|
import { buyCard, getTotalBuyingPower, tooExpensive, updateResources } from './buyCardActions';
|
||||||
import { test, expect, describe } from 'vitest';
|
import { test, expect, describe } from 'vitest';
|
||||||
import { expensiveCard, mockPlayerOne, mockPlayerTwo, mockState } from '../../../util/testUtils';
|
import { expensiveCard, midGameCardOne, midGameState, mockPlayerOne, mockPlayerTwo, mockState } from '../../../util/testUtils';
|
||||||
import { useCurrentPlayer } from '../../../util/useCurrentPlayer';
|
import { useCurrentPlayer } from '../../../util/useCurrentPlayer';
|
||||||
|
|
||||||
describe('buy cards', () => {
|
describe('buy cards', () => {
|
||||||
@@ -44,10 +44,10 @@ describe('buy cards', () => {
|
|||||||
})
|
})
|
||||||
|
|
||||||
test('updateResources', () => {
|
test('updateResources', () => {
|
||||||
const currentPlayer = useCurrentPlayer(mockState);
|
const currentPlayer = useCurrentPlayer(midGameState);
|
||||||
if (!currentPlayer) return;
|
if (!currentPlayer) return;
|
||||||
|
|
||||||
const { newTradingResources, updatedPlayer } = updateResources(mockState, expensiveCard);
|
const { newTradingResources, updatedPlayer } = updateResources(midGameState, midGameCardOne);
|
||||||
expect(newTradingResources).toBeDefined();
|
expect(newTradingResources).toBeDefined();
|
||||||
expect(updatedPlayer).toBeDefined();
|
expect(updatedPlayer).toBeDefined();
|
||||||
})
|
})
|
||||||
@@ -57,3 +57,6 @@ describe('buy cards', () => {
|
|||||||
expect(output).toBe(1);
|
expect(output).toBe(1);
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
|
describe('get chips', () => {})
|
||||||
|
describe('reserve card', () => {})
|
||||||
@@ -44,22 +44,7 @@ export const mockState: AppState = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// mock data for midgame
|
// mock data for midgame
|
||||||
export const midGameState: AppState = {
|
export const playerOneMidGame = {
|
||||||
...initialState,
|
|
||||||
gameboard: {
|
|
||||||
...initialState.gameboard,
|
|
||||||
tradingResources: {
|
|
||||||
ruby: 1,
|
|
||||||
sapphire: 1,
|
|
||||||
emerald: 1,
|
|
||||||
onyx: 1,
|
|
||||||
diamond: 1,
|
|
||||||
gold: 3
|
|
||||||
}
|
|
||||||
},
|
|
||||||
round: 4,
|
|
||||||
players: [
|
|
||||||
{
|
|
||||||
...mockPlayerOne,
|
...mockPlayerOne,
|
||||||
cards: [
|
cards: [
|
||||||
...mockPlayerOne.cards,
|
...mockPlayerOne.cards,
|
||||||
@@ -96,11 +81,87 @@ export const midGameState: AppState = {
|
|||||||
onyx: 1,
|
onyx: 1,
|
||||||
gold: 1
|
gold: 1
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export const playerTwoMidGame = {
|
||||||
|
...mockPlayerTwo,
|
||||||
|
cards: [
|
||||||
|
...mockPlayerTwo.cards,
|
||||||
|
{
|
||||||
|
gemValue: "ruby",
|
||||||
|
tier: 1,
|
||||||
|
points: 0,
|
||||||
|
resourceCost: {
|
||||||
|
ruby: 3,
|
||||||
|
sapphire: 0,
|
||||||
|
emerald: 0,
|
||||||
|
diamond: 0,
|
||||||
|
onyx: 0
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
...mockPlayerTwo
|
gemValue: "ruby",
|
||||||
|
tier: 1,
|
||||||
|
points: 0,
|
||||||
|
resourceCost: {
|
||||||
|
ruby: 0,
|
||||||
|
sapphire: 1,
|
||||||
|
emerald: 1,
|
||||||
|
diamond: 1,
|
||||||
|
onyx: 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
inventory: {
|
||||||
|
ruby: 4,
|
||||||
|
sapphire: 0,
|
||||||
|
emerald: 0,
|
||||||
|
diamond: 0,
|
||||||
|
onyx: 0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export const midGameState: AppState = {
|
||||||
|
...initialState,
|
||||||
|
gameboard: {
|
||||||
|
...initialState.gameboard,
|
||||||
|
tradingResources: {
|
||||||
|
ruby: 1,
|
||||||
|
sapphire: 1,
|
||||||
|
emerald: 1,
|
||||||
|
onyx: 1,
|
||||||
|
diamond: 1,
|
||||||
|
gold: 3
|
||||||
|
}
|
||||||
|
},
|
||||||
|
round: 4,
|
||||||
|
players: [playerOneMidGame, playerTwoMidGame]
|
||||||
|
}
|
||||||
|
|
||||||
|
export const midGameCardOne: CardData = {
|
||||||
|
gemValue: 'ruby',
|
||||||
|
tier: 2,
|
||||||
|
points: 2,
|
||||||
|
resourceCost: {
|
||||||
|
ruby: 0,
|
||||||
|
sapphire: 0,
|
||||||
|
emerald: 0,
|
||||||
|
diamond: 5,
|
||||||
|
onyx: 0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export const midGameCardTwo: CardData = {
|
||||||
|
gemValue: 'diamond',
|
||||||
|
tier: 2,
|
||||||
|
points: 2,
|
||||||
|
resourceCost: {
|
||||||
|
ruby: 5,
|
||||||
|
sapphire: 0,
|
||||||
|
emerald: 0,
|
||||||
|
diamond: 0,
|
||||||
|
onyx: 0
|
||||||
}
|
}
|
||||||
]
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// miscellaneous mock data
|
// miscellaneous mock data
|
||||||
|
|||||||
Reference in New Issue
Block a user