Skip to content
This repository was archived by the owner on Oct 26, 2022. It is now read-only.

Commit 9618cab

Browse files
committed
Move sequel setup into special folder
1 parent 828b8c7 commit 9618cab

File tree

9 files changed

+33
-31
lines changed

9 files changed

+33
-31
lines changed

Diff for: bin/console

+1-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ end
2020

2121
# required after GraphQL::Cache initialization because dev
2222
# schema uses cache and logger objects from it.
23-
require_relative '../test_schema'
23+
require_relative '../test_schema/sequel/init'
2424

2525
require "pry"
2626
Pry.start

Diff for: spec/spec_helper.rb

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
require 'active_record' # should be before graphql-ruby
1+
require 'active_record' # should be required before graphql-ruby
22
require 'bundler/setup'
33
require 'pry'
44

@@ -36,8 +36,9 @@
3636

3737
# required after GraphQL::Cache initialization because dev
3838
# schema uses cache and logger objects from it.
39-
require_relative '../test_schema'
40-
require_relative '../test_schema/active_record/init'
39+
%i[sequel active_record].each do |orm|
40+
require_relative "../test_schema/#{orm}/init"
41+
end
4142

4243
config.include TestMacros
4344
config.extend TestMacros::ClassMethods

Diff for: test_schema/active_record/factories.rb

-18
This file was deleted.

Diff for: test_schema/active_record/init.rb

+3-2
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@
33
require_relative './schema'
44
require_relative './models'
55
require_relative './graphql_schema'
6-
require_relative './factories'
6+
require_relative '../factories'
77

88
ActiveRecord::Base.logger = GraphQL::Cache.logger
9-
AR::Factories.bootstrap
9+
Factories.new(order: AR::Order, customer: AR::Customer).bootstrap
10+

Diff for: test_schema/factories.rb

+16-7
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,25 @@
11
class Factories
2-
def self.bootstrap
3-
customer = Customer.create(
2+
def initialize(order:, customer:)
3+
@order_class = order
4+
@customer_class = customer
5+
end
6+
7+
def bootstrap
8+
customer = customer_class.create(
49
display_name: 'Michael',
510
611
)
712

8-
Order.create(customer_id: customer.id, number: new_num, total_price_cents: 1399)
9-
Order.create(customer_id: customer.id, number: new_num, total_price_cents: 1399)
10-
Order.create(customer_id: customer.id, number: new_num, total_price_cents: 1399)
13+
order_class.create(customer_id: customer.id, number: new_num, total_price_cents: 1399)
14+
order_class.create(customer_id: customer.id, number: new_num, total_price_cents: 1399)
15+
order_class.create(customer_id: customer.id, number: new_num, total_price_cents: 1399)
1116
end
1217

13-
def self.new_num
14-
Order.count + 1000
18+
def new_num
19+
order_class.count + 1000
1520
end
21+
22+
private
23+
24+
attr_reader :order_class, :customer_class
1625
end
File renamed without changes.

Diff for: test_schema/sequel/init.rb

+9
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
require 'logger'
2+
3+
require_relative './schema'
4+
require_relative './models'
5+
require_relative './graphql_schema'
6+
require_relative '../factories'
7+
8+
Factories.new(order: Order, customer: Customer).bootstrap
9+
DB.loggers = [GraphQL::Cache.logger]
File renamed without changes.
File renamed without changes.

0 commit comments

Comments
 (0)