Name: js-handler/tests/test.rb 
1:
#!/usr/bin/ruby
2:
require 'rubygems'
3:
require 'json'
4:
require 'riddl/client'
5:
gem 'minitest', '=4.7.4'
6:
require 'minitest/autorun'
7:
 
8:
class TestHelloWorld <  MiniTest::Unit::TestCase
9:
 
10:
  def setup
11:
    @dataelements = {
12:
      'bla' => 12,
13:
      'foo' => "rrrr",
14:
      'bar' => 1
15:
    }
16:
    @endpoints = {
17:
      'a' => 'xmpp://[email protected]',
18:
      'b' => 'xmpp://[email protected]/17'
19:
    }
20:
    @result = {
21:
      'res1' => '12',
22:
      'res2' => 27
23:
    }
24:
  end  
25:
 
26:
  def call(params)
27:
    client = Riddl::Client.new("http://localhost:9292",nil)
28:
    resource = client.resource('/')
29:
    status, res = resource.post params
30:
    if status == 200
31:
      id = res[0].value
32:
    else
33:
      puts status
34:
      return []
35:
    end
36:
 
37:
    resource = client.resource('/' + id)
38:
    status, res = resource.get
39:
    if status == 200
40:
      JSON.parse(res[0].value)
41:
    else
42:
      status
43:
    end
44:
  end  
45:
 
46:
  def test1
47:
    res = call [
48:
      Riddl::Parameter::Simple.new("dataelements", JSON::generate(@dataelements)),
49:
      Riddl::Parameter::Simple.new("endpoints", JSON::generate(@endpoints)),
50:
      Riddl::Parameter::Simple.new("resultname", "struct2"),
51:
      Riddl::Parameter::Simple.new("resultvalue", JSON::generate(@result)),
52:
      Riddl::Parameter::Simple.new("code", <<-end
53:
          data.bla = struct2.res2;
54:
        end
55:
      )
56:
    ]
57:
    p res
58:
    assert res['status'] == 27
59:
    assert res['dataelements']['bla'] == 27
60:
  end  
61:
 
62:
  #def test2
63:
  #  res = call [
64:
  #    Riddl::Parameter::Simple.new("dataelements", JSON::generate(@dataelements)),
65:
  #    Riddl::Parameter::Simple.new("endpoints", JSON::generate(@endpoints)),
66:
  #    Riddl::Parameter::Simple.new("resultname", "struct2"),
67:
  #    Riddl::Parameter::Simple.new("resultvalue", JSON::generate(@result)),
68:
  #    Riddl::Parameter::Simple.new("code", "data.bla == '12'")
69:
  #  ]
70:
  #  assert res['status'] == true
71:
  #  assert res['dataelements']['bla'] == 12
72:
  #end  
73:
 
74:
  #def test3  
75:
  #  res = call [
76:
  #    Riddl::Parameter::Simple.new("dataelements", JSON::generate(@dataelements)),
77:
  #    Riddl::Parameter::Simple.new("endpoints", JSON::generate(@endpoints)),
78:
  #    Riddl::Parameter::Simple.new("resultname", "struct2"),
79:
  #    Riddl::Parameter::Simple.new("resultvalue", JSON::generate(@result)),
80:
  #    Riddl::Parameter::Simple.new("code", "data.bla == '13'")
81:
  #  ]
82:
  #  assert res['status'] == false
83:
  #  assert res['dataelements']['bla'] == 12
84:
  #end  
85:
 
86:
  #def test4
87:
  #  res = call [
88:
  #    Riddl::Parameter::Simple.new("dataelements", JSON::generate(@dataelements)),
89:
  #    Riddl::Parameter::Simple.new("endpoints", JSON::generate(@endpoints)),
90:
  #    Riddl::Parameter::Simple.new("resultname", "struct2"),
91:
  #    Riddl::Parameter::Simple.new("resultvalue", JSON::generate(@result)),
92:
  #    Riddl::Parameter::Simple.new("callback", "http://localhost:9293"),
93:
  #    Riddl::Parameter::Simple.new("code", "data.bla == '13'")
94:
  #  ]
95:
  #end  
96:
end