rubypitaya 2.12.0 → 2.13.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 545395137fd805934f481bfd80cbe531579a968923a755b3ad715c2d585222d2
4
- data.tar.gz: 126432e40f15067cd120f36213819076ec2480c9d84365621b11aa8c918f2e4c
3
+ metadata.gz: 7cad906ad9159e4045b1ab90fd56ecb0985b6cc9e2478e8bfe63437967b223e4
4
+ data.tar.gz: a6d0684ac9693ad3336c7f45cac5acf6fdb79928abb0109d45538a168b004c21
5
5
  SHA512:
6
- metadata.gz: 0e2560d693758d519856c75f15acc9c8b66314b7fb27b4ebd2b866ae510770eff0f1ec287e80800d316efb904a2da02969f80d046311a6c0f284d75b2153d908
7
- data.tar.gz: 2392c071b2a0e0673faf4b155e510dc0c07645e5c9dd494eecc45189be92b4eabaafe9b4d82395055560c86aace25a0c5bf67afac30a3f8009b4d523561e7a25
6
+ metadata.gz: 4e5278e4d406a0a2fcfe6e5d29be2808c3f27a054d87e0b4fd5c3f6220ce3b454089b887954075f7f9109f24a3bdd127b90f8507e3851a0004767b84362cb0cf
7
+ data.tar.gz: da4c6fd074fa1c9a9e696bb192cb4c14a05649e107cfc652ce21c3e9205087017ac8d0ffbef8c119c6388ed89c9b290ac11b161e5c9d9992953025b10da589e7
@@ -1,6 +1,6 @@
1
1
  source "https://rubygems.org"
2
2
 
3
- gem 'rubypitaya', '2.12.0'
3
+ gem 'rubypitaya', '2.13.0'
4
4
 
5
5
  group :development do
6
6
  gem 'pry', '0.12.2'
@@ -84,7 +84,7 @@ GEM
84
84
  rspec-support (~> 3.8.0)
85
85
  rspec-support (3.8.3)
86
86
  ruby2_keywords (0.0.2)
87
- rubypitaya (2.12.0)
87
+ rubypitaya (2.13.0)
88
88
  activerecord (= 6.0.2)
89
89
  etcdv3 (= 0.10.2)
90
90
  eventmachine (= 1.2.7)
@@ -123,7 +123,7 @@ DEPENDENCIES
123
123
  listen (= 3.2.1)
124
124
  pry (= 0.12.2)
125
125
  rspec (= 3.8.0)
126
- rubypitaya (= 2.12.0)
126
+ rubypitaya (= 2.13.0)
127
127
 
128
128
  BUNDLED WITH
129
129
  1.17.2
@@ -1,49 +1,46 @@
1
- module MyApp
1
+ class AppInitializer < RubyPitaya::InitializerBase
2
2
 
3
- class AppInitializer < RubyPitaya::InitializerBase
3
+ # method: run
4
+ # parameter: initializer_content
5
+ # attributes:
6
+ # - bll
7
+ # - class: RubyPitaya::InstanceHolder
8
+ # - link: https://gitlab.com/LucianoPC/ruby-pitaya/-/blob/master/lib/rubypitaya/core/instance_holder.rb
9
+ # - methods:
10
+ # - add_instance(key, instance)
11
+ # - add any instance to any key
12
+ # - [](key)
13
+ # - get instance by key
14
+ # - redis
15
+ # - link: https://github.com/redis/redis-rb/
16
+ # - config
17
+ # - class: RubyPitaya::Config
18
+ # - link: https://gitlab.com/LucianoPC/ruby-pitaya/-/blob/master/lib/rubypitaya/core/config.rb
19
+ # - methods:
20
+ # - [](key)
21
+ # - get config file by config path
22
+ # - setup
23
+ # - class: RubyPitaya::Setup
24
+ # - link: https://gitlab.com/LucianoPC/ruby-pitaya/-/blob/master/lib/rubypitaya/core/setup.rb
25
+ # - methods:
26
+ # - [](key)
27
+ # - get config file by config path
28
+ # - log
29
+ # - class: Logger
30
+ # - link: https://ruby-doc.org/stdlib-2.6.4/libdoc/logger/rdoc/Logger.html
31
+ # - methods:
32
+ # - info
33
+ # - log information
4
34
 
