dm-fluiddb-adapter 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,2 @@
1
+ --colour
2
+ --backtrace
@@ -0,0 +1,24 @@
1
+ $LOAD_PATH.unshift(File.dirname(__FILE__))
2
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
3
+
4
+ require 'rubygems'
5
+ require 'spec'
6
+ require 'spec/autorun'
7
+ require 'fluiddb_adapter'
8
+ require 'memcached'
9
+
10
+ DATABASE_URL = "fluiddb://test:test@sandbox.fluidinfo.com/test"
11
+ CACHE = Memcached.new 'localhost:11211', :prefix_key => 'fluiddb-test:'
12
+
13
+ Loggable.logger = Logger.new(nil)
14
+ DataMapper.logger = Loggable.logger
15
+
16
+ Spec::Runner.configure {|config|}
17
+
18
+ Typhoeus::Hydra.class_eval do
19
+ def stub_response(method, url, args={})
20
+ args = { :code => 204, :headers => "", :body => '', :time => 0.5 }.merge(args)
21
+ response = Typhoeus::Response.new(args)
22
+ stub(method, 'http://sandbox.fluidinfo.com' + url).and_return(response)
23
+ end
24
+ end
@@ -0,0 +1,33 @@
1
+ require 'spec/spec_helper'
2
+
3
+
4
+ describe TyphoeusClient do
5
+ before(:each) do
6
+ adapter = DataMapper.setup(:default, DATABASE_URL)
7
+ # This is the easiest way to get the config data out
8
+ # of the DATABASE_URL for the tests
9
+ @handler = adapter.instance_variable_get("@http")
10
+ end
11
+
12
+ describe :request do
13
+ it 'should work' do
14
+ @handler.hydra.stub_response(:get, '/objects')
15
+ @handler.request(:get, '/objects')
16
+ end
17
+ end
18
+
19
+ [ :get, :post, :put, :delete ]. each do |method|
20
+ describe method do
21
+ it "should respond to #{method}" do
22
+ @handler.respond_to?(method).should == true
23
+ end
24
+
25
+ it 'should work' do
26
+ @handler.hydra.stub_response(method, '/objects')
27
+
28
+ resp = @handler.send(method, '/objects')
29
+ resp.code.should == 204
30
+ end
31
+ end
32
+ end
33
+ end
metadata ADDED
@@ -0,0 +1,115 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: dm-fluiddb-adapter
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Jordan Curzon
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2009-11-08 00:00:00 -08:00
13
+ default_executable:
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: dm-core
17
+ type: :runtime
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: "0"
24
+ version:
25
+ - !ruby/object:Gem::Dependency
26
+ name: typhoeus
27
+ type: :runtime
28
+ version_requirement:
29
+ version_requirements: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: "0"
34
+ version:
35
+ - !ruby/object:Gem::Dependency
36
+ name: rspec
37
+ type: :development
38
+ version_requirement:
39
+ version_requirements: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ version: "0"
44
+ version:
45
+ - !ruby/object:Gem::Dependency
46
+ name: memcached
47
+ type: :development
48
+ version_requirement:
49
+ version_requirements: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - ">="
52
+ - !ruby/object:Gem::Version
53
+ version: "0"
54
+ version:
55
+ description: |-
56
+ This is a DataMapper adapter for FluidDB (www.fluidinfo.com)
57
+ It makes heavy use of memcache and uses Typhoeus to parallelize fetching tag values. TyphoeusClient can also be used independently to make low-level requests.
58
+ email: curzonj@gmail.com
59
+ executables: []
60
+
61
+ extensions: []
62
+
63
+ extra_rdoc_files:
64
+ - LICENSE
65
+ - README.rdoc
66
+ files:
67
+ - .document
68
+ - .gitignore
69
+ - LICENSE
70
+ - README.rdoc
71
+ - Rakefile
72
+ - VERSION
73
+ - dm-fluiddb-adapter.gemspec
74
+ - lib/dm-fluiddb-adapter/fixes.rb
75
+ - lib/dm-fluiddb-adapter/typhoeus_client.rb
76
+ - lib/fluiddb_adapter.rb
77
+ - lib/loggable.rb
78
+ - spec/fluiddb_adapter_spec.rb
79
+ - spec/integration_spec.rb
80
+ - spec/spec.opts
81
+ - spec/spec_helper.rb
82
+ - spec/typhoeus_client_spec.rb
83
+ has_rdoc: true
84
+ homepage: http://github.com/curzonj/dm-fluiddb-adapter
85
+ licenses: []
86
+
87
+ post_install_message:
88
+ rdoc_options:
89
+ - --charset=UTF-8
90
+ require_paths:
91
+ - lib
92
+ required_ruby_version: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: "0"
97
+ version:
98
+ required_rubygems_version: !ruby/object:Gem::Requirement
99
+ requirements:
100
+ - - ">="
101
+ - !ruby/object:Gem::Version
102
+ version: "0"
103
+ version:
104
+ requirements: []
105
+
106
+ rubyforge_project:
107
+ rubygems_version: 1.3.5
108
+ signing_key:
109
+ specification_version: 3
110
+ summary: A DataMapper adapter for FluidDB
111
+ test_files:
112
+ - spec/spec_helper.rb
113
+ - spec/integration_spec.rb
114
+ - spec/typhoeus_client_spec.rb
115
+ - spec/fluiddb_adapter_spec.rb