Skip to content

Commit fcd00cd

Browse files
Kyle GrageKyle Grage
authored andcommitted
Refactoring for Player test
1 parent a9ba51e commit fcd00cd

File tree

3 files changed

+55
-125
lines changed

3 files changed

+55
-125
lines changed

include/Player.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -120,6 +120,10 @@ class Player {
120120
int getResource(int resourceType) const; //
121121
void addResource(int resourceType, int delta);
122122

123+
bool validateResourceAmount(int wood, int brick, int ore, int wheat, int wool);
124+
bool validateTradeModifiers(int wood, int brick, int ore, int wheat, int wool);
125+
126+
123127
void accept(GameVisitor& visitor);
124128
bool operator==(const Player& player) const;
125129
};

src/Player.cpp

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -703,6 +703,26 @@ void Player::addResource(int resourceType, int delta) {
703703

704704
}
705705

706+
/**
707+
* Check to see if a player's resources are equal to the input
708+
* @param [resource]x5 the amount of (wood, brick, ore, wheat, wool) you are checking
709+
* @return bool if the values match
710+
*/
711+
bool Player::validateResourceAmount(int wood, int brick, int ore, int wheat, int wool){
712+
return wood==getWood() && brick==getBrick() && ore==getOre() && wheat==getWheat() && wool==getWool();
713+
}
714+
715+
/**
716+
* Check to see if a player's trade modifiers are equal to the input
717+
* @param [resource]x5 the modifiers (wood, brick, ore, wheat, wool) you are checking
718+
* @return bool if the values match
719+
*/
720+
bool Player::validateTradeModifiers(int wood, int brick, int ore, int wheat, int wool){
721+
return wood==getWoodModifier() && brick==getBrickModifier() && ore==getOreModifier()
722+
&& wheat==getWheatModifier() && wool==getWoolModifier();
723+
724+
}
725+
706726
/**
707727
* Visitor double-dispatch method.
708728
* @param visitor The visiting instance.

tests/test_Player.cpp

Lines changed: 31 additions & 125 deletions
Original file line numberDiff line numberDiff line change
@@ -14,22 +14,16 @@ const int ORE_INDEX = 2;
1414
const int WHEAT_INDEX = 3;
1515
const int WOOL_INDEX = 4;
1616

17+
1718
TEST(Player_constructor){
1819
Player tp(NULL, "Buster");
1920
CHECK_EQUAL("Buster", tp.getName());
2021
CHECK_EQUAL(0, tp.getLongestRoad());
2122
CHECK_EQUAL(0, tp.getArmySize());
2223
CHECK_EQUAL(0, tp.getDevCardsInHand());
23-
CHECK_EQUAL(0, tp.getWood());
24-
CHECK_EQUAL(0, tp.getBrick());
25-
CHECK_EQUAL(0, tp.getOre());
26-
CHECK_EQUAL(0, tp.getWheat());
27-
CHECK_EQUAL(0, tp.getOre());
28-
CHECK_EQUAL(4, tp.getWoodModifier());
29-
CHECK_EQUAL(4, tp.getBrickModifier());
30-
CHECK_EQUAL(4, tp.getOreModifier());
31-
CHECK_EQUAL(4, tp.getWheatModifier());
32-
CHECK_EQUAL(4, tp.getOreModifier());
24+
25+
CHECK(tp.validateResourceAmount(0,0,0,0,0));
26+
CHECK(tp.validateTradeModifiers(4,4,4,4,4));
3327
}
3428

3529
TEST(Adders_Positive){
@@ -39,17 +33,9 @@ TEST(Adders_Positive){
3933
tp.addOre(1);
4034
tp.addWheat(1);
4135
tp.addWool(1);
42-
CHECK_EQUAL(1, tp.getWood());
43-
CHECK_EQUAL(1, tp.getBrick());
44-
CHECK_EQUAL(1, tp.getOre());
45-
CHECK_EQUAL(1, tp.getWheat());
46-
CHECK_EQUAL(1, tp.getOre());
36+
CHECK(tp.validateResourceAmount(1,1,1,1,1));
4737
tp.addMultiple(1,1,1,1,1);
48-
CHECK_EQUAL(2, tp.getWood());
49-
CHECK_EQUAL(2, tp.getBrick());
50-
CHECK_EQUAL(2, tp.getOre());
51-
CHECK_EQUAL(2, tp.getWheat());
52-
CHECK_EQUAL(2, tp.getOre());
38+
CHECK(tp.validateResourceAmount(2,2,2,2,2));
5339
}
5440

5541
TEST(Adders_Negative_Normal){
@@ -60,17 +46,9 @@ TEST(Adders_Negative_Normal){
6046
tp.addOre(-1);
6147
tp.addWheat(-1);
6248
tp.addWool(-1);
63-
CHECK_EQUAL(4, tp.getWood());
64-
CHECK_EQUAL(4, tp.getBrick());
65-
CHECK_EQUAL(4, tp.getOre());
66-
CHECK_EQUAL(4, tp.getWheat());
67-
CHECK_EQUAL(4, tp.getOre());
49+
CHECK(tp.validateResourceAmount(4,4,4,4,4));
6850
tp.addMultiple(-1,-1,-1,-1,-1);
69-
CHECK_EQUAL(3, tp.getWood());
70-
CHECK_EQUAL(3, tp.getBrick());
71-
CHECK_EQUAL(3, tp.getOre());
72-
CHECK_EQUAL(3, tp.getWheat());
73-
CHECK_EQUAL(3, tp.getOre());
51+
CHECK(tp.validateResourceAmount(3,3,3,3,3));
7452
}
7553

7654
TEST(Adders_Negative_Excessive){
@@ -81,210 +59,136 @@ TEST(Adders_Negative_Excessive){
8159
tp.addOre(-2);
8260
tp.addWheat(-2);
8361
tp.addWool(-2);
84-
CHECK_EQUAL(0, tp.getWood());
85-
CHECK_EQUAL(0, tp.getBrick());
86-
CHECK_EQUAL(0, tp.getOre());
87-
CHECK_EQUAL(0, tp.getWheat());
88-
CHECK_EQUAL(0, tp.getOre());
62+
CHECK(tp.validateResourceAmount(0,0,0,0,0));
8963
tp.addMultiple(1,1,1,1,1);
9064
tp.addMultiple(-2,-2,-2,-2,-2);
91-
CHECK_EQUAL(0, tp.getWood());
92-
CHECK_EQUAL(0, tp.getBrick());
93-
CHECK_EQUAL(0, tp.getOre());
94-
CHECK_EQUAL(0, tp.getWheat());
95-
CHECK_EQUAL(0, tp.getOre());
65+
CHECK(tp.validateResourceAmount(0,0,0,0,0));
9666
}
9767

68+
//TRADE MODIFIERS
9869
TEST(Trade_Modifiers_Brick){
9970
Player tp(NULL, "Buster");
10071
tp.setBrickModifier();
101-
CHECK_EQUAL(4, tp.getWoodModifier());
102-
CHECK_EQUAL(2, tp.getBrickModifier());
103-
CHECK_EQUAL(4, tp.getOreModifier());
104-
CHECK_EQUAL(4, tp.getWheatModifier());
105-
CHECK_EQUAL(4, tp.getOreModifier());
72+
CHECK(tp.validateTradeModifiers(4,2,4,4,4));
10673
}
10774

10875
TEST(Trade_Modifiers_Wood){
10976
Player tp(NULL, "Buster");
11077
tp.setWoodModifier();
111-
CHECK_EQUAL(2, tp.getWoodModifier());
112-
CHECK_EQUAL(4, tp.getBrickModifier());
113-
CHECK_EQUAL(4, tp.getOreModifier());
114-
CHECK_EQUAL(4, tp.getWheatModifier());
115-
CHECK_EQUAL(4, tp.getOreModifier());
78+
CHECK(tp.validateTradeModifiers(2,4,4,4,4));
11679
}
11780

11881
TEST(Trade_Modifiers_Ore){
11982
Player tp(NULL, "Buster");
12083
tp.setOreModifier();
121-
CHECK_EQUAL(4, tp.getWoodModifier());
122-
CHECK_EQUAL(4, tp.getBrickModifier());
123-
CHECK_EQUAL(2, tp.getOreModifier());
124-
CHECK_EQUAL(4, tp.getWheatModifier());
125-
CHECK_EQUAL(4, tp.getOreModifier());
84+
CHECK(tp.validateTradeModifiers(4,4,2,4,4));
12685
}
12786

12887
TEST(Trade_Modifiers_Wheat){
12988
Player tp(NULL, "Buster");
13089
tp.setWheatModifier();
131-
CHECK_EQUAL(4, tp.getWoodModifier());
132-
CHECK_EQUAL(4, tp.getBrickModifier());
133-
CHECK_EQUAL(4, tp.getOreModifier());
134-
CHECK_EQUAL(2, tp.getWheatModifier());
135-
CHECK_EQUAL(4, tp.getOreModifier());
90+
CHECK(tp.validateTradeModifiers(4,4,4,2,4));
13691
}
13792

13893
TEST(Trade_Modifiers_Wool){
13994
Player tp(NULL, "Buster");
14095
tp.setWoolModifier();
141-
CHECK_EQUAL(4, tp.getWoodModifier());
142-
CHECK_EQUAL(4, tp.getBrickModifier());
143-
CHECK_EQUAL(4, tp.getOreModifier());
144-
CHECK_EQUAL(4, tp.getWheatModifier());
145-
CHECK_EQUAL(2, tp.getOreModifier());
96+
CHECK(tp.validateTradeModifiers(4,4,4,4,2));
14697
}
14798

14899
TEST(Trade_Modifiers_3){
149100
Player tp(NULL, "Buster");
150101
tp.setGeneralModifier();
151-
CHECK_EQUAL(3, tp.getWoodModifier());
152-
CHECK_EQUAL(3, tp.getBrickModifier());
153-
CHECK_EQUAL(3, tp.getOreModifier());
154-
CHECK_EQUAL(3, tp.getWheatModifier());
155-
CHECK_EQUAL(3, tp.getOreModifier());
102+
CHECK(tp.validateTradeModifiers(3,3,3,3,3));
156103
}
157104

158105
TEST(Trade_Modifiers_Mixed){
159106
Player tp(NULL, "Buster");
160107
tp.setWheatModifier();
161108
tp.setOreModifier();
162109
tp.setGeneralModifier();
163-
CHECK_EQUAL(3, tp.getWoodModifier());
164-
CHECK_EQUAL(3, tp.getBrickModifier());
165-
CHECK_EQUAL(3, tp.getOreModifier());
166-
CHECK_EQUAL(2, tp.getWheatModifier());
167-
CHECK_EQUAL(2, tp.getOreModifier());
110+
CHECK(tp.validateTradeModifiers(3,3,2,2,3));
168111
}
169112

113+
//PLAYER PURCHASES
170114
TEST(Buy_Settlement_True){
171115
Player tp(NULL, "Buster");
172116
tp.addMultiple(5,5,5,5,5);
173117
CHECK_EQUAL(true, tp.canBuySettlement());
174118
tp.buySettlement();
175-
CHECK_EQUAL(4, tp.getWood());
176-
CHECK_EQUAL(4, tp.getBrick());
177-
CHECK_EQUAL(5, tp.getOre());
178-
CHECK_EQUAL(4, tp.getWheat());
179-
CHECK_EQUAL(4, tp.getOre());
119+
CHECK(tp.validateResourceAmount(4,4,5,4,4));
180120
}
181121

182122
TEST(Buy_Settlement_False){
183123
Player tp(NULL, "Buster");
184124
tp.addMultiple(0,1,1,1,1);
185125
CHECK_EQUAL(false, tp.canBuySettlement());
186126
tp.buySettlement();
187-
CHECK_EQUAL(0, tp.getWood());
188-
CHECK_EQUAL(1, tp.getBrick());
189-
CHECK_EQUAL(1, tp.getOre());
190-
CHECK_EQUAL(1, tp.getWheat());
191-
CHECK_EQUAL(1, tp.getOre());
127+
CHECK(tp.validateResourceAmount(0,1,1,1,1));
192128
}
193129

194130
TEST(Buy_Road_True){
195131
Player tp(NULL, "Buster");
196132
tp.addMultiple(5,5,5,5,5);
197133
CHECK_EQUAL(true, tp.canBuyRoad());
198134
tp.buyRoad();
199-
CHECK_EQUAL(4, tp.getWood());
200-
CHECK_EQUAL(4, tp.getBrick());
201-
CHECK_EQUAL(5, tp.getOre());
202-
CHECK_EQUAL(5, tp.getWheat());
203-
CHECK_EQUAL(5, tp.getOre());
135+
CHECK(tp.validateResourceAmount(4,4,5,5,5));
204136
}
205137

206138
TEST(Buy_Road_False){
207139
Player tp(NULL, "Buster");
208140
tp.addMultiple(0,1,1,1,1);
209141
CHECK_EQUAL(false, tp.canBuyRoad());
210142
tp.buyRoad();
211-
CHECK_EQUAL(0, tp.getWood());
212-
CHECK_EQUAL(1, tp.getBrick());
213-
CHECK_EQUAL(1, tp.getOre());
214-
CHECK_EQUAL(1, tp.getWheat());
215-
CHECK_EQUAL(1, tp.getOre());
143+
CHECK(tp.validateResourceAmount(0,1,1,1,1));
216144
}
217145

218146
TEST(Buy_City_True){
219147
Player tp(NULL, "Buster");
220148
tp.addMultiple(5,5,5,5,5);
221149
CHECK_EQUAL(true, tp.canBuyCity());
222150
tp.buyCity();
223-
CHECK_EQUAL(5, tp.getWood());
224-
CHECK_EQUAL(5, tp.getBrick());
225-
CHECK_EQUAL(2, tp.getOre());
226-
CHECK_EQUAL(3, tp.getWheat());
227-
CHECK_EQUAL(5, tp.getOre());
151+
CHECK(tp.validateResourceAmount(5,5,2,3,5));
228152
}
229153

230154
TEST(Buy_City_False){
231155
Player tp(NULL, "Buster");
232156
tp.addMultiple(1,1,1,1,1);
233157
CHECK_EQUAL(false, tp.canBuyCity());
234158
tp.buyCity();
235-
CHECK_EQUAL(1, tp.getWood());
236-
CHECK_EQUAL(1, tp.getBrick());
237-
CHECK_EQUAL(1, tp.getOre());
238-
CHECK_EQUAL(1, tp.getWheat());
239-
CHECK_EQUAL(1, tp.getOre());
159+
CHECK(tp.validateResourceAmount(1,1,1,1,1));
240160
}
241161

242162
TEST(Buy_Wonder_True){
243163
Player tp(NULL, "Buster");
244164
tp.addMultiple(6,6,6,6,6);
245165
CHECK_EQUAL(true, tp.canBuyWonder());
246166
tp.buyWonder();
247-
CHECK_EQUAL(1, tp.getWood());
248-
CHECK_EQUAL(1, tp.getBrick());
249-
CHECK_EQUAL(1, tp.getOre());
250-
CHECK_EQUAL(1, tp.getWheat());
251-
CHECK_EQUAL(1, tp.getOre());
167+
CHECK(tp.validateResourceAmount(1,1,1,1,1));
252168
}
253169

254170
TEST(Buy_Wonder_False){
255171
Player tp(NULL, "Buster");
256172
tp.addMultiple(5,5,1,5,5);
257173
CHECK_EQUAL(false, tp.canBuyWonder());
258174
tp.buyWonder();
259-
CHECK_EQUAL(5, tp.getWood());
260-
CHECK_EQUAL(5, tp.getBrick());
261-
CHECK_EQUAL(1, tp.getOre());
262-
CHECK_EQUAL(5, tp.getWheat());
263-
CHECK_EQUAL(5, tp.getOre());
175+
CHECK(tp.validateResourceAmount(5,5,1,5,5));
264176
}
265177

266178
TEST(Buy_DevCard_True){
267179
Player tp(NULL, "Buster");
268180
tp.addMultiple(5,5,5,5,5);
269181
CHECK_EQUAL(true, tp.canBuyCard());
270182
tp.buyCard();
271-
CHECK_EQUAL(5, tp.getWood());
272-
CHECK_EQUAL(5, tp.getBrick());
273-
CHECK_EQUAL(4, tp.getOre());
274-
CHECK_EQUAL(4, tp.getWheat());
275-
CHECK_EQUAL(4, tp.getOre());
183+
CHECK(tp.validateResourceAmount(5,5,4,4,4));
276184
}
277185

278186
TEST(Buy_DevCard_False){
279187
Player tp(NULL, "Buster");
280188
tp.addMultiple(1,1,0,1,1);
281189
CHECK_EQUAL(false, tp.canBuyCard());
282190
tp.buyCard();
283-
CHECK_EQUAL(1, tp.getWood());
284-
CHECK_EQUAL(1, tp.getBrick());
285-
CHECK_EQUAL(0, tp.getOre());
286-
CHECK_EQUAL(1, tp.getWheat());
287-
CHECK_EQUAL(1, tp.getOre());
191+
CHECK(tp.validateResourceAmount(1,1,0,1,1));
288192
}
289193

290194

@@ -295,3 +199,5 @@ TEST(Buy_DevCard_False){
295199

296200

297201
//INSERT TRADING TESTS HERE
202+
203+

0 commit comments

Comments
 (0)