youtrack 0.0.7 → 0.0.8
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/examples/authentication.rb +12 -0
- data/examples/issues.rb +53 -0
- data/examples/projects.rb +48 -0
- data/examples/users.rb +0 -0
- data/lib/youtrack/resources/project.rb +2 -2
- data/lib/youtrack/version.rb +1 -1
- data/spec/youtrack/resources/user_spec.rb +28 -0
- metadata +9 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b49b0b2fa1572425997a8638aed4498b15c8169b
|
4
|
+
data.tar.gz: 6aab1f47e3f3d7d5b0af1ae408d1a6f1dd07eb01
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4b6b76023f8477b95215d897019837f6c6132c0ab6e0a3c669010d76f76bced792c4726332072a22181fd39c2a316c466e80101b4221910bc228cdd5816f0b89
|
7
|
+
data.tar.gz: 6d33cc644eec81607418b502e0a3bd90a22188170353fc054f5db7532e6b2981bcb7efd13bb2b594132b402c3c32deed8b5cc54da8d2caf3550520f5b0da7aad
|
@@ -0,0 +1,12 @@
|
|
1
|
+
require "youtrack"
|
2
|
+
|
3
|
+
# Setup the client configuration
|
4
|
+
client = Youtrack::Client.new do |c|
|
5
|
+
c.url = "http://example.your-youtrack.com"
|
6
|
+
c.login = "demo"
|
7
|
+
c.password = "demo"
|
8
|
+
end
|
9
|
+
|
10
|
+
# connect to the youtrack endpoint
|
11
|
+
# and save cookies in the client object
|
12
|
+
client.connect!
|
data/examples/issues.rb
ADDED
@@ -0,0 +1,53 @@
|
|
1
|
+
require "youtrack"
|
2
|
+
|
3
|
+
# Setup the client configuration
|
4
|
+
client = Youtrack::Client.new do |c|
|
5
|
+
c.url = "http://example.your-youtrack.com"
|
6
|
+
c.login = "demo"
|
7
|
+
c.password = "demo"
|
8
|
+
end
|
9
|
+
|
10
|
+
# connect to the youtrack endpoint
|
11
|
+
# and save cookies in the client object
|
12
|
+
client.connect!
|
13
|
+
|
14
|
+
|
15
|
+
# Get the issue resource inheriting cookies
|
16
|
+
# from client
|
17
|
+
issue_resource = client.issues
|
18
|
+
|
19
|
+
# Find an issue by ID
|
20
|
+
issue_resource.find("TT-6")
|
21
|
+
|
22
|
+
# Check if an issue exists
|
23
|
+
issue_resource.exists?("TT-6")
|
24
|
+
|
25
|
+
# Getting issue associated data
|
26
|
+
issue_resource.get_history_for("TT-6")
|
27
|
+
issue_resource.get_changes_for("TT-6")
|
28
|
+
issue_resource.get_attachments_for("TT-6")
|
29
|
+
issue_resource.get_comments_for("TT-6")
|
30
|
+
issue_resource.get_links_for("TT-6")
|
31
|
+
|
32
|
+
# Create an Issue
|
33
|
+
issue_resource.create(
|
34
|
+
project: "TT",
|
35
|
+
summary: "An example Bug",
|
36
|
+
description: "This Bug is evil"
|
37
|
+
)
|
38
|
+
|
39
|
+
# Update an Issue
|
40
|
+
issue_id = "TT-6"
|
41
|
+
issue_resource.update( issue_id , summary: "Evil Bug")
|
42
|
+
|
43
|
+
# Delete
|
44
|
+
issue_resource.destroy(issue_id)
|
45
|
+
|
46
|
+
# Add attachments to an issue
|
47
|
+
data = File.open("/tmp/dummy.txt")
|
48
|
+
content_type = "text/plain"
|
49
|
+
filename = "dummy.txt"
|
50
|
+
issue_resource.add_attachment(issue_id, data, content_type, filename )
|
51
|
+
|
52
|
+
# Add comments to an issue
|
53
|
+
issue_resource.add_comment(issue_id, comment: "This bug has been fixed")
|
@@ -0,0 +1,48 @@
|
|
1
|
+
require "youtrack"
|
2
|
+
|
3
|
+
# Setup the client configuration
|
4
|
+
client = Youtrack::Client.new do |c|
|
5
|
+
c.url = "http://example.your-youtrack.com"
|
6
|
+
c.login = "demo"
|
7
|
+
c.password = "demo"
|
8
|
+
end
|
9
|
+
|
10
|
+
# connect to the youtrack endpoint
|
11
|
+
# and save cookies in the client object
|
12
|
+
client.connect!
|
13
|
+
|
14
|
+
|
15
|
+
|
16
|
+
# create a project resource
|
17
|
+
# that inherits the connection
|
18
|
+
# from the client
|
19
|
+
project_resource = client.projects
|
20
|
+
|
21
|
+
# Get all accessible projects
|
22
|
+
project_list = project_resource.get_accessible_projects
|
23
|
+
|
24
|
+
# Get all issues for a particular project
|
25
|
+
project_id = "TT"
|
26
|
+
issue_list = project_resource.get_issues_for(project_id)
|
27
|
+
|
28
|
+
# These methods require that the login/password user
|
29
|
+
# have admin privileges
|
30
|
+
|
31
|
+
# Get all projects
|
32
|
+
project_resource.all
|
33
|
+
|
34
|
+
# Find a project by ID (shortName in youTrack vernacular)
|
35
|
+
project_resource.find("TT")
|
36
|
+
|
37
|
+
# Delete a project
|
38
|
+
project_resource.destroy("TT")
|
39
|
+
|
40
|
+
# Create a project
|
41
|
+
# All are required except description
|
42
|
+
project_resource.create(
|
43
|
+
projectId: "CC",
|
44
|
+
projectName: "Cool Cats",
|
45
|
+
startingNumber: 4,
|
46
|
+
projectLeadLogin: "demo",
|
47
|
+
description: "A Project about really awesome cats"
|
48
|
+
)
|
data/examples/users.rb
ADDED
File without changes
|
@@ -4,7 +4,7 @@ module Youtrack
|
|
4
4
|
# ==================
|
5
5
|
# USER Methods
|
6
6
|
# ==================
|
7
|
-
def
|
7
|
+
def get_accessible_projects
|
8
8
|
get('project/all')
|
9
9
|
response.parsed_response
|
10
10
|
end
|
@@ -50,4 +50,4 @@ module Youtrack
|
|
50
50
|
end
|
51
51
|
|
52
52
|
end
|
53
|
-
end
|
53
|
+
end
|
data/lib/youtrack/version.rb
CHANGED
@@ -0,0 +1,28 @@
|
|
1
|
+
require "spec_helper"
|
2
|
+
|
3
|
+
describe Youtrack::User do
|
4
|
+
let(:users) do
|
5
|
+
client = Youtrack::Client.new do |c|
|
6
|
+
c.url = "https://example.com"
|
7
|
+
c.login = "test"
|
8
|
+
c.password = "test"
|
9
|
+
end
|
10
|
+
client.users
|
11
|
+
end
|
12
|
+
|
13
|
+
describe "api methods" do
|
14
|
+
it "#current" do
|
15
|
+
users.method(:current).arity.should eq(0)
|
16
|
+
end
|
17
|
+
|
18
|
+
it "#get_by_login" do
|
19
|
+
users.method(:get_by_login).arity.should eq(1)
|
20
|
+
end
|
21
|
+
|
22
|
+
it "#get_saved_searches_for" do
|
23
|
+
users.method(:get_saved_searches_for).arity.should eq(1)
|
24
|
+
end
|
25
|
+
|
26
|
+
end
|
27
|
+
|
28
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: youtrack
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- John Faucett
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-01-
|
11
|
+
date: 2014-01-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: httparty
|
@@ -124,6 +124,10 @@ files:
|
|
124
124
|
- LICENSE.txt
|
125
125
|
- README.md
|
126
126
|
- Rakefile
|
127
|
+
- examples/authentication.rb
|
128
|
+
- examples/issues.rb
|
129
|
+
- examples/projects.rb
|
130
|
+
- examples/users.rb
|
127
131
|
- features/client/new_client_session.feature
|
128
132
|
- features/step_definitions/client/client_steps.rb
|
129
133
|
- features/support/env.rb
|
@@ -141,6 +145,7 @@ files:
|
|
141
145
|
- spec/fixtures/login_header.json
|
142
146
|
- spec/spec_helper.rb
|
143
147
|
- spec/youtrack/client_spec.rb
|
148
|
+
- spec/youtrack/resources/user_spec.rb
|
144
149
|
- youtrack.gemspec
|
145
150
|
homepage: http://jwaterfaucett.github.io/youtrack/
|
146
151
|
licenses:
|
@@ -162,7 +167,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
162
167
|
version: '0'
|
163
168
|
requirements: []
|
164
169
|
rubyforge_project:
|
165
|
-
rubygems_version: 2.0.
|
170
|
+
rubygems_version: 2.0.3
|
166
171
|
signing_key:
|
167
172
|
specification_version: 4
|
168
173
|
summary: A Ruby REST API Client for JetBrains youTrack software
|
@@ -177,3 +182,4 @@ test_files:
|
|
177
182
|
- spec/fixtures/login_header.json
|
178
183
|
- spec/spec_helper.rb
|
179
184
|
- spec/youtrack/client_spec.rb
|
185
|
+
- spec/youtrack/resources/user_spec.rb
|