Skip to content

Latest commit

 

History

History
46 lines (33 loc) · 2.81 KB

TODO.md

File metadata and controls

46 lines (33 loc) · 2.81 KB

TODO list

Лист улучшений и фиксов, которые можно сделать в геме.

Enchancements

Убрать обязательную необходимость ActiveSupport.

Зачем

Не всем нужен ActiveSupport. Возможно кто-то захочет использовать gemfather не имея ActiveSupport в обвязке

Как

Для этого надо убрать проверки на blank? и подобный синтаксис из гема. А для инструментария сделать включение ActiveSupport если в гем передан какой-то флаг, что инструментарий там нужен.

Fixes

Пофиксить отсутсвие обнуления конфигов

Зачем

Сейчас есть проблема, если последовательно объявлять несколько клиентов, и одному клиенту нужен какой-то ключ из базового конфига, к примеру api_token, а другому нет

# Объявляем клиент гема с токеном
Gemfather::Client.new(api_token: 'test')

# Объявляем клиент гема без токена или с явной передачей nil
Gemfather::Client.new(api_token: nil)
Gemfather::Client.new

По факту ключ api_token всё равно будет не пуст, т.к. внутри def initialize в классе ApiGenerator::Client::Connection есть классовая переменная self.class.config, которая аккумулирет в себе конфиг.

Как

Вероятно, обнулять текущий конфиг до дефолтных значений перед инициализацией нового.

Пофиксить перетирание файла с тестом при генерации API-методов

Зачем

Сейчас есть проблема, если последовательно сгенерировать несколько API-методов через синтаксис, то на каждой генерации файл-заготовка под тесты будет пересоздан

bin/generate deals:create:post
# тут создается файл "./spec/api/deals_spec.rb"

bin/generate deals:remove:delete
# тут пересоздаётся файл "./spec/api/deals_spec.rb". Если между вызовами мы его заполнили - всё пропадёт.

Как

Усложнить генератор тестов, смотреть на то, что он уже был создан и как-то расширять. Либо просто не трогать файл если он есть.