You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
65 lines
1.3 KiB
65 lines
1.3 KiB
---
|
|
:cmock:
|
|
:plugins: []
|
|
:treat_as:
|
|
custom_type: INT
|
|
|
|
:systest:
|
|
:types: |
|
|
typedef struct _BIG_FAT_STRUCT_T
|
|
{
|
|
char bytes[512];
|
|
} BIG_FAT_STRUCT_T;
|
|
|
|
:mockable: |
|
|
void foo(BIG_FAT_STRUCT_T a);
|
|
|
|
:source:
|
|
:header: |
|
|
void function_a(void);
|
|
void function_b(void);
|
|
|
|
:code: |
|
|
void function_a(void)
|
|
{
|
|
BIG_FAT_STRUCT_T stuff = { { 8, 0 } };
|
|
foo(stuff);
|
|
}
|
|
|
|
void function_b(void)
|
|
{
|
|
BIG_FAT_STRUCT_T stuff1 = { { 9, 1, 0 } };
|
|
BIG_FAT_STRUCT_T stuff2 = { { 9, 2, 0 } };
|
|
foo(stuff1);
|
|
foo(stuff2);
|
|
}
|
|
|
|
:tests:
|
|
:common: |
|
|
void setUp(void) {}
|
|
void tearDown(void) {}
|
|
|
|
:units:
|
|
- :pass: TRUE
|
|
:should: 'successfully should be able to run function a because it only takes half the memory'
|
|
:code: |
|
|
test()
|
|
{
|
|
BIG_FAT_STRUCT_T expected = { { 8, 0 } };
|
|
foo_Expect(expected);
|
|
function_a();
|
|
}
|
|
|
|
- :pass: FALSE
|
|
:should: 'should error out because we do not have eough memory to handle two of these structures'
|
|
:code: |
|
|
test()
|
|
{
|
|
BIG_FAT_STRUCT_T expected1 = { { 9, 1, 0 } };
|
|
BIG_FAT_STRUCT_T expected2 = { { 9, 2, 0 } };
|
|
foo_Expect(expected1);
|
|
foo_Expect(expected2);
|
|
function_b();
|
|
}
|
|
|
|
...
|
|
|