rutrack 0.0.11.1
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 +7 -0
- data/.envrc +1 -0
- data/.gitignore +21 -0
- data/.rspec +2 -0
- data/.ruby-gemset +1 -0
- data/.ruby-version +1 -0
- data/.travis.yml +23 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +21 -0
- data/README.md +79 -0
- data/Rakefile +11 -0
- data/features/support/env.rb +3 -0
- data/features/support/hooks.rb +1 -0
- data/features/support/vcr.rb +16 -0
- data/features/support/world.rb +0 -0
- data/lib/youtrack.rb +11 -0
- data/lib/youtrack/client.rb +86 -0
- data/lib/youtrack/resources/base.rb +54 -0
- data/lib/youtrack/resources/issue.rb +169 -0
- data/lib/youtrack/resources/project.rb +55 -0
- data/lib/youtrack/resources/tag.rb +52 -0
- data/lib/youtrack/resources/user.rb +78 -0
- data/lib/youtrack/version.rb +4 -0
- data/spec/cassettes/client/connect.yml +40 -0
- data/spec/cassettes/client/connect_credentials_error.yml +39 -0
- data/spec/cassettes/client/connect_url_error.yml +45 -0
- data/spec/cassettes/users/current.yml +75 -0
- data/spec/cassettes/users/get_by_login.yml +75 -0
- data/spec/cassettes/users/get_saved_searches_for.yml +76 -0
- data/spec/spec_helper.rb +40 -0
- data/spec/youtrack/client_spec.rb +92 -0
- data/spec/youtrack/resources/user_spec.rb +83 -0
- data/youtrack.gemspec +35 -0
- metadata +201 -0
@@ -0,0 +1,76 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: post
|
5
|
+
uri: https://testcloud.myjetbrains.com/youtrack/rest/user/login
|
6
|
+
body:
|
7
|
+
encoding: UTF-8
|
8
|
+
string: login=testuser&password=testuser
|
9
|
+
headers: {}
|
10
|
+
response:
|
11
|
+
status:
|
12
|
+
code: 200
|
13
|
+
message: OK
|
14
|
+
headers:
|
15
|
+
Server:
|
16
|
+
- nginx
|
17
|
+
Date:
|
18
|
+
- Fri, 07 Feb 2014 22:39:55 GMT
|
19
|
+
Content-Type:
|
20
|
+
- application/xml; charset=UTF-8
|
21
|
+
Transfer-Encoding:
|
22
|
+
- chunked
|
23
|
+
Connection:
|
24
|
+
- keep-alive
|
25
|
+
Vary:
|
26
|
+
- Accept-Encoding
|
27
|
+
Set-Cookie:
|
28
|
+
- JSESSIONID=114e57my63svq68gcd6kn2821;Path=/youtrack;Secure
|
29
|
+
- jetbrains.charisma.main.security.PRINCIPAL=YWU1ZGViODIyZTBkNzE5OTI5MDA0NzFhNzE5OWQwZDk1YjhlN2M5ZDA1YzQwYTgyNDVhMjgxZmQyYzFkNjY4NDp0ZXN0dXNlcg;Path=/youtrack;Expires=Sat,
|
30
|
+
07-Feb-2015 22:39:55 GMT
|
31
|
+
Expires:
|
32
|
+
- Thu, 01 Jan 1970 00:00:00 GMT
|
33
|
+
Cache-Control:
|
34
|
+
- no-cache, no-store, no-transform, must-revalidate
|
35
|
+
body:
|
36
|
+
encoding: UTF-8
|
37
|
+
string: <login>ok</login>
|
38
|
+
http_version:
|
39
|
+
recorded_at: Fri, 07 Feb 2014 22:41:41 GMT
|
40
|
+
- request:
|
41
|
+
method: get
|
42
|
+
uri: https://testcloud.myjetbrains.com/youtrack/rest/user/testuser/filter
|
43
|
+
body:
|
44
|
+
encoding: US-ASCII
|
45
|
+
string: ''
|
46
|
+
headers:
|
47
|
+
Cookie:
|
48
|
+
- JSESSIONID=114e57my63svq68gcd6kn2821;Path=/youtrack;Secure, jetbrains.charisma.main.security.PRINCIPAL=YWU1ZGViODIyZTBkNzE5OTI5MDA0NzFhNzE5OWQwZDk1YjhlN2M5ZDA1YzQwYTgyNDVhMjgxZmQyYzFkNjY4NDp0ZXN0dXNlcg;Path=/youtrack;Expires=Sat,
|
49
|
+
07-Feb-2015 22:39:55 GMT
|
50
|
+
response:
|
51
|
+
status:
|
52
|
+
code: 200
|
53
|
+
message: OK
|
54
|
+
headers:
|
55
|
+
Server:
|
56
|
+
- nginx
|
57
|
+
Date:
|
58
|
+
- Fri, 07 Feb 2014 22:41:16 GMT
|
59
|
+
Content-Type:
|
60
|
+
- application/xml; charset=UTF-8
|
61
|
+
Content-Length:
|
62
|
+
- '218'
|
63
|
+
Connection:
|
64
|
+
- keep-alive
|
65
|
+
Vary:
|
66
|
+
- Accept-Encoding
|
67
|
+
Cache-Control:
|
68
|
+
- no-cache, no-store, no-transform, must-revalidate
|
69
|
+
body:
|
70
|
+
encoding: UTF-8
|
71
|
+
string: '<?xml version="1.0" encoding="UTF-8" standalone="yes"?><queries><query
|
72
|
+
name="Assigned to me" query="for: me"/><query name="Commented by me" query="commenter:
|
73
|
+
me"/><query name="Reported by me" query="by: me"/></queries>'
|
74
|
+
http_version:
|
75
|
+
recorded_at: Fri, 07 Feb 2014 22:43:02 GMT
|
76
|
+
recorded_with: VCR 2.8.0
|
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,40 @@
|
|
1
|
+
# This file was generated by the `rspec --init` command. Conventionally, all
|
2
|
+
# specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`.
|
3
|
+
# Require this file using `require "spec_helper"` to ensure that it is only
|
4
|
+
# loaded once.
|
5
|
+
#
|
6
|
+
# See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
|
7
|
+
|
8
|
+
require "webmock/rspec"
|
9
|
+
require "youtrack"
|
10
|
+
require "vcr"
|
11
|
+
|
12
|
+
VCR.configure do |c|
|
13
|
+
c.cassette_library_dir = "spec/cassettes"
|
14
|
+
c.hook_into :webmock
|
15
|
+
c.configure_rspec_metadata!
|
16
|
+
end
|
17
|
+
|
18
|
+
RSpec.configure do |config|
|
19
|
+
config.treat_symbols_as_metadata_keys_with_true_values = true
|
20
|
+
config.run_all_when_everything_filtered = true
|
21
|
+
config.filter_run :focus
|
22
|
+
|
23
|
+
config.treat_symbols_as_metadata_keys_with_true_values = true
|
24
|
+
config.extend VCR::RSpec::Macros
|
25
|
+
|
26
|
+
# Run specs in random order to surface order dependencies. If you find an
|
27
|
+
# order dependency and want to debug it, you can fix the order by providing
|
28
|
+
# the seed, which is printed after each run.
|
29
|
+
# --seed 1234
|
30
|
+
config.order = 'random'
|
31
|
+
end
|
32
|
+
|
33
|
+
def build_client(proto="http", user, pass)
|
34
|
+
Youtrack::Client.new do |c|
|
35
|
+
c.url = "#{proto}://testcloud.myjetbrains.com/youtrack"
|
36
|
+
c.login = user
|
37
|
+
c.password = pass
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
@@ -0,0 +1,92 @@
|
|
1
|
+
require "spec_helper"
|
2
|
+
|
3
|
+
describe Youtrack::Client do
|
4
|
+
|
5
|
+
describe "attributes" do
|
6
|
+
|
7
|
+
# Mutators
|
8
|
+
it { should respond_to(:url=) }
|
9
|
+
it { should respond_to(:login=) }
|
10
|
+
it { should respond_to(:password=) }
|
11
|
+
it { should respond_to(:cookies=) }
|
12
|
+
it { should respond_to(:connection=) }
|
13
|
+
it { should respond_to(:admin=) }
|
14
|
+
|
15
|
+
# Accessors
|
16
|
+
it { should respond_to(:admin?) }
|
17
|
+
it { should respond_to(:connected?) }
|
18
|
+
it { should respond_to(:credentials_hash) }
|
19
|
+
it { should respond_to(:endpoint) }
|
20
|
+
end
|
21
|
+
|
22
|
+
describe "resources" do
|
23
|
+
it { should respond_to(:users) }
|
24
|
+
it { should respond_to(:projects) }
|
25
|
+
it { should respond_to(:issues) }
|
26
|
+
end
|
27
|
+
|
28
|
+
describe "connecting" do
|
29
|
+
|
30
|
+
context "success" do
|
31
|
+
let(:client) { build_client("https", "testuser", "testuser") }
|
32
|
+
use_vcr_cassette "client/connect"
|
33
|
+
|
34
|
+
it "should connect to a youtrack endpoint when having valid credentials" do
|
35
|
+
client.connect!
|
36
|
+
|
37
|
+
# STATUS
|
38
|
+
expect(client.connected?).to eq(true)
|
39
|
+
expect(client.connection.code).to eq(200)
|
40
|
+
expect(client.connection.message).to eq("OK")
|
41
|
+
|
42
|
+
# MESSAGE
|
43
|
+
entity_body = client.connection.parsed_response
|
44
|
+
expect(entity_body["error"]).to eq(nil)
|
45
|
+
expect(entity_body["login"]).to eq("ok")
|
46
|
+
|
47
|
+
# AUTH COOKIE
|
48
|
+
expect(client.connection.response["set-cookie"]).to match(%r{jetbrains.charisma.main.security})
|
49
|
+
end
|
50
|
+
|
51
|
+
end
|
52
|
+
|
53
|
+
context "credentials failure" do
|
54
|
+
let(:client) { build_client("https", "invalid_user", "invalid_pass") }
|
55
|
+
use_vcr_cassette "client/connect_credentials_error"
|
56
|
+
|
57
|
+
it "should not connect to a youtrack endpoint when credentials are invalid" do
|
58
|
+
client.connect!
|
59
|
+
|
60
|
+
# STATUS
|
61
|
+
expect(client.connected?).to eq(false)
|
62
|
+
expect(client.connection.code).to eq(403)
|
63
|
+
expect(client.connection.message).to eq("Forbidden")
|
64
|
+
|
65
|
+
# MESSAGE
|
66
|
+
entity_body = client.connection.parsed_response
|
67
|
+
expect(entity_body["login"]).to eq(nil)
|
68
|
+
expect(entity_body["error"]).to eq("Incorrect login or password.")
|
69
|
+
|
70
|
+
# AUTH COOKIE
|
71
|
+
expect(client.connection.response["set-cookie"]).to_not match(%r{jetbrains.charisma.main.security})
|
72
|
+
end
|
73
|
+
end
|
74
|
+
|
75
|
+
context "url endpoint failure" do
|
76
|
+
let(:client) { build_client("https", "testuser", "testuser") }
|
77
|
+
use_vcr_cassette "client/connect_url_error"
|
78
|
+
|
79
|
+
it "should not connect to a youtrack endpoint when the url is invalid" do
|
80
|
+
client.url = "https://testcloud.myjetbrains.com/youtracks"
|
81
|
+
client.connect!
|
82
|
+
|
83
|
+
# STATUS
|
84
|
+
expect(client.connected?).to eq(false)
|
85
|
+
expect(client.connection.code).to eq(404)
|
86
|
+
expect(client.connection.message).to eq("Not Found")
|
87
|
+
|
88
|
+
end
|
89
|
+
end
|
90
|
+
|
91
|
+
end
|
92
|
+
end
|
@@ -0,0 +1,83 @@
|
|
1
|
+
require "spec_helper"
|
2
|
+
|
3
|
+
describe Youtrack::User do
|
4
|
+
describe "api methods" do
|
5
|
+
use_vcr_cassette "users/init", record: :new_episodes
|
6
|
+
|
7
|
+
let(:users) do
|
8
|
+
client = build_client("https", "testuser", "testuser")
|
9
|
+
client.connect!
|
10
|
+
client.users
|
11
|
+
end
|
12
|
+
|
13
|
+
context "#current" do
|
14
|
+
use_vcr_cassette "users/current", record: :new_episodes
|
15
|
+
|
16
|
+
it "should take no arguments" do
|
17
|
+
expect(users.method(:current).arity).to eq(0)
|
18
|
+
end
|
19
|
+
|
20
|
+
it "should return info about the currently authenticated user" do
|
21
|
+
entity_body = users.current
|
22
|
+
|
23
|
+
# STATUS
|
24
|
+
expect(users.response.code).to eq(200)
|
25
|
+
|
26
|
+
# BODY
|
27
|
+
expect(entity_body["user"]).to be_kind_of(Hash)
|
28
|
+
user_hash = entity_body["user"]
|
29
|
+
|
30
|
+
expect(user_hash.keys).to include("login")
|
31
|
+
expect(user_hash.keys).to include("email")
|
32
|
+
expect(user_hash.keys).to include("fullName")
|
33
|
+
end
|
34
|
+
|
35
|
+
end
|
36
|
+
|
37
|
+
context "#get_by_login" do
|
38
|
+
use_vcr_cassette "users/get_by_login", record: :new_episodes
|
39
|
+
|
40
|
+
it "should take one argument the user's login name" do
|
41
|
+
users.method(:get_by_login).arity.should eq(1)
|
42
|
+
end
|
43
|
+
|
44
|
+
it "should return info about a searched for user" do
|
45
|
+
entity_body = users.get_by_login("testuser")
|
46
|
+
|
47
|
+
# STATUS
|
48
|
+
expect(users.response.code).to eq(200)
|
49
|
+
|
50
|
+
# BODY
|
51
|
+
user_hash = entity_body["user"]
|
52
|
+
expect(user_hash).to be_kind_of(Hash)
|
53
|
+
expect(user_hash["login"]).to_not eq(nil)
|
54
|
+
expect(user_hash["email"]).to_not eq(nil)
|
55
|
+
expect(user_hash["fullName"]).to_not eq(nil)
|
56
|
+
|
57
|
+
end
|
58
|
+
end
|
59
|
+
|
60
|
+
context "#get_saved_searches_for" do
|
61
|
+
use_vcr_cassette "users/get_saved_searches_for", record: :new_episodes
|
62
|
+
|
63
|
+
it "should take one argument the user's login name" do
|
64
|
+
users.method(:get_saved_searches_for).arity.should eq(1)
|
65
|
+
end
|
66
|
+
|
67
|
+
it "should return a list of the user's saved searches with name/query keys" do
|
68
|
+
entity_body = users.get_saved_searches_for("testuser")
|
69
|
+
|
70
|
+
# STATUS
|
71
|
+
expect(users.response.code).to eq(200)
|
72
|
+
|
73
|
+
# BODY
|
74
|
+
query_ary = entity_body["queries"]["query"].first
|
75
|
+
expect(query_ary).to be_kind_of(Hash)
|
76
|
+
expect(query_ary["name"]).to_not eq(nil)
|
77
|
+
expect(query_ary["query"]).to_not eq(nil)
|
78
|
+
end
|
79
|
+
end
|
80
|
+
|
81
|
+
end
|
82
|
+
|
83
|
+
end
|
data/youtrack.gemspec
ADDED
@@ -0,0 +1,35 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
require 'youtrack/version'
|
5
|
+
|
6
|
+
Gem::Specification.new do |spec|
|
7
|
+
|
8
|
+
# META
|
9
|
+
spec.name = "rutrack"
|
10
|
+
spec.version = Youtrack::VERSION
|
11
|
+
spec.authors = ["John Faucett"]
|
12
|
+
spec.email = ["jwaterfaucett@gmail.com"]
|
13
|
+
spec.description = %q{JetBrains youTrack Rest API Client in Ruby}
|
14
|
+
spec.summary = %q{A Ruby REST API Client for JetBrains youTrack software}
|
15
|
+
spec.homepage = "http://jwaterfaucett.github.io/youtrack/"
|
16
|
+
spec.license = "MIT"
|
17
|
+
|
18
|
+
# FILES
|
19
|
+
spec.files = `git ls-files`.split($/).grep(%r{^(?!binstubs|examples)})
|
20
|
+
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
21
|
+
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
22
|
+
spec.require_paths = ["lib"]
|
23
|
+
|
24
|
+
# HARD DEPENDENCY
|
25
|
+
spec.add_dependency "httparty"
|
26
|
+
spec.add_dependency "multipart-post"
|
27
|
+
|
28
|
+
# DEVELOPMENT
|
29
|
+
spec.add_development_dependency "bundler", "~> 1.3"
|
30
|
+
spec.add_development_dependency "rake"
|
31
|
+
spec.add_development_dependency "cucumber", "~> 1.3.10"
|
32
|
+
spec.add_development_dependency "rspec", "~> 2.14.1"
|
33
|
+
spec.add_development_dependency "webmock", "~> 1.17.1"
|
34
|
+
spec.add_development_dependency "vcr", "~> 2.8.0"
|
35
|
+
end
|
metadata
ADDED
@@ -0,0 +1,201 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: rutrack
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.11.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- John Faucett
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2016-12-13 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: httparty
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ">="
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: multipart-post
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ">="
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: bundler
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "~>"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '1.3'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '1.3'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: rake
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ">="
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ">="
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: cucumber
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - "~>"
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: 1.3.10
|
76
|
+
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - "~>"
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: 1.3.10
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: rspec
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - "~>"
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: 2.14.1
|
90
|
+
type: :development
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - "~>"
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: 2.14.1
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: webmock
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - "~>"
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: 1.17.1
|
104
|
+
type: :development
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - "~>"
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: 1.17.1
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: vcr
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - "~>"
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: 2.8.0
|
118
|
+
type: :development
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - "~>"
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: 2.8.0
|
125
|
+
description: JetBrains youTrack Rest API Client in Ruby
|
126
|
+
email:
|
127
|
+
- jwaterfaucett@gmail.com
|
128
|
+
executables: []
|
129
|
+
extensions: []
|
130
|
+
extra_rdoc_files: []
|
131
|
+
files:
|
132
|
+
- ".envrc"
|
133
|
+
- ".gitignore"
|
134
|
+
- ".rspec"
|
135
|
+
- ".ruby-gemset"
|
136
|
+
- ".ruby-version"
|
137
|
+
- ".travis.yml"
|
138
|
+
- Gemfile
|
139
|
+
- LICENSE.txt
|
140
|
+
- README.md
|
141
|
+
- Rakefile
|
142
|
+
- features/support/env.rb
|
143
|
+
- features/support/hooks.rb
|
144
|
+
- features/support/vcr.rb
|
145
|
+
- features/support/world.rb
|
146
|
+
- lib/youtrack.rb
|
147
|
+
- lib/youtrack/client.rb
|
148
|
+
- lib/youtrack/resources/base.rb
|
149
|
+
- lib/youtrack/resources/issue.rb
|
150
|
+
- lib/youtrack/resources/project.rb
|
151
|
+
- lib/youtrack/resources/tag.rb
|
152
|
+
- lib/youtrack/resources/user.rb
|
153
|
+
- lib/youtrack/version.rb
|
154
|
+
- spec/cassettes/client/connect.yml
|
155
|
+
- spec/cassettes/client/connect_credentials_error.yml
|
156
|
+
- spec/cassettes/client/connect_url_error.yml
|
157
|
+
- spec/cassettes/users/current.yml
|
158
|
+
- spec/cassettes/users/get_by_login.yml
|
159
|
+
- spec/cassettes/users/get_saved_searches_for.yml
|
160
|
+
- spec/spec_helper.rb
|
161
|
+
- spec/youtrack/client_spec.rb
|
162
|
+
- spec/youtrack/resources/user_spec.rb
|
163
|
+
- youtrack.gemspec
|
164
|
+
homepage: http://jwaterfaucett.github.io/youtrack/
|
165
|
+
licenses:
|
166
|
+
- MIT
|
167
|
+
metadata: {}
|
168
|
+
post_install_message:
|
169
|
+
rdoc_options: []
|
170
|
+
require_paths:
|
171
|
+
- lib
|
172
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
173
|
+
requirements:
|
174
|
+
- - ">="
|
175
|
+
- !ruby/object:Gem::Version
|
176
|
+
version: '0'
|
177
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
178
|
+
requirements:
|
179
|
+
- - ">="
|
180
|
+
- !ruby/object:Gem::Version
|
181
|
+
version: '0'
|
182
|
+
requirements: []
|
183
|
+
rubyforge_project:
|
184
|
+
rubygems_version: 2.5.1
|
185
|
+
signing_key:
|
186
|
+
specification_version: 4
|
187
|
+
summary: A Ruby REST API Client for JetBrains youTrack software
|
188
|
+
test_files:
|
189
|
+
- features/support/env.rb
|
190
|
+
- features/support/hooks.rb
|
191
|
+
- features/support/vcr.rb
|
192
|
+
- features/support/world.rb
|
193
|
+
- spec/cassettes/client/connect.yml
|
194
|
+
- spec/cassettes/client/connect_credentials_error.yml
|
195
|
+
- spec/cassettes/client/connect_url_error.yml
|
196
|
+
- spec/cassettes/users/current.yml
|
197
|
+
- spec/cassettes/users/get_by_login.yml
|
198
|
+
- spec/cassettes/users/get_saved_searches_for.yml
|
199
|
+
- spec/spec_helper.rb
|
200
|
+
- spec/youtrack/client_spec.rb
|
201
|
+
- spec/youtrack/resources/user_spec.rb
|