diff --git a/ext/symengine/symengine.c b/ext/symengine/symengine.c index e8a15c7..11e4052 100644 --- a/ext/symengine/symengine.c +++ b/ext/symengine/symengine.c @@ -1,3 +1,4 @@ +#include #include "ruby_basic.h" #include "ruby_symbol.h" #include "ruby_integer.h" @@ -9,8 +10,16 @@ // Ruby Bindings // /////////////////// +VALUE msymengine_ascii_art(VALUE self) { + char* str = ascii_art_str(); + VALUE ascii_art = rb_str_new_cstr(str); + basic_str_free(str); + return ascii_art; +} + void Init_symengine() { m_symengine = rb_define_module("SymEngine"); + rb_define_singleton_method(m_symengine, "ascii_art", msymengine_ascii_art, 0); //Basic class c_basic = rb_define_class_under(m_symengine, "Basic", rb_cObject); diff --git a/lib/symengine.rb b/lib/symengine.rb index bca2f54..2a4b332 100644 --- a/lib/symengine.rb +++ b/lib/symengine.rb @@ -1,14 +1,3 @@ require 'symengine/symengine' require 'symengine/iruby' require 'symengine/basic' - -module SymEngine - def SymEngine.ascii_art - puts " - _____ _____ _ -| __|_ _ _____| __|___ ___|_|___ ___ -|__ | | | | __| | . | | | -_| -|_____|_ |_|_|_|_____|_|_|_ |_|_|_|___| - |___| |___| " - end -end diff --git a/spec/symengine_spec.rb b/spec/symengine_spec.rb new file mode 100644 index 0000000..51ee3b3 --- /dev/null +++ b/spec/symengine_spec.rb @@ -0,0 +1,9 @@ +require 'spec_helper' + +describe SymEngine do + describe 'ascii_art' do + it 'should return a non-zero length string' do + assert SymEngine.ascii_art.length > 0 + end + end +end diff --git a/symengine_version.txt b/symengine_version.txt index 5cb840d..93a398a 100644 --- a/symengine_version.txt +++ b/symengine_version.txt @@ -1 +1 @@ -f6f1c89bde0d12ba718a9aeddcdf630f36893756 +668cf3a16f7c3a162727a8ffd6776e84dca78a41