Lines Matching refs:output

91     File.open(output_file, 'w') do |output|
92 create_header(output, used_mocks, testfile_includes)
93 create_externs(output, tests, used_mocks)
94 create_mock_management(output, used_mocks)
95 create_setup(output)
96 create_teardown(output)
97 create_suite_setup(output)
98 create_suite_teardown(output)
99 create_reset(output)
100 create_run_test(output) unless tests.empty?
101 create_args_wrappers(output, tests)
102 create_main(output, input_file, tests, used_mocks)
107 File.open(@options[:header_file], 'w') do |output|
108 create_h_file(output, @options[:header_file], tests, testfile_includes, used_mocks)
234 def create_header(output, mocks, testfile_includes = []) argument
235 output.puts('/* AUTOGENERATED FILE. DO NOT EDIT. */')
236 output.puts("\n/*=======Automagically Detected Files To Include=====*/")
237 output.puts('extern "C" {') if @options[:externcincludes]
238 output.puts("#include \"#{@options[:framework]}.h\"")
239 output.puts('#include "cmock.h"') unless mocks.empty?
240 output.puts('}') if @options[:externcincludes]
242 output.puts("/* injected defines for unity settings, etc */")
245 output.puts("#ifndef #{def_only}\n#define #{d}\n#endif /* #{def_only} */")
249 output.puts("#include \"#{File.basename(@options[:header_file])}\"")
252 output.puts("#include #{inc.include?('<') ? inc : "\"#{inc}\""}")
255 output.puts("#include #{inc.include?('<') ? inc : "\"#{inc}\""}")
258 output.puts('extern "C" {') if @options[:externcincludes]
260 output.puts("#include \"#{mock}\"")
262 output.puts('}') if @options[:externcincludes]
263 output.puts('#include "CException.h"') if @options[:plugins].include?(:cexception)
267 output.puts('')
268 output.puts('int GlobalExpectCount;')
269 output.puts('int GlobalVerifyOrder;')
270 output.puts('char* GlobalOrderError;')
273 def create_externs(output, tests, _mocks) argument
274 output.puts("\n/*=======External Functions This Runner Calls=====*/")
275 output.puts("extern void #{@options[:setup_name]}(void);")
276 output.puts("extern void #{@options[:teardown_name]}(void);")
277 output.puts("\n#ifdef __cplusplus\nextern \"C\"\n{\n#endif") if @options[:externc]
279 output.puts("extern void #{test[:test]}(#{test[:call] || 'void'});")
281 output.puts("#ifdef __cplusplus\n}\n#endif") if @options[:externc]
282 output.puts('')
285 def create_mock_management(output, mock_headers) argument
286 output.puts("\n/*=======Mock Management=====*/")
287 output.puts('static void CMock_Init(void)')
288 output.puts('{')
291 output.puts(' GlobalExpectCount = 0;')
292 output.puts(' GlobalVerifyOrder = 0;')
293 output.puts(' GlobalOrderError = NULL;')
299 output.puts(" #{mock_clean}_Init();")
301 output.puts("}\n")
303 output.puts('static void CMock_Verify(void)')
304 output.puts('{')
307 output.puts(" #{mock_clean}_Verify();")
309 output.puts("}\n")
311 output.puts('static void CMock_Destroy(void)')
312 output.puts('{')
315 output.puts(" #{mock_clean}_Destroy();")
317 output.puts("}\n")
320 def create_setup(output) argument
323 output.puts("\n/*=======Setup (stub)=====*/")
324 output.puts("void #{@options[:setup_name]}(void) {}")
327 def create_teardown(output) argument
330 output.puts("\n/*=======Teardown (stub)=====*/")
331 output.puts("void #{@options[:teardown_name]}(void) {}")
334 def create_suite_setup(output) argument
337 output.puts("\n/*=======Suite Setup=====*/")
338 output.puts('void suiteSetUp(void)')
339 output.puts('{')
340 output.puts(@options[:suite_setup])
341 output.puts('}')
344 def create_suite_teardown(output) argument
347 output.puts("\n/*=======Suite Teardown=====*/")
348 output.puts('int suiteTearDown(int num_failures)')
349 output.puts('{')
350 output.puts(@options[:suite_teardown])
351 output.puts('}')
354 def create_reset(output) argument
355 output.puts("\n/*=======Test Reset Options=====*/")
356 output.puts("void #{@options[:test_reset_name]}(void);")
357 output.puts("void #{@options[:test_reset_name]}(void)")
358 output.puts('{')
359 output.puts(" #{@options[:teardown_name]}();")
360 output.puts(' CMock_Verify();')
361 output.puts(' CMock_Destroy();')
362 output.puts(' CMock_Init();')
363 output.puts(" #{@options[:setup_name]}();")
364 output.puts('}')
365 output.puts("void #{@options[:test_verify_name]}(void);")
366 output.puts("void #{@options[:test_verify_name]}(void)")
367 output.puts('{')
368 output.puts(' CMock_Verify();')
369 output.puts('}')
372 def create_run_test(output) argument
376 output.puts("\n#{template.result(binding)}")
379 def create_args_wrappers(output, tests) argument
382 output.puts("\n/*=======Parameterized Test Wrappers=====*/")
387 output.puts("static void runner_args#{idx}_#{test[:test]}(void)")
388 output.puts('{')
389 output.puts(" #{test[:test]}(#{args});")
390 output.puts("}\n")
395 def create_main(output, filename, tests, used_mocks) argument
396 output.puts("\n/*=======MAIN=====*/")
400 output.puts("#{@options[:main_export_decl]} int #{main_name}(int argc, char** argv);")
402 output.puts("#{@options[:main_export_decl]} int #{main_name}(int argc, char** argv)")
403 output.puts('{')
404 output.puts(' int parse_status = UnityParseOptions(argc, argv);')
405 output.puts(' if (parse_status != 0)')
406 output.puts(' {')
407 output.puts(' if (parse_status < 0)')
408 output.puts(' {')
409 output.puts(" UnityPrint(\"#{filename.gsub('.c', '').gsub(/\\/, '\\\\\\')}.\");")
410 output.puts(' UNITY_PRINT_EOL();')
413 output.puts(" UnityPrint(\" #{test[:test]}\");")
414 output.puts(' UNITY_PRINT_EOL();')
417 output.puts(" UnityPrint(\" #{test[:test]}(#{args})\");")
418 output.puts(' UNITY_PRINT_EOL();')
422 output.puts(' return 0;')
423 output.puts(' }')
424 output.puts(' return parse_status;')
425 output.puts(' }')
429 output.puts("#{@options[:main_export_decl]} #{main_return} #{main_name}(void);")
431 output.puts("#{main_return} #{main_name}(void)")
432 output.puts('{')
434 output.puts(' suiteSetUp();') if @options[:has_suite_setup]
436 output.puts(" UnitySetTestFile(\"#{filename.gsub(/\\/, '\\\\\\')}\");")
438 output.puts(" UnityBegin(\"#{filename.gsub(/\\/, '\\\\\\')}\");")
442 output.puts(" run_test(#{test[:test]}, \"#{test[:test]}\", #{test[:line_number]});")
447 output.puts(" run_test(#{wrapper}, #{testname}, #{test[:line_number]});")
451 output.puts
452 output.puts(' CMock_Guts_MemFreeFinal();') unless used_mocks.empty?
455 output.puts(' (void) suite_teardown(0);')
457 output.puts(' return suiteTearDown(UnityEnd());')
460 output.puts(' return UnityEnd();') unless @options[:omit_begin_end]
462 output.puts('}')
465 def create_h_file(output, filename, tests, testfile_includes, used_mocks) argument
467 output.puts('/* AUTOGENERATED FILE. DO NOT EDIT. */')
468 output.puts("#ifndef _#{filename}")
469 output.puts("#define _#{filename}\n\n")
470 output.puts("#include \"#{@options[:framework]}.h\"")
471 output.puts('#include "cmock.h"') unless used_mocks.empty?
473 output.puts("#include #{inc.include?('<') ? inc : "\"#{inc}\""}")
476 output.puts("#include #{inc.include?('<') ? inc : "\"#{inc}\""}")
478 output.puts "\n"
481 output.puts("void #{test[:test]}(void);")
483 output.puts("void #{test[:test]}(#{test[:params]});")
486 output.puts("#endif\n\n")