add mock_suffix configuration option

Same as mock_prefix configuration option. A suffix is easier to work with, if
cmock generation is done from an external GNU makefile.
This commit is contained in:
Stein Heselmans
2016-03-01 16:18:22 +01:00
parent 9af31cd7bb
commit 9e36dc07b1
3 changed files with 7 additions and 2 deletions
+3
View File
@@ -284,6 +284,9 @@ Defined in the yaml file, they look more like this:
The prefix to append to your mock files. Defaults to “Mock”, so a file
“USART.h” will get a mock called “MockUSART.c”
* `:mock_suffix`:
The suffix to append to your mock files. Defaults to “”.
* `:subdir`:
Relative subdir for your mocks. Set this to e.g. "sys" in order to
create mock for `sys/types.h` in `:mock_path`/sys/
+1
View File
@@ -11,6 +11,7 @@ class CMockConfig
:framework => :unity,
:mock_path => 'mocks',
:mock_prefix => 'Mock',
:mock_suffix => '',
:subdir => nil,
:plugins => [],
:strippables => ['(?:__attribute__\s*\(+.*?\)+)'],
+3 -2
View File
@@ -14,6 +14,7 @@ class CMockGenerator
@plugins = plugins
@config = config
@prefix = @config.mock_prefix
@suffix = @config.mock_suffix
@ordered = @config.enforce_strict_ordering
@framework = @config.framework.to_s
@@ -39,7 +40,7 @@ class CMockGenerator
def create_mock(module_name, parsed_stuff)
@module_name = module_name
@mock_name = @prefix + @module_name
@mock_name = @prefix + @module_name + @suffix
@clean_mock_name = TypeSanitizer.sanitize_c_identifier(@mock_name)
create_mock_subdir()
create_mock_header_file(parsed_stuff)
@@ -83,7 +84,7 @@ class CMockGenerator
def create_mock_header_header(file, filename)
define_name = @clean_mock_name.upcase
orig_filename = (@subdir ? @subdir + "/" : "") + filename[@config.mock_prefix.size..-1]
orig_filename = (@subdir ? @subdir + "/" : "") + @module_name + ".h"
file << "/* AUTOGENERATED FILE. DO NOT EDIT. */\n"
file << "#ifndef _#{define_name}_H\n"
file << "#define _#{define_name}_H\n\n"