hastests 0.5.0 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/README.rdoc CHANGED
@@ -7,19 +7,20 @@ Library for accessing HasTests API (http://hastests.com) services from Ruby
7
7
  require 'rubygems'
8
8
  require 'hastests'
9
9
 
10
- >> ht = Hastests::Data.new("internet.email().list()")
10
+ >> ht = Hastests::Account.new
11
+ >> p = ht.add_program("internet.email().list()")
11
12
 
12
13
  # Random sampling:
13
14
 
14
- >> ht.generate()["data"]
15
- >> ht.generate()["data"]
16
- >> ht.generate()["data"]
15
+ >> p.generate()["data"]
16
+ >> p.generate()["data"]
17
+ >> p.generate()["data"]
17
18
 
18
19
  # Repeatable sampling:
19
20
 
20
- >> ht.generate(123)["data"]
21
- >> ht.generate(123)["data"]
22
- >> ht.generate(123)["data"]
21
+ >> p.generate(123)["data"]
22
+ >> p.generate(123)["data"]
23
+ >> p.generate(123)["data"]
23
24
 
24
25
  == Copyright
25
26
 
data/Rakefile CHANGED
@@ -12,6 +12,7 @@ end
12
12
  require 'rake'
13
13
 
14
14
  require 'jeweler'
15
+ require './lib/hastests/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
17
18
  gem.name = "hastests"
@@ -21,7 +22,7 @@ Jeweler::Tasks.new do |gem|
21
22
  gem.description = %Q{HasTests API Client for Ruby}
22
23
  gem.email = "team@spawngrid.com"
23
24
  gem.authors = ["Spawngrid, Inc."]
24
- gem.version = "0.5.0"
25
+ gem.version = Hastests::VERSION
25
26
  # dependencies defined in Gemfile
26
27
  end
27
28
  Jeweler::RubygemsDotOrgTasks.new
data/hastests.gemspec ADDED
@@ -0,0 +1,65 @@
1
+ # Generated by jeweler
2
+ # DO NOT EDIT THIS FILE DIRECTLY
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
+ # -*- encoding: utf-8 -*-
5
+
6
+ Gem::Specification.new do |s|
7
+ s.name = %q{hastests}
8
+ s.version = "0.6.0"
9
+
10
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
+ s.authors = [%q{Spawngrid, Inc.}]
12
+ s.date = %q{2011-12-22}
13
+ s.description = %q{HasTests API Client for Ruby}
14
+ s.email = %q{team@spawngrid.com}
15
+ s.extra_rdoc_files = [
16
+ "LICENSE.txt",
17
+ "README.rdoc"
18
+ ]
19
+ s.files = [
20
+ ".document",
21
+ "Gemfile",
22
+ "LICENSE.txt",
23
+ "README.rdoc",
24
+ "Rakefile",
25
+ "hastests.gemspec",
26
+ "lib/hastests.rb",
27
+ "lib/hastests/account.rb",
28
+ "lib/hastests/data.rb",
29
+ "lib/hastests/version.rb",
30
+ "test/helper.rb"
31
+ ]
32
+ s.homepage = %q{http://github.com/spawngrid/hastests-ruby}
33
+ s.licenses = [%q{MIT}]
34
+ s.require_paths = [%q{lib}]
35
+ s.rubygems_version = %q{1.8.5}
36
+ s.summary = %q{HasTests API Client}
37
+
38
+ if s.respond_to? :specification_version then
39
+ s.specification_version = 3
40
+
41
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
42
+ s.add_runtime_dependency(%q<rest-client>, [">= 0"])
43
+ s.add_runtime_dependency(%q<json>, [">= 0"])
44
+ s.add_development_dependency(%q<shoulda>, [">= 0"])
45
+ s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
46
+ s.add_development_dependency(%q<jeweler>, ["~> 1.6.4"])
47
+ s.add_development_dependency(%q<rcov>, [">= 0"])
48
+ else
49
+ s.add_dependency(%q<rest-client>, [">= 0"])
50
+ s.add_dependency(%q<json>, [">= 0"])
51
+ s.add_dependency(%q<shoulda>, [">= 0"])
52
+ s.add_dependency(%q<bundler>, ["~> 1.0.0"])
53
+ s.add_dependency(%q<jeweler>, ["~> 1.6.4"])
54
+ s.add_dependency(%q<rcov>, [">= 0"])
55
+ end
56
+ else
57
+ s.add_dependency(%q<rest-client>, [">= 0"])
58
+ s.add_dependency(%q<json>, [">= 0"])
59
+ s.add_dependency(%q<shoulda>, [">= 0"])
60
+ s.add_dependency(%q<bundler>, ["~> 1.0.0"])
61
+ s.add_dependency(%q<jeweler>, ["~> 1.6.4"])
62
+ s.add_dependency(%q<rcov>, [">= 0"])
63
+ end
64
+ end
65
+
data/lib/hastests.rb CHANGED
@@ -1 +1,3 @@
1
+ require 'hastests/version'
2
+ require 'hastests/account'
1
3
  require 'hastests/data'
@@ -0,0 +1,16 @@
1
+ require 'hastests/data'
2
+
3
+ module Hastests
4
+ URL = 'http://demo.hastests.com'
5
+ TOKEN = '213a37b1-c8a9-4dae-acab-67f0fd65149e'
6
+ class Account
7
+ attr_accessor :url, :token
8
+ def initialize(url=nil, token=nil)
9
+ @url = url || Hastests::URL
10
+ @token = token || Hastests::TOKEN
11
+ end
12
+ def add_program(script)
13
+ Hastests::Data.new(script, self)
14
+ end
15
+ end
16
+ end
data/lib/hastests/data.rb CHANGED
@@ -1,23 +1,27 @@
1
1
  require 'json'
2
2
  require 'rubygems'
3
3
  require 'rest_client'
4
+ require 'hastests/version'
4
5
 
5
6
  module Hastests
6
- API_URL = 'http://api.hastests.com/'
7
+ API_PATH = '/api/data'
8
+ USER_AGENT = "hastests-ruby "+Hastests::VERSION
7
9
  class Service
8
10
  end
9
11
  class Data < Service
10
- def initialize(script)
11
- @script = script
12
+ def initialize(script,account)
13
+ @account = account
14
+ @params = {:q => script, :api_token => @account.token }
12
15
  end
13
16
 
14
17
  def generate(seed=nil)
15
- params = {:q => @script}
18
+ params = @params.clone
16
19
  if seed!=nil
17
20
  params[:seed]=seed
18
21
  end
19
- response = RestClient.get(Hastests::API_URL + 'data', :params => params,
20
- :headers => {:connection => "Keep-Alive"})
22
+ response = RestClient.get(@account.url + Hastests::API_PATH,
23
+ :user_agent => Hastests::USER_AGENT,
24
+ :params => params)
21
25
  return JSON.parse(response.body)
22
26
  end
23
27
  end
@@ -0,0 +1,3 @@
1
+ module Hastests
2
+ VERSION = '0.6.0'
3
+ end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hastests
3
3
  version: !ruby/object:Gem::Version
4
- hash: 11
4
+ hash: 7
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
- - 5
8
+ - 6
9
9
  - 0
10
- version: 0.5.0
10
+ version: 0.6.0
11
11
  platform: ruby
12
12
  authors:
13
13
  - Spawngrid, Inc.
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-12-14 00:00:00 Z
18
+ date: 2011-12-22 00:00:00 Z
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
21
  version_requirements: &id001 !ruby/object:Gem::Requirement
@@ -120,8 +120,11 @@ files:
120
120
  - LICENSE.txt
121
121
  - README.rdoc
122
122
  - Rakefile
123
+ - hastests.gemspec
123
124
  - lib/hastests.rb
125
+ - lib/hastests/account.rb
124
126
  - lib/hastests/data.rb
127
+ - lib/hastests/version.rb
125
128
  - test/helper.rb
126
129
  homepage: http://github.com/spawngrid/hastests-ruby
127
130
  licenses: