diff options
Diffstat (limited to 'spec')
| -rw-r--r-- | spec/handlers/c/header/function_handler_spec.rb | 22 | ||||
| -rw-r--r-- | spec/handlers/c/header/spec_helper.rb (renamed from spec/handlers/header/spec_helper.rb) | 0 | ||||
| -rw-r--r-- | spec/handlers/c/source/class_handler_spec.rb (renamed from spec/handlers/c/class_handler_spec.rb) | 2 | ||||
| -rw-r--r-- | spec/handlers/c/source/method_handler_spec.rb (renamed from spec/handlers/c/method_handler_spec.rb) | 2 | ||||
| -rw-r--r-- | spec/handlers/c/source/module_handler_spec.rb (renamed from spec/handlers/c/module_handler_spec.rb) | 2 | ||||
| -rw-r--r-- | spec/handlers/c/source/spec_helper.rb | 13 | ||||
| -rw-r--r-- | spec/handlers/c/spec_helper.rb | 12 | ||||
| -rw-r--r-- | spec/handlers/header/function_handler_spec.rb | 12 |
8 files changed, 38 insertions, 27 deletions
diff --git a/spec/handlers/c/header/function_handler_spec.rb b/spec/handlers/c/header/function_handler_spec.rb new file mode 100644 index 0000000..2270584 --- /dev/null +++ b/spec/handlers/c/header/function_handler_spec.rb @@ -0,0 +1,22 @@ +require_relative 'spec_helper' + +describe YARD::MRuby::Handlers::C::Header::FunctionHandler do + it "should register functions" do + header_line <<-eof + MRB_API void mrb_foo( void ); + eof + expect(Registry.at('mrb_foo')).not_to be_nil + + # puts Registry.send(:thread_local_store).inspect + end + + it "should find docstrings attached to functions" do + header_line <<-eof + /* DOCSTRING */ + MRB_API void mrb_foo( void ); + eof + + foo = Registry.at('mrb_foo') + expect(foo.docstring).to eq 'DOCSTRING' + end +end diff --git a/spec/handlers/header/spec_helper.rb b/spec/handlers/c/header/spec_helper.rb index da2b74f..da2b74f 100644 --- a/spec/handlers/header/spec_helper.rb +++ b/spec/handlers/c/header/spec_helper.rb diff --git a/spec/handlers/c/class_handler_spec.rb b/spec/handlers/c/source/class_handler_spec.rb index 9428dd6..bfac3b6 100644 --- a/spec/handlers/c/class_handler_spec.rb +++ b/spec/handlers/c/source/class_handler_spec.rb @@ -1,6 +1,6 @@ require_relative 'spec_helper' -describe YARD::MRuby::Handlers::C::ClassHandler do +describe YARD::MRuby::Handlers::C::Source::ClassHandler do it "should register classes" do parse_init 'cFoo = mrb_define_class(mrb, "Foo", mrb->object_class);' diff --git a/spec/handlers/c/method_handler_spec.rb b/spec/handlers/c/source/method_handler_spec.rb index 31e297d..713e390 100644 --- a/spec/handlers/c/method_handler_spec.rb +++ b/spec/handlers/c/source/method_handler_spec.rb @@ -1,6 +1,6 @@ require_relative 'spec_helper' -describe YARD::MRuby::Handlers::C::MethodHandler do +describe YARD::MRuby::Handlers::C::Source::MethodHandler do it "should register methods" do parse_init <<-eof mFoo = mrb_define_module(mrb, "Foo"); diff --git a/spec/handlers/c/module_handler_spec.rb b/spec/handlers/c/source/module_handler_spec.rb index aedf1a5..fd08ae6 100644 --- a/spec/handlers/c/module_handler_spec.rb +++ b/spec/handlers/c/source/module_handler_spec.rb @@ -1,6 +1,6 @@ require_relative 'spec_helper' -describe YARD::MRuby::Handlers::C::ModuleHandler do +describe YARD::MRuby::Handlers::C::Source::ModuleHandler do it "should register modules" do parse_init 'mFoo = mrb_define_module(mrb, "Foo");' expect(Registry.at('Foo').type).to be :module diff --git a/spec/handlers/c/source/spec_helper.rb b/spec/handlers/c/source/spec_helper.rb new file mode 100644 index 0000000..76844a4 --- /dev/null +++ b/spec/handlers/c/source/spec_helper.rb @@ -0,0 +1,13 @@ +require_relative '../spec_helper' + +def parse(src, file = '(stdin)') + YARD::Registry.clear + parser = YARD::Parser::SourceParser.new(:source) + parser.file = file + parser.parse(StringIO.new(src)) +end + +def parse_init(src) + YARD::Registry.clear + YARD.parse_string("void mrb_foo_gem_init(mrb_state *mrb) {\n#{src}\n}", :source) +end diff --git a/spec/handlers/c/spec_helper.rb b/spec/handlers/c/spec_helper.rb index 9424e3e..935238d 100644 --- a/spec/handlers/c/spec_helper.rb +++ b/spec/handlers/c/spec_helper.rb @@ -1,13 +1 @@ require_relative '../spec_helper' - -def parse(src, file = '(stdin)') - YARD::Registry.clear - parser = YARD::Parser::SourceParser.new(:c) - parser.file = file - parser.parse(StringIO.new(src)) -end - -def parse_init(src) - YARD::Registry.clear - YARD.parse_string("void mrb_foo_gem_init(mrb_state *mrb) {\n#{src}\n}", :c) -end diff --git a/spec/handlers/header/function_handler_spec.rb b/spec/handlers/header/function_handler_spec.rb deleted file mode 100644 index b97abb6..0000000 --- a/spec/handlers/header/function_handler_spec.rb +++ /dev/null @@ -1,12 +0,0 @@ -require_relative 'spec_helper' - -describe YARD::MRuby::Handlers::Header::FunctionHandler do - it "should register functions" do - header_line <<-eof - MRB_API void mrb_foo( void ); - eof - expect(Registry.at('mrb_foo')).not_to be_nil - - # puts Registry.send(:thread_local_store).inspect - end -end |
