Sha256: 55a535b38922349c1de9b4c48e3c70e3161da67477885c7702868e7d7966415e

Contents?: true

Size: 1.72 KB

Versions: 37

Compression:

Stored size: 1.72 KB

Contents

require File.join(File.expand_path(File.dirname(__FILE__)), '../../..', 'test_helper.rb')
require 'rbbt/workflow'
require 'rbbt/workflow/remote/client'

class TestWFRest
  extend Workflow

  input :name, :string, "Name to greet", "World"
  task :hi => :string do |name|
    "Hello #{name}"
  end

  dep :hi
  task :intro => :string do 
    step(:hi).load + ", nice to meet you"
  end
end

class TestRemote < Test::Unit::TestCase

  def test_ssh
    Log.severity = 0
    client = WorkflowRemoteClient.new "ssh://turbo:Translation", "Translation"
    job = client.job("translate", "SSH-TEST", :genes => ["TP53","KRAS"])
    assert_equal 2, job.run.select{|l| l =~ /ENSG/}.length
  end

  def test_rest
    Log.with_severity 0 do

      workflow_server(TestWFRest) do |client|
        assert_equal "Hello World", client.job(:hi, nil, {}).run.chomp
        assert_equal "Hello Miguel", client.job(:hi, nil, {:name => :Miguel}).run.chomp
        assert_equal "Hello Miguel, nice to meet you", client.job(:intro, nil, {:name => :Miguel}).run.chomp
      end

      workflow_server(TestWFRest, :Port => 1902) do |client|
        assert_equal "Hello World", client.job(:hi, nil, {}).run.chomp
        assert_equal "Hello Miguel", client.job(:hi, nil, {:name => :Miguel}).run.chomp
        assert_equal "Hello Miguel, nice to meet you", client.job(:intro, nil, {:name => :Miguel}).run.chomp
      end
    end
  end

  def test_rest_clean
    real_job = TestWFRest.job(:hi)
    real_job.run
    first_time = File.ctime(real_job.path)
    workflow_server(TestWFRest) do |client|
      assert File.ctime(real_job.path) == first_time
      assert_equal "Hello World", client.job(:hi, nil, {}).clean.run
      assert File.ctime(real_job.path) > first_time
    end
  end
end

Version data entries

37 entries across 37 versions & 1 rubygems

Version Path
rbbt-util-5.28.9 test/rbbt/workflow/remote/test_client.rb
rbbt-util-5.28.8 test/rbbt/workflow/remote/test_client.rb
rbbt-util-5.28.7 test/rbbt/workflow/remote/test_client.rb
rbbt-util-5.28.6 test/rbbt/workflow/remote/test_client.rb
rbbt-util-5.28.5 test/rbbt/workflow/remote/test_client.rb
rbbt-util-5.28.4 test/rbbt/workflow/remote/test_client.rb
rbbt-util-5.28.2 test/rbbt/workflow/remote/test_client.rb
rbbt-util-5.28.1 test/rbbt/workflow/remote/test_client.rb
rbbt-util-5.28.0 test/rbbt/workflow/remote/test_client.rb
rbbt-util-5.27.13 test/rbbt/workflow/remote/test_client.rb
rbbt-util-5.27.12 test/rbbt/workflow/remote/test_client.rb
rbbt-util-5.27.11 test/rbbt/workflow/remote/test_client.rb
rbbt-util-5.27.10 test/rbbt/workflow/remote/test_client.rb
rbbt-util-5.27.9 test/rbbt/workflow/remote/test_client.rb
rbbt-util-5.27.8 test/rbbt/workflow/remote/test_client.rb
rbbt-util-5.27.7 test/rbbt/workflow/remote/test_client.rb
rbbt-util-5.27.6 test/rbbt/workflow/remote/test_client.rb
rbbt-util-5.27.5 test/rbbt/workflow/remote/test_client.rb
rbbt-util-5.27.4 test/rbbt/workflow/remote/test_client.rb
rbbt-util-5.27.3 test/rbbt/workflow/remote/test_client.rb