Skip to content

Commit ac01edb

Browse files
committed
refactor: moving the configuration to the file itself
1 parent 575733e commit ac01edb

File tree

4 files changed

+33
-20
lines changed

4 files changed

+33
-20
lines changed

Rakefile

+8
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,18 @@ task :s do
1212
exec 'ruby app.rb -p 3000'
1313
end
1414

15+
task :server do
16+
exec 'ruby app.rb -p 3000'
17+
end
18+
1519
task :t do
1620
exec 'rspec'
1721
end
1822

23+
task :test do
24+
exec 'rspec'
25+
end
26+
1927
task :lint do
2028
exec 'rubocop'
2129
end

app.rb

+3-20
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,5 @@
11
# frozen_string_literal: true
22

3-
require 'sinatra'
4-
require 'sinatra/activerecord'
5-
require 'dotenv/load'
6-
require 'byebug'
7-
require 'zeitwerk'
8-
9-
set :database, { adapter: 'sqlite3', database: ENV.fetch('DB_PATH', nil) }
10-
11-
loader = Zeitwerk::Loader.new
12-
loader.push_dir("#{__dir__}/app/")
13-
loader.push_dir("#{__dir__}/app/domain/models")
14-
loader.push_dir("#{__dir__}/app/domain/errors")
15-
loader.push_dir("#{__dir__}/app/domain/repositories")
16-
loader.push_dir("#{__dir__}/app/usecases")
17-
loader.push_dir("#{__dir__}/app/infra/controllers")
18-
loader.push_dir("#{__dir__}/app/infra/serializers")
19-
loader.push_dir("#{__dir__}/lib")
20-
loader.setup
21-
22-
require './app/infra/routes'
3+
require_relative 'config/sinatra'
4+
require_relative 'config/zeitwerk'
5+
require_relative 'app/infra/routes'

config/sinatra.rb

+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
# frozen_string_literal: true
2+
3+
require 'sinatra'
4+
require 'sinatra/activerecord'
5+
require 'dotenv/load'
6+
require 'byebug'
7+
8+
set :database, { adapter: 'sqlite3', database: ENV.fetch('DB_PATH', nil) }

config/zeitwerk.rb

+14
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
# frozen_string_literal: true
2+
3+
require 'zeitwerk'
4+
5+
loader = Zeitwerk::Loader.new
6+
loader.push_dir('app/')
7+
loader.push_dir('app/domain/models')
8+
loader.push_dir('app/domain/errors')
9+
loader.push_dir('app/domain/repositories')
10+
loader.push_dir('app/usecases')
11+
loader.push_dir('app/infra/controllers')
12+
loader.push_dir('app/infra/serializers')
13+
loader.push_dir('lib')
14+
loader.setup

0 commit comments

Comments
 (0)