1 #include "test_helper.h"
2 
frames_equal(struct frame * frame_0,struct frame * frame_1)3 bool frames_equal(struct frame *frame_0, struct frame *frame_1) {
4   if (frame_0 && frame_1) {
5     return(frame_0->begin_y == frame_1->begin_y &&
6            frame_0->begin_x == frame_1->begin_x);
7   } else if ((frame_0 && !frame_1) || (!frame_0 && frame_1)) {
8     return(false);
9   } else {
10     return(true);
11   }
12 }
13 
cards_equal(struct card * card_0,struct card * card_1)14 bool cards_equal(struct card *card_0, struct card *card_1) {
15   if (card_0 && card_1) {
16     return(frames_equal(card_0->frame, card_1->frame) &&
17            card_0->value == card_1->value &&
18            card_0->suit == card_1->suit &&
19            card_0->face == card_1->face);
20   } else if ((card_0 && !card_1) || (!card_0 && card_1)) {
21     return(false);
22   } else {
23     return(true);
24   }
25 }
26 
stacks_equal(struct stack * stack_0,struct stack * stack_1)27 bool stacks_equal(struct stack *stack_0, struct stack *stack_1) {
28   if (stack_0 && stack_1) {
29     return(cards_equal(stack_0->card, stack_1->card) &&
30            stacks_equal(stack_0->next, stack_1->next));
31   } else if ((stack_0 && !stack_1) || (!stack_0 && stack_1)) {
32     return(false);
33   } else {
34     return(true);
35   }
36 }
37