5
- # method: run
6
- # parameter: initializer_content
7
- # attributes:
8
- # - bll
9
- # - class: RubyPitaya::InstanceHolder
10
- # - link: https://gitlab.com/LucianoPC/ruby-pitaya/-/blob/master/lib/rubypitaya/core/instance_holder.rb
11
- # - methods:
12
- # - add_instance(key, instance)
13
- # - add any instance to any key
14
- # - [](key)
15
- # - get instance by key
16
- # - redis
17
- # - link: https://github.com/redis/redis-rb/
18
- # - config
19
- # - class: RubyPitaya::Config
20
- # - link: https://gitlab.com/LucianoPC/ruby-pitaya/-/blob/master/lib/rubypitaya/core/config.rb
21
- # - methods:
22
- # - [](key)
23
- # - get config file by config path
24
- # - setup
25
- # - class: RubyPitaya::Setup
26
- # - link: https://gitlab.com/LucianoPC/ruby-pitaya/-/blob/master/lib/rubypitaya/core/setup.rb
27
- # - methods:
28
- # - [](key)
29
- # - get config file by config path
30
- # - log
31
- # - class: Logger
32
- # - link: https://ruby-doc.org/stdlib-2.6.4/libdoc/logger/rdoc/Logger.html
33
- # - methods:
34
- # - info
35
- # - log information
35
+ def run(initializer_content)
36
+ bll = initializer_content.bll
36
37
 
37
- def run(initializer_content)
38
- bll = initializer_content.bll
38
+ playerBll = PlayerBLL.new
39
39
 
40
- playerBll = PlayerBLL.new
41
-
42
- bll.add_instance(:player, playerBll)
43
- end
40
+ bll.add_instance(:player, playerBll)
41
+ end
44
42
 
45
- def self.path
46
- __FILE__
47
- end
43
+ def self.path
44
+ __FILE__
48
45
  end
49
46
  end
@@ -1,14 +1,11 @@
1
- module MyApp
2
-
3
- class PlayerBLL
1
+ class PlayerBLL
4
2
 
5
- def create_new_player(setup, config)
6
- name = config['initial_player']['name']
7
- gold = setup['initial_player.wallet.gold']
3
+ def create_new_player(setup, config)
4
+ name = config['initial_player']['name']
5
+ gold = setup['initial_player.wallet.gold']
8
6
 
9
- player = Player.new(name: name, gold: gold, user: User.new)
10
- player.save
11
- player
12
- end
7
+ player = Player.new(name: name, gold: gold, user: User.new)
8
+ player.save
9
+ player
13
10
  end
14
11
  end
@@ -1,25 +1,22 @@
1
- module MyApp
2
-
3
- class StatusCodes
1
+ class StatusCodes
4
2
 
5
- CODE_OK = RubyPitaya::StatusCodes::CODE_OK
3
+ CODE_OK = RubyPitaya::StatusCodes::CODE_OK
6
4
 
7
- ################
8
- ## Existent Codes
9
- ################
10
- ## Success codes
11
- #
12
- # RubyPitaya::StatusCodes::CODE_OK = 'RP-200'
13
- #
14
- #
15
- ## Error codes
16
- # RubyPitaya::StatusCodes::CODE_UNKNOWN = 'RP-000'
17
- # RubyPitaya::StatusCodes::CODE_HANDLER_NOT_FOUND = 'RP-001'
18
- # RubyPitaya::StatusCodes::CODE_ACTION_NOT_FOUND = 'RP-002'
19
- # RubyPitaya::StatusCodes::CODE_NOT_AUTHENTICATED = 'RP-003'
20
- # RubyPitaya::StatusCodes::CODE_AUTHENTICATION_ERROR = 'RP-004'
21
- #
22
- # RubyPitaya::StatusCodes::Connector::CODE_UNKNOWN = 'PIT-000'
23
- ################
24
- end
5
+ ################
6
+ ## Existent Codes
7
+ ################
8
+ ## Success codes
9
+ #
10
+ # RubyPitaya::StatusCodes::CODE_OK = 'RP-200'
11
+ #
12
+ #
13
+ ## Error codes
14
+ # RubyPitaya::StatusCodes::CODE_UNKNOWN = 'RP-000'
15
+ # RubyPitaya::StatusCodes::CODE_HANDLER_NOT_FOUND = 'RP-001'
16
+ # RubyPitaya::StatusCodes::CODE_ACTION_NOT_FOUND = 'RP-002'
17
+ # RubyPitaya::StatusCodes::CODE_NOT_AUTHENTICATED = 'RP-003'
18
+ # RubyPitaya::StatusCodes::CODE_AUTHENTICATION_ERROR = 'RP-004'
19
+ #
20
+ # RubyPitaya::StatusCodes::Connector::CODE_UNKNOWN = 'PIT-000'
21
+ ################
25
22
  end
