From 06ef8bb221e1b6e70b20f907c5c0d5f3e259f8be Mon Sep 17 00:00:00 2001 From: mvandervoord Date: Fri, 4 Dec 2009 18:52:59 +0000 Subject: [PATCH] * added callback plugin * cleaned up plugin prioritization * updated plain docs git-svn-id: http://cmock.svn.sourceforge.net/svnroot/cmock/trunk@148 bf332499-1b4d-0410-844d-d2d48d5cc64c --- docs/CMock Summary.odt | Bin 92422 -> 37858 bytes docs/CMock Summary.pdf | Bin 63209 -> 71645 bytes docs/CMock Summary.txt | 102 --------- lib/cmock_config.rb | 1 + lib/cmock_generator.rb | 1 - lib/cmock_generator_plugin_array.rb | 6 +- lib/cmock_generator_plugin_callback.rb | 79 +++++++ lib/cmock_generator_plugin_cexception.rb | 29 +-- lib/cmock_generator_plugin_expect.rb | 2 + lib/cmock_generator_plugin_ignore.rb | 4 +- lib/cmock_plugin_manager.rb | 1 + .../stubs_with_callbacks.yml | 207 ++++++++++++++++++ test/unit/cmock_generator_main_test.rb | 10 - .../unit/cmock_generator_plugin_array_test.rb | 17 +- .../cmock_generator_plugin_callback_test.rb | 144 ++++++++++++ .../cmock_generator_plugin_cexception_test.rb | 7 +- .../cmock_generator_plugin_expect_test.rb | 5 +- .../cmock_generator_plugin_ignore_test.rb | 13 +- 18 files changed, 465 insertions(+), 163 deletions(-) delete mode 100644 docs/CMock Summary.txt create mode 100644 lib/cmock_generator_plugin_callback.rb create mode 100644 test/system/test_interactions/stubs_with_callbacks.yml create mode 100644 test/unit/cmock_generator_plugin_callback_test.rb diff --git a/docs/CMock Summary.odt b/docs/CMock Summary.odt index 6a48f1c5bc6623a8e061d01c407e9aa5d1917072..970c7f63b766001b1bf432490b743b8f956fd257 100644 GIT binary patch delta 27924 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�i`fd?J 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%0A* z2*}L=2nhDS@9;ktp@gXTUx5GHEuB`n?LQ+HCIk9EW8i|RfY2rk484l85mYbpxl~)Avd)o5u2{drTLrIL^Cj)iVsb`nb${Z zvj1dGWvJ7TTL!3VBWD8DO4O&Mp}Pt>hw-2opC8M}P@Gy)l9`u|)j!A)FN&fwHHneI p*EPgZ*VE5UKQ}QiGcC2a1mwBNXC`y-2{8yUoCJn}dI~Tw7y!G4jM)GH diff --git a/docs/CMock Summary.pdf b/docs/CMock Summary.pdf index 988966c82c550c17428d82b855c2ec47d097aab9..d4ad97a93c3841daa59f143c5e07881efada4f2f 100644 GIT binary patch delta 65265 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 F{}1Qm&xHU0 delta 57444 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 diff --git a/docs/CMock Summary.txt b/docs/CMock Summary.txt deleted file mode 100644 index 0e85a4d..0000000 --- a/docs/CMock Summary.txt +++ /dev/null @@ -1,102 +0,0 @@ - -Running CMock -============= - -CMock is a Ruby script and class. You can therefore use it directly from the command line, -or include it in your own scripts or rakefiles. - -Mocking from the Command Line ------------------------------ - -After unpacking CMock, you will find CMock.rb in the 'lib' directory. This is the file -that you want to run. It takes a list of header files to be mocked, as well as an optional -yaml file for a more detailed configuration (see config options below). - -For example, this will create three mocks using the configuration specified in MyConfig.yml: - - ruby cmock.rb -oMyConfig.yml super.h duper.h awesome.h - -And this will create two mocks using the default configuration: - - ruby cmock.rb ../mocking/stuff/is/fun.h ../try/it/yourself.h - -Mocking From Scripts or Rake ----------------------------- - -CMock can be used directly from your own scripts or from a rakefile. Start by including -cmock.rb, then create an instance of CMock. When you create your instance, you may -initialize it in one of three ways. - -You may specify nothing, allowing it to run with default settings: - - cmock = CMock.new - -You may specify a YAML file containing the configuration options you desire: - - cmock = CMock.new('../MyConfig.yml') - -You may specify the options explicitly: - - cmock = CMock.new('plugins' => ['cexception','ignore'],'mock_path' => 'my/mocks/') - -Config Options: ---------------- - -The following configuration options can be specified in the yaml file or directly when instantiating. - -Option Purpose ----------------------------------------------------------------- -plugins An array of which plugins to enable. 'expect' is always active. - 'cexception' and 'ignore' are also currently available. - -mock_path The directory where you would like the mock files generated to - be placed. - -includes An array of additional include files which should be added to the - mocks. Useful for global types and definitions used in your project. - -tab What does tab mean in your project? By default: a pair of spaces. - -expect_call_count_type Used internally by CMock... but maybe you don't like int's for - some reason? - -ignore_bool_type Used internally by Ignore plugin... but maybe you have a better - bool type? - -cexception_include Tell cexception plugin where to find Exception.h... only need to - define if it's not in your build path already. - -cexception_throw_type Tell cexception what type you are “throwing” around in your - application. It assumes an int - - -CMock Generated Mock Module Summary -=================================== - -In addition to the mocks themselves, CMock will generate the following functions for use in -your tests. The expect functions are always generated. While the ignore and cexception -functions are only generated if those plugins are enabled: - -Original Function => Generated Expect Functions -------------------------------------------------- -void func(void) => void func_Expect(void) -void func(params) => void func_Expect(expected_params) -retval func(void) => void func_ExpectAndReturn(retval_to_return) -retval func(params) => void func_ExpectAndReturn(expected_params, retval_to_return) - - -Original Function => Generated CException Functions ------------------------------------------------------ -void func(void) => void func_ExpectAndThrow(value_to_throw) -void func(params) => void func_ExpectAndThrow(expected_params, value_to_throw) -retval func(void) => void func_ExpectAndThrow(value_to_throw) -retval func(params) => void func_ExpectAndThrow(expected_params, value_to_throw) - - -Original Function => Generated Ignore Functions -------------------------------------------------- -void func(void) => void func_Ignore(void) -void func(params) => void func_Ignore(void) -retval func(void) => void func_IgnoreAndReturn(retval_to_return) -retval func(params) => void func_IgnoreAndReturn(retval_to_return) - diff --git a/lib/cmock_config.rb b/lib/cmock_config.rb index ef42930..f2de309 100644 --- a/lib/cmock_config.rb +++ b/lib/cmock_config.rb @@ -25,6 +25,7 @@ class CMockConfig when Hash then options = CMockDefaultOptions.clone.merge(options) else raise "If you specify arguments, it should be a filename or a hash of options" end + options[:plugins] ||= [] @options = options @options.each_key { |key| eval("def #{key}() return @options[:#{key}] end") } end diff --git a/lib/cmock_generator.rb b/lib/cmock_generator.rb index 5bd9ebe..4ae4bda 100644 --- a/lib/cmock_generator.rb +++ b/lib/cmock_generator.rb @@ -158,7 +158,6 @@ class CMockGenerator file << "#{function[:attributes]} " if (!function[:attributes].nil? && function[:attributes].length > 0) file << "#{function_mod_and_rettype} #{function[:name]}(#{args_string})\n" file << "{\n" - file << @plugins.run(:mock_implementation_prefix, function) file << @plugins.run(:mock_implementation, function) # Return expected value, if necessary diff --git a/lib/cmock_generator_plugin_array.rb b/lib/cmock_generator_plugin_array.rb index 38a1223..17486ff 100644 --- a/lib/cmock_generator_plugin_array.rb +++ b/lib/cmock_generator_plugin_array.rb @@ -1,6 +1,7 @@ class CMockGeneratorPluginArray + attr_reader :priority attr_accessor :config, :utils, :unity_helper, :ordered def initialize(config, utils) @@ -9,6 +10,7 @@ class CMockGeneratorPluginArray @ordered = @config.enforce_strict_ordering @utils = utils @unity_helper = @utils.helpers[:unity_helper] + @priority = 8 end def instance_structure(function) @@ -37,10 +39,6 @@ class CMockGeneratorPluginArray end end - def mock_implementation(function) - nil - end - def mock_interfaces(function) return nil unless function[:contains_ptr?] diff --git a/lib/cmock_generator_plugin_callback.rb b/lib/cmock_generator_plugin_callback.rb new file mode 100644 index 0000000..cd1ab94 --- /dev/null +++ b/lib/cmock_generator_plugin_callback.rb @@ -0,0 +1,79 @@ +class CMockGeneratorPluginCallback + + attr_reader :priority + attr_reader :config, :utils + + def initialize(config, utils) + @config = config + @utils = utils + @priority = 3 + end + + def instance_structure(function) + INSTANCE_STRUCTURE_SNIPPET % [function[:name]] + end + + def mock_function_declarations(function) + if (function[:args_string] == "void") + MOCK_DECLARATION_SNIPPET % [function[:name], function[:return_type], ''] + else + MOCK_DECLARATION_SNIPPET % [function[:name], function[:return_type], function[:args_string] + ', '] + end + end + + def mock_implementation(function) + call_string = function[:args].empty? ? '' : function[:args].map{|m| m[:name]}.join(', ') + ', ' + if (function[:return_type] == 'void') + return MOCK_IMPLEMENTATION_NORET_SNIPPET % [function[:name], call_string] + else + return MOCK_IMPLEMENTATION_RETVAL_SNIPPET % [function[:name], call_string] + end + end + + def mock_interfaces(function) + MOCK_INTERFACE_SNIPPET % [function[:name]] + end + + def mock_destroy(function) + MOCK_DESTROY_SNIPPET % function[:name] + end + + private ############ + + INSTANCE_STRUCTURE_SNIPPET = %q[ CMOCK_%1$s_CALLBACK %1$s_CallbackFunctionPointer; +] + + MOCK_DECLARATION_SNIPPET = %q[ +typedef %2$s (* CMOCK_%1$s_CALLBACK)(%3$sint NumCalls); +void %1$s_StubWithCallback(CMOCK_%1$s_CALLBACK Callback); +] + + MOCK_IMPLEMENTATION_NORET_SNIPPET = %q[ + if (Mock.%1$s_CallbackFunctionPointer != NULL) + { + Mock.%1$s_CallsExpected++; + Mock.%1$s_CallbackFunctionPointer(%2$sMock.%1$s_CallCount++); + return; + } +] + + MOCK_IMPLEMENTATION_RETVAL_SNIPPET = %q[ + if (Mock.%1$s_CallbackFunctionPointer != NULL) + { + Mock.%1$s_CallsExpected++; + return Mock.%1$s_CallbackFunctionPointer(%2$sMock.%1$s_CallCount++); + } +] + + MOCK_INTERFACE_SNIPPET = %q[ +void %1$s_StubWithCallback(CMOCK_%1$s_CALLBACK Callback) +{ + Mock.%1$s_CallbackFunctionPointer = Callback; +} +] + + MOCK_DESTROY_SNIPPET = %q[ + Mock.%1$s_CallbackFunctionPointer = NULL; +] + +end diff --git a/lib/cmock_generator_plugin_cexception.rb b/lib/cmock_generator_plugin_cexception.rb index 823d2b8..d9299de 100644 --- a/lib/cmock_generator_plugin_cexception.rb +++ b/lib/cmock_generator_plugin_cexception.rb @@ -1,37 +1,38 @@ - class CMockGeneratorPluginCexception + attr_reader :priority attr_reader :config, :utils - + def initialize(config, utils) @config = config @utils = utils + @priority = 7 raise "'cexception_include' needs to be defined in config" unless @config.respond_to?(:cexception_include) end - + def include_files include = @config.cexception_include include = "Exception.h" if (include.nil?) return "#include \"#{include}\"\n" end - + def instance_structure(function) INSTANCE_STRUCTURE_SNIPPET % function[:name] end - + def mock_function_declarations(function) if (function[:args_string] == "void") - return "void #{function[:name]}_ExpectAndThrow(EXCEPTION_T toThrow);\n" - else - return "void #{function[:name]}_ExpectAndThrow(#{function[:args_string]}, EXCEPTION_T toThrow);\n" + return "void #{function[:name]}_ExpectAndThrow(EXCEPTION_T toThrow);\n" + else + return "void #{function[:name]}_ExpectAndThrow(#{function[:args_string]}, EXCEPTION_T toThrow);\n" end end - + def mock_implementation(function) MOCK_IMPLEMENTATION_SNIPPET % function[:name] end - + def mock_interfaces(function) arg_insert = (function[:args_string] == "void") ? "" : "#{function[:args_string]}, " call_string = function[:args].map{|m| m[:name]}.join(', ') @@ -43,13 +44,13 @@ class CMockGeneratorPluginCexception (function[:args_string] != "void") ? " ExpectParameters_#{function[:name]}(#{call_string});\n" : nil, "}\n\n" ].join end - + def mock_destroy(function) MOCK_DESTROY_SNIPPET % function[:name] end - + private ############ - + INSTANCE_STRUCTURE_SNIPPET = %q[ int *%1$s_ThrowOnCallCount; int *%1$s_ThrowOnCallCount_Head; @@ -63,7 +64,7 @@ class CMockGeneratorPluginCexception if ((Mock.%1$s_ThrowOnCallCount != Mock.%1$s_ThrowOnCallCount_Tail) && (Mock.%1$s_ThrowValue != Mock.%1$s_ThrowValue_Tail)) { - if (*Mock.%1$s_ThrowOnCallCount && + if (*Mock.%1$s_ThrowOnCallCount && (Mock.%1$s_CallCount == *Mock.%1$s_ThrowOnCallCount)) { EXCEPTION_T toThrow = *Mock.%1$s_ThrowValue; diff --git a/lib/cmock_generator_plugin_expect.rb b/lib/cmock_generator_plugin_expect.rb index 8b4ce99..7eb629a 100644 --- a/lib/cmock_generator_plugin_expect.rb +++ b/lib/cmock_generator_plugin_expect.rb @@ -1,6 +1,7 @@ class CMockGeneratorPluginExpect + attr_reader :priority attr_accessor :config, :utils, :unity_helper, :ordered def initialize(config, utils) @@ -9,6 +10,7 @@ class CMockGeneratorPluginExpect @ordered = @config.enforce_strict_ordering @utils = utils @unity_helper = @utils.helpers[:unity_helper] + @priority = 5 end def instance_structure(function) diff --git a/lib/cmock_generator_plugin_ignore.rb b/lib/cmock_generator_plugin_ignore.rb index 64493d3..d17cd49 100644 --- a/lib/cmock_generator_plugin_ignore.rb +++ b/lib/cmock_generator_plugin_ignore.rb @@ -1,11 +1,13 @@ class CMockGeneratorPluginIgnore + attr_reader :priority attr_reader :config, :utils def initialize(config, utils) @config = config @utils = utils + @priority = 2 end def instance_structure(function) @@ -20,7 +22,7 @@ class CMockGeneratorPluginIgnore end end - def mock_implementation_prefix(function) + def mock_implementation(function) lines = " if (Mock.#{function[:name]}_IgnoreBool)\n {" if (function[:return_type] == "void") lines << "\n return;\n" diff --git a/lib/cmock_plugin_manager.rb b/lib/cmock_plugin_manager.rb index bde23e0..f82f55e 100644 --- a/lib/cmock_plugin_manager.rb +++ b/lib/cmock_plugin_manager.rb @@ -18,6 +18,7 @@ class CMockPluginManager raise "Unable to load plugin '#{plugin_name}'" end end + @plugins.sort! {|a,b| a.priority <=> b.priority } end def run(method, args=nil) diff --git a/test/system/test_interactions/stubs_with_callbacks.yml b/test/system/test_interactions/stubs_with_callbacks.yml new file mode 100644 index 0000000..1e0c6d4 --- /dev/null +++ b/test/system/test_interactions/stubs_with_callbacks.yml @@ -0,0 +1,207 @@ +--- +:cmock: + :plugins: + - :callback + +:systest: + :types: | + #define UINT32 unsigned int + + typedef signed int custom_type; + + :mockable: | + UINT32 foo(custom_type* a); + UINT32 bar(custom_type* b); + int baz(void); + void fuz(int* args, int num); + + :source: + :header: | + void function_a(int a, int b); + UINT32 function_b(void); + int function_c(void); + + :code: | + void function_a(int a, int b) + { + int args[6] = {0, 1, 2, 3, 5, 5}; + args[0] = a; + fuz(args, b); + } + + UINT32 function_b(void) + { + UINT32 sum = 0; + custom_type a = 0; + custom_type b = 0; + sum = foo(&a) + bar(&b); + return sum + a + b; + } + + int function_c(void) + { + return (baz() + baz() + baz()); + } + + :tests: + :common: | + void setUp(void) {} + void tearDown(void) {} + + UINT32 FooAndBarHelper(custom_type* data, int num) + { + num++; + *data = (custom_type)(num * 2); + return (*data * 2); + } + + int BazCallbackPointless(int num) + { + return num; + } + + int BazCallbackComplainsIfCalledMoreThanTwice(int num) + { + TEST_ASSERT_MESSAGE(num < 2, "Do Not Call Baz More Than Twice"); + return num; + } + + void FuzVerifier(int* args, int num_args, int num_calls) + { + int i; + TEST_ASSERT_MESSAGE(num_args < 5, "No More Than 5 Args Allowed"); + for (i = 0; i < num_args; i++) + { + TEST_ASSERT_EQUAL(num_calls + i, args[i]); + } + } + + :units: + - :pass: TRUE + :should: 'successfully exercise two simple ExpectAndReturn mock calls the normal way' + :code: | + test() + { + custom_type exp = 0; + foo_ExpectAndReturn(&exp, 10); + bar_ExpectAndReturn(&exp, 20); + TEST_ASSERT_EQUAL(30, function_b()); + } + + - :pass: FALSE + :should: 'successfully exercise two simple ExpectAndReturn mock calls and catch failure the normal way' + :code: | + test() + { + custom_type exp = 1; + foo_ExpectAndReturn(&exp, 10); + bar_ExpectAndReturn(&exp, 20); + TEST_ASSERT_EQUAL(30, function_b()); + } + + - :pass: TRUE + :should: 'successfully exercise using some basic callbacks' + :code: | + test() + { + foo_StubWithCallback((CMOCK_foo_CALLBACK)FooAndBarHelper); + bar_StubWithCallback((CMOCK_bar_CALLBACK)FooAndBarHelper); + TEST_ASSERT_EQUAL(12, function_b()); + } + + - :pass: FALSE + :should: 'successfully exercise using some basic callbacks and notice failures' + :code: | + test() + { + foo_StubWithCallback((CMOCK_foo_CALLBACK)FooAndBarHelper); + bar_StubWithCallback((CMOCK_bar_CALLBACK)FooAndBarHelper); + TEST_ASSERT_EQUAL(10, function_b()); + } + + - :pass: TRUE + :should: 'successfully exercise a callback with no arguments' + :code: | + test() + { + baz_StubWithCallback((CMOCK_baz_CALLBACK)BazCallbackPointless); + TEST_ASSERT_EQUAL(3, function_c()); + } + + - :pass: FALSE + :should: 'successfully throw a failure from within a callback function' + :code: | + test() + { + baz_StubWithCallback((CMOCK_baz_CALLBACK)BazCallbackComplainsIfCalledMoreThanTwice); + function_c(); + } + + - :pass: TRUE + :should: 'be usable for things like dynamically sized memory checking for passing conditions' + :code: | + test() + { + fuz_StubWithCallback((CMOCK_fuz_CALLBACK)FuzVerifier); + function_a(0, 4); + } + + - :pass: FALSE + :should: 'be usable for things like dynamically sized memory checking for failing conditions' + :code: | + test() + { + fuz_StubWithCallback((CMOCK_fuz_CALLBACK)FuzVerifier); + function_a(0, 5); + } + + - :pass: FALSE + :should: 'be usable for things like dynamically sized memory checking for failing conditions 2' + :code: | + test() + { + fuz_StubWithCallback((CMOCK_fuz_CALLBACK)FuzVerifier); + function_a(1, 4); + } + + - :pass: TRUE + :should: 'run them interlaced' + :code: | + test() + { + custom_type exp = 0; + foo_ExpectAndReturn(&exp, 10); + foo_ExpectAndReturn(&exp, 15); + bar_ExpectAndReturn(&exp, 20); + bar_ExpectAndReturn(&exp, 40); + fuz_StubWithCallback((CMOCK_fuz_CALLBACK)FuzVerifier); + baz_StubWithCallback((CMOCK_baz_CALLBACK)BazCallbackPointless); + + TEST_ASSERT_EQUAL(30, function_b()); + TEST_ASSERT_EQUAL(55, function_b()); + function_a(0, 4); + TEST_ASSERT_EQUAL(3, function_c()); + } + + - :pass: TRUE + :should: 'run them back to back' + :code: | + test() + { + custom_type exp = 0; + foo_ExpectAndReturn(&exp, 10); + bar_ExpectAndReturn(&exp, 20); + TEST_ASSERT_EQUAL(30, function_b()); + + foo_ExpectAndReturn(&exp, 15); + bar_ExpectAndReturn(&exp, 40); + TEST_ASSERT_EQUAL(55, function_b()); + + fuz_StubWithCallback((CMOCK_fuz_CALLBACK)FuzVerifier); + function_a(0, 4); + + baz_StubWithCallback((CMOCK_baz_CALLBACK)BazCallbackPointless); + TEST_ASSERT_EQUAL(3, function_c()); + } + +... diff --git a/test/unit/cmock_generator_main_test.rb b/test/unit/cmock_generator_main_test.rb index 0f55132..88f03d0 100644 --- a/test/unit/cmock_generator_main_test.rb +++ b/test/unit/cmock_generator_main_test.rb @@ -25,10 +25,6 @@ class MockedPluginHelper return " #{@return_this}_#{name}(#{args}, #{rettype})" end - def mock_implementation_prefix(name, rettype) - return " Pre#{name}#{@return_this}.#{rettype}" - end - def mock_implementation(name, args) return " Mock#{name}#{@return_this}(#{args.join(", ")})" end @@ -326,14 +322,11 @@ class CMockGeneratorTest < Test::Unit::TestCase expected = [ "__inline ", "static bool SupaFunction(uint32 sandwiches, const char* named)\n", "{\n", - " PreSupaFunctionUno.bool", - " PreSupaFunctionDos.bool", " MockSupaFunctionUno(uint32 sandwiches, const char* named)", " MockSupaFunctionDos(uint32 sandwiches, const char* named)", " UtilsSupaFunction.bool", "}\n\n" ] - @plugins.expect.run(:mock_implementation_prefix, function).returns([" PreSupaFunctionUno.bool"," PreSupaFunctionDos.bool"]) @plugins.expect.run(:mock_implementation, function).returns([" MockSupaFunctionUno(uint32 sandwiches, const char* named)"," MockSupaFunctionDos(uint32 sandwiches, const char* named)"]) @utils.expect.code_handle_return_value(function).returns([" UtilsSupaFunction.bool"]) @@ -354,14 +347,11 @@ class CMockGeneratorTest < Test::Unit::TestCase output = [] expected = [ "int SupaFunction(uint32 sandwiches, corn ...)\n", "{\n", - " PreSupaFunctionUno.int", - " PreSupaFunctionDos.int", " MockSupaFunctionUno(uint32 sandwiches)", " MockSupaFunctionDos(uint32 sandwiches)", " UtilsSupaFunction.int", "}\n\n" ] - @plugins.expect.run(:mock_implementation_prefix, function).returns([" PreSupaFunctionUno.int"," PreSupaFunctionDos.int"]) @plugins.expect.run(:mock_implementation, function).returns([" MockSupaFunctionUno(uint32 sandwiches)"," MockSupaFunctionDos(uint32 sandwiches)"]) @utils.expect.code_handle_return_value(function).returns([" UtilsSupaFunction.int"]) diff --git a/test/unit/cmock_generator_plugin_array_test.rb b/test/unit/cmock_generator_plugin_array_test.rb index 5d29ae6..f57f4cd 100644 --- a/test/unit/cmock_generator_plugin_array_test.rb +++ b/test/unit/cmock_generator_plugin_array_test.rb @@ -20,6 +20,7 @@ class CMockGeneratorPluginArrayTest < Test::Unit::TestCase assert_equal(@config, @cmock_generator_plugin_array.config) assert_equal(@utils, @cmock_generator_plugin_array.utils) assert_equal(nil, @cmock_generator_plugin_array.unity_helper) + assert_equal(8, @cmock_generator_plugin_array.priority) end should "not include any additional include files" do @@ -78,21 +79,9 @@ class CMockGeneratorPluginArrayTest < Test::Unit::TestCase returned = @cmock_generator_plugin_array.mock_function_declarations(function) assert_equal(expected, returned) end - - should "not require anything for implementation prefix" do - assert(!@cmock_generator_plugin_array.respond_to?(:mock_implementation_prefix)) - end - should "not have a mock function implementation for functions of style 'int* func(void)'" do - function = {:name => "Apple", :args => [], :return_type => "int*", :contains_ptr? => false} - returned = @cmock_generator_plugin_array.mock_implementation(function) - assert_nil(returned) - end - - should "not have a mock function implementation for functions containing pointers either (handled in expect)" do - function = {:name => "Apple", :args => [{ :type => 'int*', :name => 'sausage', :ptr? => true}], :return_type => "int*", :contains_ptr? => true} - returned = @cmock_generator_plugin_array.mock_implementation(function) - assert_nil(returned) + should "not have a mock function implementation" do + assert(!@cmock_generator_plugin_array.respond_to?(:mock_implementation)) end should "not have a mock interfaces for functions of style 'int* func(void)'" do diff --git a/test/unit/cmock_generator_plugin_callback_test.rb b/test/unit/cmock_generator_plugin_callback_test.rb new file mode 100644 index 0000000..a56faf9 --- /dev/null +++ b/test/unit/cmock_generator_plugin_callback_test.rb @@ -0,0 +1,144 @@ +require File.expand_path(File.dirname(__FILE__)) + "/../test_helper" +require 'cmock_generator_plugin_callback' + +class CMockGeneratorPluginCallbackTest < Test::Unit::TestCase + def setup + create_mocks :config, :utils + + @cmock_generator_plugin_callback = CMockGeneratorPluginCallback.new(@config, @utils) + end + + def teardown + end + + should "have set up internal accessors correctly on init" do + assert_equal(@config, @cmock_generator_plugin_callback.config) + assert_equal(@utils, @cmock_generator_plugin_callback.utils) + assert_equal(3, @cmock_generator_plugin_callback.priority) + end + + should "not include any additional include files" do + assert(!@cmock_generator_plugin_callback.respond_to?(:include_files)) + end + + should "add to control structure" do + function = {:name => "Oak", :args => [:type => "int*", :name => "blah", :ptr? => true], :return_type => "int*"} + expected = " CMOCK_Oak_CALLBACK Oak_CallbackFunctionPointer;\n" + returned = @cmock_generator_plugin_callback.instance_structure(function) + assert_equal(expected, returned) + end + + should "add mock function declaration for function without arguments" do + function = {:name => "Maple", :args_string => "void", :return_type => "void"} + expected = [ "\n", + "typedef void (* CMOCK_Maple_CALLBACK)(int NumCalls);\n", + "void Maple_StubWithCallback(CMOCK_Maple_CALLBACK Callback);\n" ].join + returned = @cmock_generator_plugin_callback.mock_function_declarations(function) + assert_equal(expected, returned) + end + + should "add mock function declaration for function with arguments" do + function = {:name => "Maple", :args_string => "int* tofu", :return_type => "void"} + expected = [ "\n", + "typedef void (* CMOCK_Maple_CALLBACK)(int* tofu, int NumCalls);\n", + "void Maple_StubWithCallback(CMOCK_Maple_CALLBACK Callback);\n" ].join + returned = @cmock_generator_plugin_callback.mock_function_declarations(function) + assert_equal(expected, returned) + end + + should "add mock function declaration for function with return values" do + function = {:name => "Maple", :args_string => "int* tofu", :return_type => "char*"} + expected = [ "\n", + "typedef char* (* CMOCK_Maple_CALLBACK)(int* tofu, int NumCalls);\n", + "void Maple_StubWithCallback(CMOCK_Maple_CALLBACK Callback);\n" ].join + returned = @cmock_generator_plugin_callback.mock_function_declarations(function) + assert_equal(expected, returned) + end + + should "add mock function implementation for functions of style 'void func(void)'" do + function = {:name => "Apple", :args => [], :args_string => "void", :return_type => "void"} + expected = ["\n", + " if (Mock.Apple_CallbackFunctionPointer != NULL)\n", + " {\n", + " Mock.Apple_CallsExpected++;\n", + " Mock.Apple_CallbackFunctionPointer(Mock.Apple_CallCount++);\n", + " return;\n", + " }\n" + ].join + returned = @cmock_generator_plugin_callback.mock_implementation(function) + assert_equal(expected, returned) + end + + should "add mock function implementation for functions of style 'int func(void)'" do + function = {:name => "Apple", :args => [], :args_string => "void", :return_type => "int"} + expected = ["\n", + " if (Mock.Apple_CallbackFunctionPointer != NULL)\n", + " {\n", + " Mock.Apple_CallsExpected++;\n", + " return Mock.Apple_CallbackFunctionPointer(Mock.Apple_CallCount++);\n", + " }\n" + ].join + returned = @cmock_generator_plugin_callback.mock_implementation(function) + assert_equal(expected, returned) + end + + should "add mock function implementation for functions of style 'void func(int* steak, uint8_t flag)'" do + function = {:name => "Apple", + :args => [ { :type => 'int*', :name => 'steak', :ptr? => true}, + { :type => 'uint8_t', :name => 'flag', :ptr? => false} ], + :args_string => "int* steak, uint8_t flag", + :return_type => "void"} + expected = ["\n", + " if (Mock.Apple_CallbackFunctionPointer != NULL)\n", + " {\n", + " Mock.Apple_CallsExpected++;\n", + " Mock.Apple_CallbackFunctionPointer(steak, flag, Mock.Apple_CallCount++);\n", + " return;\n", + " }\n" + ].join + returned = @cmock_generator_plugin_callback.mock_implementation(function) + assert_equal(expected, returned) + end + + should "add mock function implementation for functions of style 'int16_t func(int* steak, uint8_t flag)'" do + function = {:name => "Apple", + :args => [ { :type => 'int*', :name => 'steak', :ptr? => true}, + { :type => 'uint8_t', :name => 'flag', :ptr? => false} ], + :args_string => "int* steak, uint8_t flag", + :return_type => "int16_t"} + expected = ["\n", + " if (Mock.Apple_CallbackFunctionPointer != NULL)\n", + " {\n", + " Mock.Apple_CallsExpected++;\n", + " return Mock.Apple_CallbackFunctionPointer(steak, flag, Mock.Apple_CallCount++);\n", + " }\n" + ].join + returned = @cmock_generator_plugin_callback.mock_implementation(function) + assert_equal(expected, returned) + end + + should "add mock interfaces for functions " do + function = {:name => "Lemon", + :args => [{ :type => "char*", :name => "pescado"}], + :args_string => "char* pescado", + :return_type => "int", + :return_string => "int toReturn" } + + expected = ["\n", + "void Lemon_StubWithCallback(CMOCK_Lemon_CALLBACK Callback)\n", + "{\n", + " Mock.Lemon_CallbackFunctionPointer = Callback;\n", + "}\n" + ].join + returned = @cmock_generator_plugin_callback.mock_interfaces(function) + assert_equal(expected, returned) + end + + should "add mock destroy for functions" do + function = {:name => "Peach", :args => [], :return_type => "void" } + expected = ["\n", + " Mock.Peach_CallbackFunctionPointer = NULL;\n" ].join + returned = @cmock_generator_plugin_callback.mock_destroy(function) + assert_equal(expected, returned) + end +end diff --git a/test/unit/cmock_generator_plugin_cexception_test.rb b/test/unit/cmock_generator_plugin_cexception_test.rb index 6cebfbd..26ffa0f 100644 --- a/test/unit/cmock_generator_plugin_cexception_test.rb +++ b/test/unit/cmock_generator_plugin_cexception_test.rb @@ -14,6 +14,7 @@ class CMockGeneratorPluginCexceptionTest < Test::Unit::TestCase should "have set up internal accessors correctly on init" do assert_equal(@config, @cmock_generator_plugin_cexception.config) assert_equal(@utils, @cmock_generator_plugin_cexception.utils) + assert_equal(7, @cmock_generator_plugin_cexception.priority) end should "include the cexception library" do @@ -58,17 +59,13 @@ class CMockGeneratorPluginCexceptionTest < Test::Unit::TestCase assert_equal(expected, returned) end - should "add nothing during implementation prefix" do - assert(!@cmock_generator_plugin_cexception.respond_to?(:mock_implementation_prefix)) - end - should "add a mock implementation" do function = {:name => "Cherry", :args => [], :return_type => "void"} expected = ["\n", " if ((Mock.Cherry_ThrowOnCallCount != Mock.Cherry_ThrowOnCallCount_Tail) &&\n", " (Mock.Cherry_ThrowValue != Mock.Cherry_ThrowValue_Tail))\n", " {\n", - " if (*Mock.Cherry_ThrowOnCallCount && \n", + " if (*Mock.Cherry_ThrowOnCallCount &&\n", " (Mock.Cherry_CallCount == *Mock.Cherry_ThrowOnCallCount))\n", " {\n", " EXCEPTION_T toThrow = *Mock.Cherry_ThrowValue;\n", diff --git a/test/unit/cmock_generator_plugin_expect_test.rb b/test/unit/cmock_generator_plugin_expect_test.rb index 64bf652..32cc337 100644 --- a/test/unit/cmock_generator_plugin_expect_test.rb +++ b/test/unit/cmock_generator_plugin_expect_test.rb @@ -27,6 +27,7 @@ class CMockGeneratorPluginExpectTest < Test::Unit::TestCase assert_equal(@config, @cmock_generator_plugin_expect.config) assert_equal(@utils, @cmock_generator_plugin_expect.utils) assert_equal(nil, @cmock_generator_plugin_expect.unity_helper) + assert_equal(5, @cmock_generator_plugin_expect.priority) end should "not include any additional include files" do @@ -129,10 +130,6 @@ class CMockGeneratorPluginExpectTest < Test::Unit::TestCase returned = @cmock_generator_plugin_expect.mock_function_declarations(function) assert_equal(expected, returned) end - - should "not require anything for implementation prefix" do - assert(!@cmock_generator_plugin_expect.respond_to?(:mock_implementation_prefix)) - end should "add mock function implementation for functions of style 'void func(void)'" do function = {:name => "Apple", :args => [], :return_type => "void"} diff --git a/test/unit/cmock_generator_plugin_ignore_test.rb b/test/unit/cmock_generator_plugin_ignore_test.rb index d897f00..7e5d962 100644 --- a/test/unit/cmock_generator_plugin_ignore_test.rb +++ b/test/unit/cmock_generator_plugin_ignore_test.rb @@ -14,6 +14,7 @@ class CMockGeneratorPluginIgnoreTest < Test::Unit::TestCase should "have set up internal accessors correctly on init" do assert_equal(@config, @cmock_generator_plugin_ignore.config) assert_equal(@utils, @cmock_generator_plugin_ignore.utils) + assert_equal(2, @cmock_generator_plugin_ignore.priority) end should "not have any additional include file requirements" do @@ -41,18 +42,18 @@ class CMockGeneratorPluginIgnoreTest < Test::Unit::TestCase assert_equal(expected, returned) end - should "add required code to implementation prefix with void function" do + should "add required code to implementation with void function" do function = {:name => "Mold", :args_string => "void", :return_type => "void"} expected = [" if (Mock.Mold_IgnoreBool)\n", " {\n", " return;\n", " }\n" ].join - returned = @cmock_generator_plugin_ignore.mock_implementation_prefix(function) + returned = @cmock_generator_plugin_ignore.mock_implementation(function) assert_equal(expected, returned) end - should "add required code to implementation prefix with return functions" do + should "add required code to implementation with return functions" do function = {:name => "Fungus", :args_string => "void", :return_type => "int"} expected = [" if (Mock.Fungus_IgnoreBool)\n", " {\n", @@ -70,14 +71,10 @@ class CMockGeneratorPluginIgnoreTest < Test::Unit::TestCase " }\n", " }\n" ].join - returned = @cmock_generator_plugin_ignore.mock_implementation_prefix(function) + returned = @cmock_generator_plugin_ignore.mock_implementation(function) assert_equal(expected, returned) end - should "have nothing new for mock implementation" do - assert(!@cmock_generator_plugin_ignore.respond_to?(:mock_implementation)) - end - should "add a new mock interface for ignoring when function had no return value" do function = {:name => "Slime", :args => [], :args_string => "void", :return_type => "void"} expected = ["\n",