pushould 0.0.1 → 0.0.2

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 3d3838f8903d8ee8f6385c1650797b5b75be3a1d
4
- data.tar.gz: 3eb73f4fb5438e780e08d37cb4ce3e68dcbd0a84
3
+ metadata.gz: d1e40d7a039bc65389a03bc8c08b79362475d216
4
+ data.tar.gz: e6dad968a413c106eda22beb1c49aa6142dd6357
5
5
  SHA512:
6
- metadata.gz: 0eb0f5b53d96ac5590639c0e812b8d4089fb5f19ce3d12c3212d1d1411830c64251e7a7f0d9da52283bcdfb3afe241c36ef97bde847f68da3816d20dbc455abd
7
- data.tar.gz: 5609c796370e34d6c2acde9b96f6531c84ff16714ea631dd388ab24c81fb17b7ec61974c9a18756249adc9208f2a664d4496b59a82c277c6c6613057ef3f6c81
6
+ metadata.gz: 23b857b38f97de73c780e351e9be975f509b02b06ee8378460ac08e789d8b6d432033db5074c75e8ee23dd9f7a6f2e862806535c5c98ff28631de0d6b0bb5cc0
7
+ data.tar.gz: d60ffd286a6898d007f720095aa3cb1f4f53d1a68f7e2ac17d1d0bfb596b756bb990caeb1bf0bd336928bbd72c2cda1ada1c4d103b127372a309fcddc3504700
@@ -0,0 +1,4 @@
1
+ #!/usr/bin/env ruby
2
+ require 'pushould'
3
+
4
+ Pushould::CLI.start
@@ -1,4 +1,5 @@
1
1
  require "pushould/version"
2
+ require "pushould/cli"
2
3
 
3
4
  module Pushould
4
5
  # Your code goes here...
@@ -0,0 +1,76 @@
1
+ require "pushould"
2
+ require "rest-client"
3
+ require "thor"
4
+ require "json"
5
+
6
+ module Pushould
7
+ class CLI < Thor
8
+ desc "signin", "sign in to pushould.com"
9
+ def signin
10
+ account = validate_account
11
+ return puts "Error: #{account[:message]}" if account[:status] == 'error'
12
+ email = account[:email]
13
+ password = account[:password]
14
+ request = RestClient::Resource.new("https://pushould.com/signin?email=#{email}&password=#{password}", OpenSSL::SSL::VERIFY_NONE)
15
+ response = request.get(parms: { email: email, password: password })
16
+ data = JSON.parse(response)
17
+ return puts "Error: #{data['error']}" if data['error']
18
+ echo_data(data) if data['url'] && data['client_token'] && data['server_token']
19
+ end
20
+
21
+ desc "signup", "sign up to pushould.com"
22
+ def signup
23
+ account = validate_account
24
+ return puts "Error: #{account[:message]}" if account[:status] == 'error'
25
+ email = account[:email]
26
+ password = account[:password]
27
+ request = RestClient::Resource.new("https://pushould.com/signup?email=#{email}&password=#{password}", OpenSSL::SSL::VERIFY_NONE)
28
+ response = request.get(parms: { email: email, password: password })
29
+ data = JSON.parse(response)
30
+ return puts "Error: #{data['error']}" if data['error']
31
+ echo_data(data) if data['url'] && data['client_token'] && data['server_token']
32
+ end
33
+
34
+ desc "update", "update token on pushould.com"
35
+ def update
36
+ account = validate_account
37
+ return puts "Error: #{account[:message]}" if account[:status] == 'error'
38
+ email = account[:email]
39
+ password = account[:password]
40
+ request = RestClient::Resource.new("https://pushould.com/update_token?email=#{email}&password=#{password}", OpenSSL::SSL::VERIFY_NONE)
41
+ response = request.get(parms: { email: email, password: password })
42
+ data = JSON.parse(response)
43
+ return puts "Error: #{data['error']}" if data['error']
44
+ echo_data(data) if data['url'] && data['client_token'] && data['server_token']
45
+ end
46
+
47
+ private
48
+
49
+ def send_request(request, email, password)
50
+ response = request.get(params: { email: email, password: password })
51
+ return JSON.parse(response)
52
+ end
53
+
54
+ def validate_account
55
+ email = ask("Email: ")
56
+ password = ask("Password (hidden) :", echo: false)
57
+ puts "\n"
58
+ return { status: 'error', message: 'email or password is invalid.' } if email == '' || password == ''
59
+ return { status: 'success', email: email, password: password }
60
+ end
61
+
62
+ def echo_data(data)
63
+ url = data['url']
64
+ client_token = data['client_token']
65
+ server_token = data['server_token']
66
+ puts "\nurl:"
67
+ puts "#{url}\n"
68
+
69
+ puts "\nclient_token:"
70
+ puts "#{client_token}\n"
71
+
72
+ puts "\nserver_token:"
73
+ puts "#{server_token}"
74
+ end
75
+ end
76
+ end
@@ -1,3 +1,3 @@
1
1
  module Pushould
2
- VERSION = "0.0.1"
2
+ VERSION = "0.0.2"
3
3
  end
@@ -22,4 +22,8 @@ Gem::Specification.new do |spec|
22
22
  spec.add_development_dependency "bundler", "~> 1.10"
23
23
  spec.add_development_dependency "rake", "~> 10.0"
24
24
  spec.add_development_dependency "rspec"
25
+
26
+ spec.add_dependency "rest-client"
27
+ spec.add_dependency "json"
28
+ spec.add_dependency "thor"
25
29
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pushould
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yu Hoshino
@@ -52,6 +52,48 @@ dependencies:
52
52
  - - ">="
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: rest-client
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :runtime
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: json
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: thor
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :runtime
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
55
97
  description: Pushould Command Line Interface
56
98
  email:
57
99
  - yhoshino11@gmail.com
@@ -68,8 +110,10 @@ files:
68
110
  - README.md
69
111
  - Rakefile
70
112
  - bin/console
113
+ - bin/pushould
71
114
  - bin/setup
72
115
  - lib/pushould.rb
116
+ - lib/pushould/cli.rb
73
117
  - lib/pushould/version.rb
74
118
  - pushould.gemspec
75
119
  homepage: https://pushould.com