Sha256: 736b457c1ef008e3e80302a2edb317fbbfda260b445fcb85ab596a7cd5eb1c42

Contents?: true

Size: 1.68 KB

Versions: 3

Compression:

Stored size: 1.68 KB

Contents

# Code Generated by ZenTest v. 3.11.1

require 'test/unit' unless defined? $ZENTEST and $ZENTEST

$:.unshift File.dirname(__FILE__) + "/../lib" 
require 'relisp'

EMACS = Relisp::ElispSlave.new unless defined? EMACS

module TestRelisp
  class TestElispSlave < Test::Unit::TestCase
    def setup
      @emacs = EMACS
    end

    def test_debugging
      @emacs.debugging
      assert @emacs.debug
      @emacs.debugging
      assert ! @emacs.debug      
    end

    def test_do
      assert_equal 3, @emacs.do("(+ 1 2)")
    end
  end
end

# module TestRelisp
#   class TestRubySlave < Test::Unit::TestCase
#   end
# end

module TestRelisp
  class TestSlave < Test::Unit::TestCase
    def setup
      @emacs = EMACS
    end

    def test_elisp_eval
      # this is really tested in plenty of other places
      assert_equal 3, @emacs.elisp_eval("(+ 1 2)")
    end

    def test_elisp_exec
      @emacs.elisp_exec("(setq blah 17)")
      assert_equal 17, @emacs.elisp_eval(:blah)
      assert_raise Relisp::ElispError do 
        puts @emacs.elisp_exec("(relisp-nonsense-function 2)")
      end

    end

    def test_get_permanent_variable
      @emacs.elisp_eval("(setq foo 3)")
      new_foo = @emacs.get_permanent_variable :foo
      assert_equal @emacs.elisp_eval(new_foo), 3
    end

    def test_new_elisp_variable
      vars = Array.new
      size = 1000
      size.times do 
        vars << @emacs.new_elisp_variable
      end
      assert_equal size, vars.uniq.size
    end

    def test_provide
      test_array = [1, 2, 4]
      @emacs.provide(:test_array, binding)
      assert_equal test_array, @emacs.test_array
      test_array.pop
      assert_equal test_array, @emacs.test_array
    end

  end
end


Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
relisp-1.0.1 test/test_slaves.rb
relisp-1.0.0 test/test_slaves.rb
relisp-0.9.2 test/test_slaves.rb