I hereby claim:
- I am perezpaya on github.
- I am alejandro (https://keybase.io/alejandro) on keybase.
- I have a public key ASCUY5zgkveB26KuhKmCuqbrcC628h-8GnXttauiVLnEfwo
To claim this, I am signing this object:
I hereby claim:
To claim this, I am signing this object:
Our financial department is currently overloaded, they have lots of monthly expense reports waiting to be paid.
This reports consists of three different kind of expenses.
echo "Borja maricona" | |
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" | |
brew tap caskroom/cask | |
brew cask install iterm2 | |
brew cask install atom | |
sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)" |
import SpriteKit | |
enum GamepadButton { | |
case Left | |
case Right | |
} | |
class Gamepad: SKNode { | |
private var leftButton: SKSpriteNode! | |
private var rightButton: SKSpriteNode! |
import SpriteKit | |
class Joystick: SKNode { | |
private let substrate: SKSpriteNode | |
private let stick: SKSpriteNode | |
var resetAnimationDuration: NSTimeInterval = 0.3 | |
var velocity: CGPoint = .zero | |
var angularVelocity: CGFloat = 0 |
describe CompanyMarketUpdatesService, type: :service do | |
let(:notification_job) { object_spy(NotificationJob) } | |
let(:service) { described_class.new(notification_job: notification_job) | |
let(:apple) { Company.create!(name: 'Apple', stock_symbol: 'APPL', stock_volume: 22000000, stock_price: 100.0, number_of_shares: 100000000) } | |
it 'modifies company stockage information' do | |
updated_company = service.update(stock_symbol: apple.stock_symbol, stock_volume: 23000000, stock_price: 105.0) | |
expect(updated_company.stock_price).to eq(105.0) | |
expect(updated_company.stock_volume).to eq(23000000) | |
end |
class CompanySerializer < ApplicationSerializer | |
attributes :name, | |
:stock_symbol, | |
:stock_price, | |
:stock_volume, | |
:number_of_shares, | |
:volume_price, | |
:valuation | |
has_one :ceo |
class CompanyMarketUpdatesJob < ApplicationJob | |
queue_as :default | |
def perform(params) | |
ChoosenDatabase::Transaction.new do | |
CompanyMarketUpdatesService.new.update(params.deep_symbolize_keys) | |
end | |
end | |
end |
class CompanyMarketUpdatesService | |
def initialize(notification_job: NotificationJob.new) | |
@notification_job = notification_job | |
end | |
def update(params) | |
Company.find_by_stock_symbol(params[:stock_symbol])&.tap do |company| | |
should_notify = should_notify_stock_price_reduction?(company.stock_price, params[:stock_price]) | |
company.update(params) | |
notify_stock_price_reduction(company) if should_notify |
class CompanyMarketUpdatesController < ApplicationController | |
def update | |
CompanyMarketUpdatesJob.perform_later(update_params) | |
render json: {sucess: true}, status: 202 | |
end | |
private | |
def update_params | |
params.extract!(:stock_symbol, :stock_volume, :stock_price) |