embark-journey 0.0.4 → 0.0.5
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.
- checksums.yaml +4 -4
- data/README.md +24 -4
- data/journey.gemspec +1 -0
- data/lib/journey/resource.rb +2 -0
- data/lib/journey/resource/search.rb +12 -0
- data/lib/journey/version.rb +1 -1
- data/spec/models/journey/resource_spec.rb +34 -0
- data/spec/spec_helper.rb +3 -0
- data/spec/support/test_configuration.rb +0 -1
- metadata +17 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 35aff83caf7592c8490abbe897b29447acf19537
|
4
|
+
data.tar.gz: 82df81ae9c69ddc1aa89d5c2a95c6de7dfb88276
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b8824778c4eb70721bfb8bdcf90acc70ba5a8af8a90e9b1eaa887131cbc4f136c69002e8936c8bcacc179c11f9d435922dd5d429dcdaf4b887b570c53c30b12b
|
7
|
+
data.tar.gz: f1405aeaf8bf87e16bd7483519f61720de0613f4551aae2d818374d4099170be1f2898db701bbd0d70bb19f2fff8e1261848ff983908f77deeea8b2d3972c0af
|
data/README.md
CHANGED
@@ -1,12 +1,12 @@
|
|
1
1
|
# Journey
|
2
2
|
|
3
|
-
|
3
|
+
A ruby wrapper for the Journey API. http://resources.journeyapps.com/api
|
4
4
|
|
5
5
|
## Installation
|
6
6
|
|
7
7
|
Add this line to your application's Gemfile:
|
8
8
|
|
9
|
-
gem 'journey'
|
9
|
+
gem 'embark-journey', require: 'journey'
|
10
10
|
|
11
11
|
And then execute:
|
12
12
|
|
@@ -14,11 +14,31 @@ And then execute:
|
|
14
14
|
|
15
15
|
Or install it yourself as:
|
16
16
|
|
17
|
-
$ gem install journey
|
17
|
+
$ gem install embark-journey
|
18
18
|
|
19
19
|
## Usage
|
20
20
|
|
21
|
-
|
21
|
+
Configure Journey to use the relevant API credentials. For Rails, this would be placed in an initializer.
|
22
|
+
|
23
|
+
Journey.configure do |c|
|
24
|
+
c.api_site = ENV['JOURNEY_API_ENDPOINT']
|
25
|
+
c.api_user = ENV['JOURNEY_API_USERNAME']
|
26
|
+
c.api_password = ENV['JOURNEY_API_KEY']
|
27
|
+
end
|
28
|
+
|
29
|
+
|
30
|
+
Create your resource models, inheriting from `Journey::Resource`. Under the hood, resources extend `ActiveResource::Base`.
|
31
|
+
|
32
|
+
class User < Journey::Resource
|
33
|
+
schema do
|
34
|
+
string :name
|
35
|
+
datetime :last_login
|
36
|
+
string :state
|
37
|
+
end
|
38
|
+
|
39
|
+
enum :state, %w[Active Inactive]
|
40
|
+
end
|
41
|
+
|
22
42
|
|
23
43
|
## Contributing
|
24
44
|
|
data/journey.gemspec
CHANGED
@@ -24,6 +24,7 @@ Gem::Specification.new do |spec|
|
|
24
24
|
spec.add_development_dependency 'bundler', '~> 1.3'
|
25
25
|
spec.add_development_dependency 'rake', '~> 10.1.1'
|
26
26
|
spec.add_development_dependency 'rspec', '~> 3.0.0.beta1'
|
27
|
+
spec.add_development_dependency 'factory_girl', '~> 4.3.0'
|
27
28
|
spec.add_development_dependency 'dotenv', '~> 0.9.0'
|
28
29
|
spec.add_development_dependency 'pry', '~> 0.9.12.4'
|
29
30
|
|
data/lib/journey/resource.rb
CHANGED
@@ -8,12 +8,14 @@ require 'journey/resource/api'
|
|
8
8
|
require 'journey/resource/attribute_loading'
|
9
9
|
require 'journey/resource/enums'
|
10
10
|
require 'journey/resource/queries'
|
11
|
+
require 'journey/resource/search'
|
11
12
|
|
12
13
|
class Journey::Resource
|
13
14
|
include API
|
14
15
|
include Queries
|
15
16
|
include Enums
|
16
17
|
include AttributeLoading
|
18
|
+
include Search
|
17
19
|
end
|
18
20
|
|
19
21
|
|
data/lib/journey/version.rb
CHANGED
@@ -63,4 +63,38 @@ describe Journey::Resource do
|
|
63
63
|
end
|
64
64
|
end
|
65
65
|
end
|
66
|
+
|
67
|
+
|
68
|
+
describe '::Search' do
|
69
|
+
it 'returns matching objects when matches are made' do
|
70
|
+
uuid = SecureRandom.uuid
|
71
|
+
|
72
|
+
matched_objects = [
|
73
|
+
klass.create(name: "#{SecureRandom.uuid}#{uuid}"),
|
74
|
+
klass.create(name: "#{SecureRandom.uuid}#{uuid}")
|
75
|
+
]
|
76
|
+
expect(matched_objects.all?(&:persisted?)).to be true
|
77
|
+
|
78
|
+
unmatched_objects = [
|
79
|
+
klass.create(name: "#{SecureRandom.uuid}"),
|
80
|
+
klass.create(name: "#{SecureRandom.uuid}")
|
81
|
+
]
|
82
|
+
expect(unmatched_objects.all?(&:persisted?)).to be true
|
83
|
+
|
84
|
+
searched_objects = klass.search(uuid)
|
85
|
+
|
86
|
+
matched_objects.each do |object|
|
87
|
+
expect(searched_objects).to include(object)
|
88
|
+
end
|
89
|
+
|
90
|
+
unmatched_objects.each do |object|
|
91
|
+
expect(searched_objects).not_to include(object)
|
92
|
+
end
|
93
|
+
end
|
94
|
+
|
95
|
+
it 'returns an empty array when no matches are made' do
|
96
|
+
results = klass.search(SecureRandom.uuid)
|
97
|
+
expect(results).to_not be_any
|
98
|
+
end
|
99
|
+
end
|
66
100
|
end
|
data/spec/spec_helper.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: embark-journey
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Dan Davey
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-03-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: active_attr
|
@@ -80,6 +80,20 @@ dependencies:
|
|
80
80
|
- - ~>
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: 3.0.0.beta1
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: factory_girl
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - ~>
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: 4.3.0
|
90
|
+
type: :development
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - ~>
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: 4.3.0
|
83
97
|
- !ruby/object:Gem::Dependency
|
84
98
|
name: dotenv
|
85
99
|
requirement: !ruby/object:Gem::Requirement
|
@@ -136,6 +150,7 @@ files:
|
|
136
150
|
- lib/journey/resource/attribute_loading.rb
|
137
151
|
- lib/journey/resource/enums.rb
|
138
152
|
- lib/journey/resource/queries.rb
|
153
|
+
- lib/journey/resource/search.rb
|
139
154
|
- lib/journey/version.rb
|
140
155
|
- spec/models/journey/configurable_spec.rb
|
141
156
|
- spec/models/journey/configuration_spec.rb
|