ideone-ruby-api 1.3.5 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 001863875eed57b773be63c9ae772bf42d80c791
4
+ data.tar.gz: 530757e8307000be2aa9b2616efe98c26b397705
5
+ SHA512:
6
+ metadata.gz: aa32c8b38d83f5e3c07b3d45caeae5523e29a83b55896aff9e0e9a320d7809d1c97c6f0a11763a59e72edad81bb91ccb50370aa9f457b1baedd01129b3bb1d66
7
+ data.tar.gz: 0e48ce9bd2a067f7873a7e6d5be8b5bef087a99f0c387d8175cedbe3455fea721f3b6ce35dfb49c413f987637a57ccbdc16198fd90625fa331c0c2f04dff3737
@@ -0,0 +1,5 @@
1
+ language: ruby
2
+ rvm:
3
+ - 1.8.7
4
+ - 1.9.2
5
+ - 1.9.3
data/Gemfile CHANGED
@@ -2,13 +2,11 @@ source "http://rubygems.org"
2
2
  # Add dependencies required to use your gem here.
3
3
  # Example:
4
4
  # gem "activesupport", ">= 2.3.5"
5
- gem 'savon'
5
+ gem "savon", "~> 2.3.3"
6
6
 
7
7
  # Add dependencies to develop your gem here.
8
8
  # Include everything needed to run rake, tests, features, etc.
9
9
  group :development do
10
- gem "bundler", "~> 1.0.0"
11
- gem "jeweler", "~> 1.6.4"
12
- gem "rcov", ">= 0"
10
+ gem "jeweler", "~> 2.0.1"
13
11
  gem "test-unit", "~> 2.3"
14
12
  end
@@ -1,5 +1,7 @@
1
1
  = ideone-ruby-api
2
2
 
3
+ {<img src="https://secure.travis-ci.org/kennym/ideone-ruby-api.png" />}[http://travis-ci.org/kennym/ideone-ruby-api]
4
+
3
5
  Ideone is a pastebin, as well as an online compiler and debugger. This
4
6
  project is a Ruby binding to the Ideone API.
5
7
 
@@ -70,6 +72,6 @@ Then, you can run `rake test`
70
72
 
71
73
  == Copyright
72
74
 
73
- Copyright (c) 2011 Kenny Meyer. See LICENSE.txt for
75
+ Copyright (c) 2011-2014 Kenny Meyer. See LICENSE.txt for
74
76
  further details.
75
77
 
data/Rakefile CHANGED
@@ -12,14 +12,16 @@ end
12
12
  require 'rake'
13
13
 
14
14
  require 'jeweler'
15
+ require './lib/ideone/version.rb'
15
16
  Jeweler::Tasks.new do |gem|
16
17
  # gem is a Gem::Specification... see http://docs.rubygems.org/read/chapter/20 for more options
18
+ gem.version = Ideone::Version::STRING
17
19
  gem.name = "ideone-ruby-api"
18
20
  gem.homepage = "http://github.com/kennym/ideone-ruby-api"
19
21
  gem.license = "MIT"
20
22
  gem.summary = "Ruby binding for Ideone API"
21
23
  gem.description = "A better Ruby binding for the Ideone API "
22
- gem.email = "knny.myer@gmail.com"
24
+ gem.email = "kenny@kennymeyer.net"
23
25
  gem.authors = ["Kenny Meyer"]
24
26
  # dependencies defined in Gemfile
25
27
  end
@@ -32,17 +34,9 @@ Rake::TestTask.new(:test) do |test|
32
34
  test.verbose = true
33
35
  end
34
36
 
35
- require 'rcov/rcovtask'
36
- Rcov::RcovTask.new do |test|
37
- test.libs << 'test'
38
- test.pattern = 'test/**/test_*.rb'
39
- test.verbose = true
40
- test.rcov_opts << '--exclude "gems/*"'
41
- end
42
-
43
37
  task :default => :test
44
38
 
45
- require 'rake/rdoctask'
39
+ require 'rdoc/task'
46
40
  Rake::RDocTask.new do |rdoc|
47
41
  version = File.exist?('VERSION') ? File.read('VERSION') : ""
48
42
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.3.5
1
+ 2.0.0
@@ -4,20 +4,21 @@
4
4
  # -*- encoding: utf-8 -*-
5
5
 
6
6
  Gem::Specification.new do |s|
7
- s.name = %q{ideone-ruby-api}
8
- s.version = "1.3.5"
7
+ s.name = "ideone-ruby-api"
8
+ s.version = "2.0.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Kenny Meyer"]
12
- s.date = %q{2011-08-12}
13
- s.description = %q{A better Ruby binding for the Ideone API }
14
- s.email = %q{knny.myer@gmail.com}
12
+ s.date = "2014-02-20"
13
+ s.description = "A better Ruby binding for the Ideone API "
14
+ s.email = "kenny@kennymeyer.net"
15
15
  s.extra_rdoc_files = [
16
16
  "LICENSE.txt",
17
17
  "README.rdoc"
18
18
  ]
