Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/zhisme/rails_orm_task
https://github.com/zhisme/rails_orm_task
Last synced: about 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/zhisme/rails_orm_task
- Owner: zhisme
- Created: 2024-11-10T20:57:44.000Z (2 months ago)
- Default Branch: master
- Last Pushed: 2024-11-10T21:48:20.000Z (2 months ago)
- Last Synced: 2024-11-10T22:32:03.451Z (2 months ago)
- Language: Ruby
- Size: 1.95 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## Установка
У вас должен быть установлен либо докер, либо руби локально.
```
bundle install
```## Задача
Необходимо реализовать аналог рельсового ORM с помощью чистого руби. Посмотрите сразу на тесты для понимания что должны возвращать объекты, чтобы придумать архитектуру.
Есть класс `User` и для него базовый класс `ApplicationRecord`. Внутри него замокан вызов в БД под методом `self.execute_sql`. Представим, что возвращаемое значение пришло нам из базы уже в виде хеша. Дальше мы должны определить свои методы `where`, `order`, которые будут работать с полученными данными.
Необязательно делать как в rails, можно продумать свое решение. Главное, чтобы все тесты были зелеными.## Тесты
Все тесты `user_spec.rb` должны проходить.## Запуск
Для нативного использования
`bundle exec rspec user_spec.rb`Для запуска через докер
`docker run -it $(docker build -q .)`