
Dmitriy
28.07.2017
12:56:48
твое решение видимо - округляй как хочешь

Gleb
28.07.2017
12:57:55
вот вроде рельсы и руби это про "все уже решено, используй готовое", а как до дела доходит надо велосипедить )

Dmitriy
28.07.2017
12:58:18
лол

Google

Fedor
28.07.2017
12:58:41
есть такой забавный кейс, магазин любит округлять копейки в чеке
но не в позициях
что бы если по позициям рублик набрался, то его все-таки получить
а налоговая потом спрашивает а почему у вас в позициях одно, а в чеке - другое ))))
и вот ХЗ как с этим говном жить

v
28.07.2017
13:00:18

Dmitriy
28.07.2017
13:00:19

v
28.07.2017
13:01:04

Fedor
28.07.2017
13:01:14
и тупейших заказчиков, которые не знают что хотят, что им надо и что им можно

ojab
28.07.2017
13:07:41

Gleb
28.07.2017
13:08:52
Задача скорее в поиске готового гибкого инструмента, который умеет округлять рубли в сторону, в которую его попросят, а лучше еще поддерживающего свои кастомные правила

Google

Fedor
28.07.2017
13:09:57
слишком неопределенные условия
а конкретные ты можешь задать при помощи условных операторов

ojab
28.07.2017
13:12:01
http://www.rubydoc.info/gems/money/Money/Bank/Base#rounding_method-instance_method ну вот есть rounding_method, например
который как раз управляет округлением
exchange_with принимает блок для округления, опять же, если не хочется отдельные банки создавать

v
28.07.2017
13:19:08
и округляет куда попросишь, и кастомные правила есть, если я не ошибаюсь
вопрос в том, надо ли оно тебе, и не достаточно ли будет пары методов для манипуляций с Bigint

Sergey
28.07.2017
14:33:29
Почему я не могу вставить мок в определение метода другого мока?
wallet = Minitest::Mock.new
new_transaction = Minitest::Mock.new
def money.spend!(price); new_transaction; end
# => "unmocked method :new_transaction, expected one of []"

No
28.07.2017
14:35:12
Ребята. 5.1 рельса. Можно отучить webpacker компилить ассеты на каждом деплое? Нужно чтобы перекомпиливал только если я что-то меняю в них

ojab
28.07.2017
14:35:54

Sergey
28.07.2017
14:37:18
ojab у меня метод возвращает объект. Потом я у этого объекта вызываю другой метод
Я хочу вернуть из первого метода мок вместо объекта и проверить что у этого мока вызывается метод2
т.е. он даже не то что возвращает, а создает

ojab
28.07.2017
14:43:00
прозреваю что тебе нужен money.stub :spend!
money — тестируемый инстанс?

Sergey
28.07.2017
14:51:40
это инстанс с таким названием
вместо него пусть будет любое слово

ojab
28.07.2017
14:53:24
не стоит в тестах модифицировать тестируемые объекты, всё поведение должно через stub'ы/mock'и изменяться

Sergey
28.07.2017
14:53:59
так я не модифицирую ничего, инстанс я тестирую отдельно, мне нужно протестировать контроллер

ojab
28.07.2017
14:54:07
ну и да, здесь нужно заstub'ить метод или то что вызывается в new_transaction

Google

Sergey
28.07.2017
14:54:13
для этого нужно вернуть создаваемый объект и проверить что у него обновляется ассоциация
в new_transaction вызывается update_attribute
для него я написал:
new_transaction.expect(:update_attribute, true, [Object])

ojab
28.07.2017
14:56:17
тебе нужно stub'ить вызов money.spend!, если ты хочешь при вызове money.spend! возвращать что-то тестовое

Sergey
28.07.2017
15:08:18
ojab ok, я убрал определение метода.
company.expect(:wallet, wallet)
wallet.expect(:spend!, new_transaction, [Integer])
new_transaction.expect(:update_attribute, true, [:payment, payment])
теперь непонятная ошибка:
unmocked method :==, expected one of []

ojab
28.07.2017
15:10:33
хз, кидай код вместе с backtrace'ом в gist

Sergey
28.07.2017
15:14:18
блин
надо было просто в expect засунуть Symbol и Object
очень понятный текст ошибки у мини теста)
ojab спасибо за поддержку)

Илья
28.07.2017
18:23:08
Добрый вечер!
Есть тут люди, которые занимаются чат-ботами для Facebook?
Есть интересное предложение.
Пишите в лс: @sozora1

Mikhail
29.07.2017
00:31:11
#<ActionController::UnfilteredParameters: unable to convert unpermitted parameters to hash>
Кто нибудь такую бяку встречал?
версия рельсы 5.1.2.
версия rspec 3.6.0
запускаю запрос в контроллер
process :index, method: :get, format: :json, params: { field: Model.id }
Возвращает не то что надо.
Ставлю binding.pry в контроллер. Чекаю params И такая дичь.
Добавлю что проект сгенерен --api

Mikhail
29.07.2017
00:33:46
апи онли

Evgeniy
29.07.2017
00:46:20