@@ -1,16 +1,13 @@
1
- module MyApp
1
+ class HelloWorldHandler < RubyPitaya::HandlerBase
2
2
 
3
- class HelloWorldHandler < RubyPitaya::HandlerBase
3
+ non_authenticated_actions :sayHello
4
4
 
5
- non_authenticated_actions :sayHello
6
-
7
- def sayHello
8
- response = {
9
- code: 'RP-200',
10
- data: {
11
- message: 'Hello!'
12
- }
5
+ def sayHello
6
+ response = {
7
+ code: 'RP-200',
8
+ data: {
9
+ message: 'Hello!'
13
10
  }
14
- end
11
+ }
15
12
  end
16
- end
13
+ end
@@ -1,82 +1,79 @@
1
- module MyApp
2
-
3
- class PlayerHandler < RubyPitaya::HandlerBase
1
+ class PlayerHandler < RubyPitaya::HandlerBase
4
2
 
5
- # class: HandlerBase
6
- # attributes:
7
- # - @bll
8
- # - class: InstanceHolder
9
- # - methods:
10
- # - [](key)
11
- # - info: get bll by key
12
- #
13
- # - @redis
14
- # - link: https://github.com/redis/redis-rb/
15
- #
16
- # - @config
17
- # - info: Hash with config json files inside of 'app/config'
18
- # - example:
19
- # Given you have the following file "app/config/initial_player.json"
20
- # And this json content is {'name': 'Guest'}
21
- # And you can get the initial player name
22
- # Then you can run the following code: @config['initial_player']['name']
23
- #
24
- # - @params
25
- # - info: Special hash with the request parameters
26
- # - link: https://api.rubyonrails.org/classes/ActionController/Parameters.html
27
- #
28
- # - @session
29
- # - attributes:
30
- # - id :: session id
31
- # - uid :: user id
32
- # - data :: session data
33
- # - metadata :: session data
34
- # - frontend_id :: connector server id
35
- #
36
- # - @postman
37
- # - info: Send messages to server and clients
38
- # - methods:
39
- # - bind_session(session)
40
- # - info:
41
- # Send a session to connector, you can use to set the userId
42
- # of the session, for example you can set an userId on
43
- # @session, like `@session.uid = '123'`, and then you can
44
- # bind this session with `@postman.bind_session(@session)`
3
+ # class: HandlerBase
4
+ # attributes:
5
+ # - @bll
6
+ # - class: InstanceHolder
7
+ # - methods:
8
+ # - [](key)
9
+ # - info: get bll by key
10
+ #
11
+ # - @redis
12
+ # - link: https://github.com/redis/redis-rb/
13
+ #
14
+ # - @config
15
+ # - info: Hash with config json files inside of 'app/config'
16
+ # - example:
17
+ # Given you have the following file "app/config/initial_player.json"
18
+ # And this json content is {'name': 'Guest'}
19
+ # And you can get the initial player name
20
+ # Then you can run the following code: @config['initial_player']['name']
21
+ #
22
+ # - @params
23
+ # - info: Special hash with the request parameters
24
+ # - link: https://api.rubyonrails.org/classes/ActionController/Parameters.html
25
+ #
26
+ # - @session
27
+ # - attributes:
28
+ # - id :: session id
29
+ # - uid :: user id
30
+ # - data :: session data
31
+ # - metadata :: session data
32
+ # - frontend_id :: connector server id
33
+ #
34
+ # - @postman
35
+ # - info: Send messages to server and clients
36
+ # - methods:
37
+ # - bind_session(session)
38
+ # - info:
39
+ # Send a session to connector, you can use to set the userId
40
+ # of the session, for example you can set an userId on
41
+ # @session, like `@session.uid = '123'`, and then you can
42
+ # bind this session with `@postman.bind_session(@session)`
45
43
 
46
- non_authenticated_actions :authenticate
44
+ non_authenticated_actions :authenticate
47
45
 
48
- def authenticate
49
- user_id = @params[:userId]
46
+ def authenticate
47
+ user_id = @params[:userId]
50
48
 
51
- player = Player.find_by_user_id(user_id)
52
- player = @bll[:player].create_new_player(@setup, @config) if player.nil?
49
+ player = Player.find_by_user_id(user_id)
50
+ player = @bll[:player].create_new_player(@setup, @config) if player.nil?
53
51
 
54
- @session.uid = player.user_id
52
+ @session.uid = player.user_id
55
53
 
56
- bind_session_response = @postman.bind_session(@session)
54
+ bind_session_response = @postman.bind_session(@session)
57
55
 
58
- unless bind_session_response.dig(:error, :code).nil?
59
- return response = {
60
- code: RubyPitaya::StatusCodes::CODE_AUTHENTICATION_ERROR,
61
- msg: 'Error to authenticate',
62
- }
63
- end
64
-
65
- response = {
66
- code: StatusCodes::CODE_OK,
67
- data: player.to_hash,
56
+ unless bind_session_response.dig(:error, :code).nil?
57
+ return response = {
58
+ code: RubyPitaya::StatusCodes::CODE_AUTHENTICATION_ERROR,
59
+ msg: 'Error to authenticate',
68
60
  }
69
61
  end
70
62
 
71
- def getInfo
72
- user_id = @session.uid
63
+ response = {
64
+ code: StatusCodes::CODE_OK,
65
+ data: player.to_hash,
66
+ }
67
+ end
73
68
 
74
- player = Player.find_by_user_id(user_id)
69
+ def getInfo
70
+ user_id = @session.uid
75
71
 
76
- response = {
77
- code: StatusCodes::CODE_OK,
78
- data: player.to_hash,
79
- }
80
- end
72
+ player = Player.find_by_user_id(user_id)
73
+
74
+ response = {
75
+ code: StatusCodes::CODE_OK,
76
+ data: player.to_hash,
77
+ }
81
78
  end
82
79
  end
@@ -1,19 +1,16 @@
1
1
  require 'active_record'
2
2
 
3
- module MyApp
3
+ class Player < ActiveRecord::Base
4
4
 
5
- class Player < ActiveRecord::Base
5
+ belongs_to :user
6
6
 
7
- belongs_to :user
7
+ validates_presence_of :name, :gold, :user
8
8
 
9
- validates_presence_of :name, :gold, :user
10
-
11
- def to_hash
12
- {
13
- name: name,
14
- gold: gold,
15
- userId: user_id,
16
- }
17
- end
9
+ def to_hash
10
+ {
11
+ name: name,
12
+ gold: gold,
13
+ userId: user_id,
14
+ }
18
15
  end
19
16
  end
@@ -6,6 +6,6 @@ class Routes < RubyPitaya::RoutesBase
6
6
  # - Defines a new name to handler
7
7
 
8
8
  def setup
9
- # match('helloHandler', to: 'MyApp::HelloWorldHandler')
9
+ # match('helloHandler', to: 'HelloWorldHandler')
10
10
  end
11
11
  end
@@ -1,5 +1,5 @@
1
1
  Given(/^[Tt]he [Pp]layer ["'](.+)["'] is authenticated$/) do |player_name|
2
- player = MyApp::Player.find_by_name(player_name)
2
+ player = Player.find_by_name(player_name)
3
3
  @handler_helper.authenticate(player.user_id)
4
4
  end
5
5
 
@@ -7,6 +7,6 @@ Given(/^[Tt]he following [Pp]layer[s]*[:]*$/) do |table|
7
7
  player_hashes = table.hashes
8
8
  player_hashes.each do |player_hash|
9
9
  player_hash[:user] = User.new(id: player_hash[:user_id])
10
- MyApp::Player.create(player_hash)
10
+ Player.create(player_hash)
11
11
  end
12
12
  end
@@ -1,19 +1,16 @@
1
1
  require 'spec_helper'
2
2
 
3
- module MyApp
3
+ RSpec.describe 'HelloWorldHandler', type: :request do
4
+ context 'sayHello' do
5
+ it 'success' do
6
+ request("rubypitaya.helloWorldHandler.sayHello")
4
7
 
5
- RSpec.describe 'HelloWorldHandler', type: :request do
6
- context 'sayHello' do
7
- it 'success' do
8
- request("rubypitaya.helloWorldHandler.sayHello")
8
+ expected_response = {
9
+ code: 'RP-200',
10
+ data: { message: 'Hello!' }
11
+ }
9
12
 
10
- expected_response = {
11
- code: 'RP-200',
12
- data: { message: 'Hello!' }
13
- }
14
-
15
- expect(response).to eq(expected_response)
16
- end
13
+ expect(response).to eq(expected_response)
17
14
  end
18
15
  end
19
16
  end
@@ -1,50 +1,47 @@
1
1
  require 'spec_helper'
2
2
 
3
- module MyApp
3
+ RSpec.describe 'PlayerHandler', type: :request do
4
+ context 'authenticate' do
5
+ it 'create_new_user' do
6
+ setup = {'initial_player' => {'wallet' => {'gold' => 10}}}
7
+ config = {'initial_player' => {'name' => 'Guest'}}
4
8
 
5
- RSpec.describe 'PlayerHandler', type: :request do
6
- context 'authenticate' do
7
- it 'create_new_user' do
8
- setup = {'initial_player' => {'wallet' => {'gold' => 10}}}
9
- config = {'initial_player' => {'name' => 'Guest'}}
9
+ set_setup(setup)
10
+ set_config(config)
10
11
 
11
- set_setup(setup)
12
- set_config(config)
12
+ params = {}
13
+ request("rubypitaya.playerHandler.authenticate", params)
13
14
 
14
- params = {}
15
- request("rubypitaya.playerHandler.authenticate", params)
15
+ player = Player.last
16
16
 
17
- player = ::MyApp::Player.last
17
+ expect(response[:code]).to eq('RP-200')
18
+ expect(response[:data][:name]).to eq('Guest')
19
+ expect(response[:data][:gold]).to eq(10)
18
20
 
19
- expect(response[:code]).to eq('RP-200')
20
- expect(response[:data][:name]).to eq('Guest')
21
- expect(response[:data][:gold]).to eq(10)
22
-
23
- expect(::User.count).to eq(1)
24
- expect(::MyApp::Player.count).to eq(1)
25
- expect(player.name).to eq('Guest')
26
- expect(player.gold).to eq(10)
27
- end
21
+ expect(User.count).to eq(1)
22
+ expect(Player.count).to eq(1)
23
+ expect(player.name).to eq('Guest')
24
+ expect(player.gold).to eq(10)
28
25
  end
26
+ end
29
27
 
30
- context 'getInfo' do
31
- it 'success' do
32
- player = ::MyApp::Player.create(name: 'Someone', gold: 12, user: User.new)
28
+ context 'getInfo' do
29
+ it 'success' do
30
+ player = Player.create(name: 'Someone', gold: 12, user: User.new)
33
31
 
34
- authenticate(player.user_id)
32
+ authenticate(player.user_id)
35
33
 
36
- request("rubypitaya.playerHandler.getInfo")
34
+ request("rubypitaya.playerHandler.getInfo")
37
35
 
38
- expect(response[:code]).to eq('RP-200')
39
- expect(response[:data]).to eq(player.to_hash)
40
- end
36
+ expect(response[:code]).to eq('RP-200')
37
+ expect(response[:data]).to eq(player.to_hash)
38
+ end
41
39
 
42
- it 'error_not_authenticated' do
43
- request("rubypitaya.playerHandler.getInfo")
40
+ it 'error_not_authenticated' do
41
+ request("rubypitaya.playerHandler.getInfo")
44
42
 
45
- expect(response[:code]).to eq(RubyPitaya::StatusCodes::CODE_NOT_AUTHENTICATED)
46
- expect(response[:msg]).to eq('Not authenticated')
47
- end
43
+ expect(response[:code]).to eq(RubyPitaya::StatusCodes::CODE_NOT_AUTHENTICATED)
44
+ expect(response[:msg]).to eq('Not authenticated')
48
45
  end
49
46
  end
50
47
  end
@@ -19,7 +19,6 @@ module RubyPitaya
19
19
  end
20
20
 
21
21
  def config_core_override=(value)
22
- @config_mock = value
23
22
  end
24
23
 
25
24
  def add(key, value)
@@ -1,3 +1,3 @@
1
1
  module RubyPitaya
2
- VERSION = '2.12.0'
2
+ VERSION = '2.13.0'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rubypitaya
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.12.0
4
+ version: 2.13.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Luciano Prestes Cavalcanti