test/custom_code_test.rb in rbplusplus-0.9.1 vs test/custom_code_test.rb in rbplusplus-1.0

- old
+ new

@@ -1,53 +1,46 @@ require 'test_helper' -context "Extension with wrapped classes" do +describe "Extension with wrapped classes" do - def setup - if !defined?(@@adder_built) - super - @@adder_built = true - Extension.new "adder" do |e| - e.sources full_dir("headers/Adder.h"), - :include_source_files => [ - full_dir("headers/Adder.h"), - full_dir("headers/Adder.cpp") - ] - node = e.namespace "classes" - adder = node.classes("Adder") + before(:all) do + Extension.new "adder" do |e| + e.sources full_dir("headers/Adder.h"), + :include_source_files => [ + full_dir("headers/Adder.h"), + full_dir("headers/Adder.cpp") + ] + node = e.namespace "classes" + adder = node.classes("Adder") - adder.use_constructor( adder.constructors.find(:arguments => [])) - adder.disable_typedef_lookup + adder.use_constructor( adder.constructors.find(:arguments => [])) + adder.disable_typedef_lookup - decl = <<-END + decl = <<-END int subtractIntegers(classes::Adder* self, int a, int b) { - return a - b; +return a - b; } int multiplyIntegers(classes::Adder* self, int a, int b) { - return a * b; +return a * b; } - END + END - wrapping = <<-END + wrapping = <<-END <class>.define_method(\"sub_ints\", &subtractIntegers); <class>.define_method(\"mult_ints\", &multiplyIntegers); END - adder.add_custom_code( decl, wrapping ) - end - - require 'adder' + adder.add_custom_code( decl, wrapping ) end + + require 'adder' end specify "Adder has new custom methods" do a = Adder.new - a.should.respond_to(:sub_ints) - a.should.respond_to(:mult_ints) - - a.sub_ints(5, 4).should.equal 1 - a.mult_ints(5, 4).should.equal 20 + a.sub_ints(5, 4).should == 1 + a.mult_ints(5, 4).should == 20 end end