source: EcnlProtoTool/trunk/mruby-1.2.0/mrbgems/mruby-test/init_mrbtest.c@ 270

Last change on this file since 270 was 270, checked in by coas-nagasima, 7 years ago

mruby版ECNLプロトタイピング・ツールを追加

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
  • Property svn:mime-type set to text/x-csrc
File size: 1009 bytes
Line 
1#include <stdlib.h>
2#include "mruby.h"
3#include "mruby/irep.h"
4#include "mruby/variable.h"
5
6extern const uint8_t mrbtest_assert_irep[];
7extern const uint8_t mrbtest_irep[];
8
9void mrbgemtest_init(mrb_state* mrb);
10void mrb_init_test_driver(mrb_state* mrb, mrb_bool verbose);
11void mrb_t_pass_result(mrb_state *mrb_dst, mrb_state *mrb_src);
12
13void
14mrb_init_mrbtest(mrb_state *mrb)
15{
16 mrb_state *core_test;
17
18 mrb_load_irep(mrb, mrbtest_assert_irep);
19
20 core_test = mrb_open_core(mrb_default_allocf, NULL);
21 if (core_test == NULL) {
22 fprintf(stderr, "Invalid mrb_state, exiting %s", __FUNCTION__);
23 exit(EXIT_FAILURE);
24 }
25 mrb_init_test_driver(core_test, mrb_test(mrb_gv_get(mrb, mrb_intern_lit(mrb, "$mrbtest_verbose"))));
26 mrb_load_irep(core_test, mrbtest_assert_irep);
27 mrb_load_irep(core_test, mrbtest_irep);
28 mrb_t_pass_result(mrb, core_test);
29
30#ifndef DISABLE_GEMS
31 mrbgemtest_init(mrb);
32#endif
33
34 if (mrb->exc) {
35 mrb_print_error(mrb);
36 exit(EXIT_FAILURE);
37 }
38 mrb_close(core_test);
39}
40
Note: See TracBrowser for help on using the repository browser.