Mikhail
29.07.2017
00:46:27
Ничего не делаю
в том то и дело( Думал может конфиг перехвачу с фиксом
в 5.1 убрали возможность мержить в request
и теперь парамы нельзя делать to_h и зашивать в них чтонить свое
Ссылаясь на безопасность. Просто всегда работало. А ща натруженное годами вылезло в баг. Явно тесты где то to_h мутят. Просто копать байбагом долго и муторно(

Evgeniy
29.07.2017
00:48:20
да, это логично

Google

Mikhail
29.07.2017
00:49:10
Я не работал с 5.1 еще, также может в api-only моде чето. Хз(
короче чуть не обнова, вечный гемор)

Evgeniy
29.07.2017
01:01:33
покажи тест и контроллер

Mikhail
29.07.2017
01:18:17
Я написал выше
Другого там нет
?
class ProductsController < ApplicationController
def show
binding.pry
end
end
require 'rails_helper'
RSpec.describe ProductsController, type: :controller do
let!(:product) { create(:product) }
describe 'GET #show' do
it '' do
process :show, method: :get, format: :json, params: { id: product.id }
end
end
end

Admin
ERROR: S client not available

Mikhail
29.07.2017
01:23:09
странная штука
ладно. Надо запустить тоже самое в обычном моде
или на другой версии

Nikita
29.07.2017
07:03:48
Добрый день господам, как у опытных разработчиков хотел бы у вас спросить, стоит ли использовать редактор Vim, использовал ли его кто-то, и если можно, аргументы в пользу Vim'а. Заранее спасибо

109-й
29.07.2017
07:07:36
Я сам пользуюсь Sublime, но вим тоже очень хорош. Правда порог входа в вим значительно выше, чем в Sublime. Там есть много плюшекб но большинство из них нужно подключать самому. Из коробки там не так много. Вим быстрый и удобный. Легко расширяемый. Но если Вы только начинаете свой путь програмиста, мне кажется, вам легче было бы использовать Sublime.

Nikita
29.07.2017
07:08:38
Эх, жаль на мою линукс не хочет идти нормальный брекетс, я им 2 года пользовался еще на винде

109-й
29.07.2017
07:10:34
Попробуй познакомиться с Sublime или Atom. Что там что там есть море плагинов для расширения и много крутых фич.

Nikita
29.07.2017
07:22:23
та я саблаймом пользуюсь счас, хочу плагинов поустанавливать (если они там есть) вот счас ищу как

109-й
29.07.2017
07:28:02
Есть. И их оочень много. Установи себе Package control

Artur
29.07.2017
07:51:47
Sublime, это что-то из 2012 года, да? Что-то знакомое.

Sergey
29.07.2017
08:20:11

Google

Artur
29.07.2017
08:20:42

Vitaliy
29.07.2017
08:36:04
В базе знаний новая заметка - Настраиваем Sublime Text для работы
Стек: Ruby, Rails, Slim, Sass, CoffeeScript, ES6, JSX, React, Git. Мой личный набор плагинов и конфигов.
https://notion.so/Sublime-Text-14b5d9bafbd54559894d2dcdb6ab42d4
А если занимаетесь фронтендом - для вас существует подобная заметка на гитхабе.

Fedor
29.07.2017
08:41:26
я бы еще добавил color_scheme_selector, git_savvy, rails_migrations_list

Vitaliy
29.07.2017
08:44:38
? глянул, интересное. Цветовая схема у меня меняется редко, последний раз сменилась год назад (dracula). В миграции вхожу по Ctrl+P. А для гита использую gui-клиент git cola

Fedor
29.07.2017
08:46:04
ну мне в миграциях часто нужна найти третью с конца, а какая она неизвестно, и копаться в панели лень, а тут именно список реверсивный есть
git savvy мне нравится всякими git log for current branch and current file
удобно смотреть изменяния и править на лету
а со схемой вообще смешно, у нас в офисе отвалились жалюзи и какое-то время экран сильно бликова, приходилось переключаться на светлую тему ) А когда солнце уходило обратно на темную, которая мне комфортнее
вот и завел такой плагин
сам уже давно им не пользовался но штука прикольная

Vitaliy
29.07.2017
08:48:34
Годно

Anton
29.07.2017
09:38:54

Evgeniy
29.07.2017
10:33:00

Aleksandr
29.07.2017
13:19:59
Бек пишу в виме. Из главных для меня плюсов:
Удобная и быстрая навигация, при желании можно достаточно просто что угодно приделать, он легкий, чтобы писать мне достаточно консоли. Даже удаленно

v
29.07.2017
13:26:49
а фронт почему не в виме?

Aleksandr
29.07.2017
13:38:31
Я в принципе редко сравнительно его пишу. А так я пришел к выводу, что когда мне нужно больше, чем мелкие правки- мне удобнее иде (webstorm) просто потому, что я его объективно хуже знаю. Потому няшки полезны. Ну и плюс лень вим настраивать под редкие задачи

Nikita
29.07.2017
14:38:10
from /app/vendor/bundle/ruby/2.3.0/gems/railties-5.1.2/lib/rails/commands.rb:16:in `<top (required)>'
from bin/rails:9:in `require'
from bin/rails:9:in `<main>'
на хероку в логах выдает такие ошибки
ни у кого не было, никто не знает, что это значит?