19
19
  s.files = [
20
20
  ".document",
21
+ ".travis.yml",
21
22
  "Gemfile",
22
23
  "LICENSE.txt",
23
24
  "README.rdoc",
@@ -25,36 +26,31 @@ Gem::Specification.new do |s|
25
26
  "VERSION",
26
27
  "ideone-ruby-api.gemspec",
27
28
  "lib/ideone.rb",
29
+ "lib/ideone/version.rb",
28
30
  "test/helper.rb",
29
31
  "test/test_ideone-ruby-api.rb"
30
32
  ]
31
- s.homepage = %q{http://github.com/kennym/ideone-ruby-api}
33
+ s.homepage = "http://github.com/kennym/ideone-ruby-api"
32
34
  s.licenses = ["MIT"]
33
35
  s.require_paths = ["lib"]
34
- s.rubygems_version = %q{1.6.2}
35
- s.summary = %q{Ruby binding for Ideone API}
36
+ s.rubygems_version = "2.0.6"
37
+ s.summary = "Ruby binding for Ideone API"
36
38
 
37
39
  if s.respond_to? :specification_version then
38
- s.specification_version = 3
40
+ s.specification_version = 4
39
41
 
40
42
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
41
- s.add_runtime_dependency(%q<savon>, [">= 0"])
42
- s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
43
- s.add_development_dependency(%q<jeweler>, ["~> 1.6.4"])
44
- s.add_development_dependency(%q<rcov>, [">= 0"])
43
+ s.add_runtime_dependency(%q<savon>, ["~> 2.3.3"])
44
+ s.add_development_dependency(%q<jeweler>, ["~> 2.0.1"])
45
45
  s.add_development_dependency(%q<test-unit>, ["~> 2.3"])
46
46
  else
47
- s.add_dependency(%q<savon>, [">= 0"])
48
- s.add_dependency(%q<bundler>, ["~> 1.0.0"])
49
- s.add_dependency(%q<jeweler>, ["~> 1.6.4"])
50
- s.add_dependency(%q<rcov>, [">= 0"])
47
+ s.add_dependency(%q<savon>, ["~> 2.3.3"])
48
+ s.add_dependency(%q<jeweler>, ["~> 2.0.1"])
51
49
  s.add_dependency(%q<test-unit>, ["~> 2.3"])
52
50
  end
53
51
  else
54
- s.add_dependency(%q<savon>, [">= 0"])
55
- s.add_dependency(%q<bundler>, ["~> 1.0.0"])
56
- s.add_dependency(%q<jeweler>, ["~> 1.6.4"])
57
- s.add_dependency(%q<rcov>, [">= 0"])
52
+ s.add_dependency(%q<savon>, ["~> 2.3.3"])
53
+ s.add_dependency(%q<jeweler>, ["~> 2.0.1"])
58
54
  s.add_dependency(%q<test-unit>, ["~> 2.3"])
59
55
  end
60
56
  end
@@ -14,12 +14,9 @@ class Ideone
14
14
  @username = username
15
15
  @password = password
16
16
 
17
- @client = Savon::Client.new do
18
- wsdl.document = "http://ideone.com/api/1/service.wsdl"
19
- end
17
+ @client = Savon.client(wsdl: "http://ideone.com/api/1/service.wsdl")
20
18
 
21
19
  HTTPI.log = false
22
- disable_savon_logging()
23
20
 
24
21
  @request_body = {
25
22
  :user => @username,
@@ -36,7 +33,7 @@ class Ideone
36
33
  request_body[:input] = std_input
37
34
  request_body[:run] = run
38
35
  request_body[:private] = is_private
39
- response = @client.request :createSubmission, :body => @request_body
36
+ response = @client.call(:create_submission, :message => @request_body)
40
37
 
41
38
  check_error(response, :create_submission_response)
42
39
  return response.to_hash[:create_submission_response][:return][:item][1][:value]
@@ -45,7 +42,7 @@ class Ideone
45
42
  def submission_status(link)
46
43
  request_body = @request_body
47
44
  request_body[:link] = link
48
- response = @client.request :getSubmissionStatus, :body => request_body
45
+ response = @client.call(:get_submission_status, :message => request_body)
49
46
 
50
47
  check_error(response, :get_submission_status_response)
51
48
 
@@ -73,7 +70,7 @@ class Ideone
73
70
  request_body[:withStderr] = with_stderr
74
71
  request_body[:withCmpinfo] = with_cmpinfo
75
72
 
76
- response = @client.request :getSubmissionDetails, :body => request_body
73
+ response = @client.call(:get_submission_details, :message => request_body)
77
74
 
78
75
  check_error(response, :get_submission_details_response)
79
76
 
@@ -85,7 +82,7 @@ class Ideone
85
82
  # Get a list of supported languages and cache it.
86
83
  def languages
87
84
  unless @languages_cache
88
- response = @client.request :getLanguages, :body => @request_body
85
+ response = @client.call(:get_languages, :message => @request_body)
89
86
 
90
87
  check_error(response, :get_languages_response)
91
88
 
@@ -98,7 +95,7 @@ class Ideone
98
95
 
99
96
  # A test function that always returns the same thing.
100
97
  def test
101
- response = @client.request :testFunction, :body => @request_body
98
+ response = @client.call(:test_function, :message => @request_body)
102
99
 
103
100
  check_error(response, :test_function_response)
104
101
 
@@ -108,12 +105,6 @@ class Ideone
108
105
 
109
106
  private
110
107
 
111
- def disable_savon_logging
112
- Savon.configure do |config|
113
- config.log = false
114
- end
115
- end
116
-
117
108
  def check_error(response, function_response)
118
109
  error = get_error(response.to_hash, function_response)
119
110
  if error != 'OK'
@@ -135,13 +126,11 @@ class Ideone
135
126
  items.each do |item|
136
127
  key = item[:key]
137
128
  value = item[:value]
138
- if value == {:"@xsi:type"=>"xsd:string"}
139
- value = ""
140
- end
129
+ value = "" if value == {:"@xsi:type"=>"xsd:string"}
141
130
  dict[key] = value
142
131
  end
143
132
 
144
- dict
133
+ dict
145
134
  end
146
135
 
147
136
  end
@@ -0,0 +1,9 @@
1
+ class Ideone
2
+ module Version
3
+ MAJOR = 2
4
+ MINOR = 0
5
+ PATCH = 0
6
+
7
+ STRING = [MAJOR, MINOR, PATCH].compact.join('.')
8
+ end
9
+ end
@@ -1,7 +1,7 @@
1
1
  require 'helper'
2
2
 
3
- USER = '' # YOUR IDEONE USER
4
- PASS = '' # YOUR IDEONE PASSWORD
3
+ USER = 'humpydumpy' # YOUR IDEONE USER
4
+ PASS = 'testing' # YOUR IDEONE PASSWORD
5
5
 
6
6
  class TestIdeoneRubyApi < Test::Unit::TestCase
7
7
  def test_initialize
@@ -59,7 +59,7 @@ puts "This is a test submission created from ideone-ruby-api. https://github.com
59
59
 
60
60
  instance = Ideone.new(USER, PASS)
61
61
 
62
- result = instance.submission_status("nDRJO")
62
+ result = instance.submission_status("PD2kqM")
63
63
 
64
64
  assert_not_nil result
65
65
  assert_not_nil result[:status]
@@ -71,7 +71,7 @@ puts "This is a test submission created from ideone-ruby-api. https://github.com
71
71
 
72
72
  instance = Ideone.new(USER, PASS)
73
73
 
74
- result = instance.submission_details("nDRJO")
74
+ result = instance.submission_details("PD2kqM")
75
75
 
76
76
  assert result.count == 16
77
77
  assert_not_nil result
metadata CHANGED
@@ -1,74 +1,59 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ideone-ruby-api
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.5
5
- prerelease:
4
+ version: 2.0.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Kenny Meyer
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2011-08-12 00:00:00.000000000 -04:00
13
- default_executable:
11
+ date: 2014-02-20 00:00:00.000000000 Z
14
12
  dependencies:
15
13
  - !ruby/object:Gem::Dependency
16
14
  name: savon
17
- requirement: &12809300 !ruby/object:Gem::Requirement
18
- none: false
15
+ requirement: !ruby/object:Gem::Requirement
19
16
  requirements:
20
- - - ! '>='
17
+ - - ~>
21
18
  - !ruby/object:Gem::Version
22
- version: '0'
19
+ version: 2.3.3
23
20
  type: :runtime
24
21
  prerelease: false
25
- version_requirements: *12809300
26
- - !ruby/object:Gem::Dependency
27
- name: bundler
28
- requirement: &12808540 !ruby/object:Gem::Requirement
29
- none: false
22
+ version_requirements: !ruby/object:Gem::Requirement
30
23
  requirements:
31
24
  - - ~>
32
25
  - !ruby/object:Gem::Version
33
- version: 1.0.0
34
- type: :development
35
- prerelease: false
36
- version_requirements: *12808540
26
+ version: 2.3.3
37
27
  - !ruby/object:Gem::Dependency
38
28
  name: jeweler
39
- requirement: &12807820 !ruby/object:Gem::Requirement
40
- none: false
29
+ requirement: !ruby/object:Gem::Requirement
41
30
  requirements:
42
31
  - - ~>
43
32
  - !ruby/object:Gem::Version
44
- version: 1.6.4
33
+ version: 2.0.1
45
34
  type: :development
46
35
  prerelease: false
47
- version_requirements: *12807820
48
- - !ruby/object:Gem::Dependency
49
- name: rcov
50
- requirement: &12806860 !ruby/object:Gem::Requirement
51
- none: false
36
+ version_requirements: !ruby/object:Gem::Requirement
52
37
  requirements:
53
- - - ! '>='
38
+ - - ~>
54
39
  - !ruby/object:Gem::Version
55
- version: '0'
56
- type: :development
57
- prerelease: false
58
- version_requirements: *12806860
40
+ version: 2.0.1
59
41
  - !ruby/object:Gem::Dependency
60
42
  name: test-unit
61
- requirement: &12806080 !ruby/object:Gem::Requirement
62
- none: false
43
+ requirement: !ruby/object:Gem::Requirement
63
44
  requirements:
64
45
  - - ~>
65
46
  - !ruby/object:Gem::Version
66
47
  version: '2.3'
67
48
  type: :development
68
49
  prerelease: false
69
- version_requirements: *12806080
70
- description: ! 'A better Ruby binding for the Ideone API '
71
- email: knny.myer@gmail.com
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ~>
53
+ - !ruby/object:Gem::Version
54
+ version: '2.3'
55
+ description: 'A better Ruby binding for the Ideone API '
56
+ email: kenny@kennymeyer.net
72
57
  executables: []
73
58
  extensions: []
74
59
  extra_rdoc_files:
@@ -76,6 +61,7 @@ extra_rdoc_files:
76
61
  - README.rdoc
77
62
  files:
78
63
  - .document
64
+ - .travis.yml
79
65
  - Gemfile
80
66
  - LICENSE.txt
81
67
  - README.rdoc
@@ -83,35 +69,31 @@ files:
83
69
  - VERSION
84
70
  - ideone-ruby-api.gemspec
85
71
  - lib/ideone.rb
72
+ - lib/ideone/version.rb
86
73
  - test/helper.rb
87
74
  - test/test_ideone-ruby-api.rb
88
- has_rdoc: true
89
75
  homepage: http://github.com/kennym/ideone-ruby-api
90
76
  licenses:
91
77
  - MIT
78
+ metadata: {}
92
79
  post_install_message:
93
80
  rdoc_options: []
94
81
  require_paths:
95
82
  - lib
96
83
  required_ruby_version: !ruby/object:Gem::Requirement
97
- none: false
98
84
  requirements:
99
- - - ! '>='
85
+ - - '>='
100
86
  - !ruby/object:Gem::Version
101
87
  version: '0'
102
- segments:
103
- - 0
104
- hash: 1839144466019397061
105
88
  required_rubygems_version: !ruby/object:Gem::Requirement
106
- none: false
107
89
  requirements:
108
- - - ! '>='
90
+ - - '>='
109
91
  - !ruby/object:Gem::Version
110
92
  version: '0'
111
93
  requirements: []
112
94
  rubyforge_project:
113
- rubygems_version: 1.6.2
95
+ rubygems_version: 2.0.6
114
96
  signing_key:
115
- specification_version: 3
97
+ specification_version: 4
116
98
  summary: Ruby binding for Ideone API
117
99
  test_files: []