Sha256: aa227301f98522bafa7c9ff2f6b7c67043ace94742da7f7eeabfca06e5ae57ca
Contents?: true
Size: 1.03 KB
Versions: 2
Compression:
Stored size: 1.03 KB
Contents
RSpec.shared_context 'users and tasks' do include_context 'users' let(:tasks) { container.relations[:tasks] } before do inferrable_relations.concat %i(tasks tags task_tags) end before do |example| ctx = self conn.create_table :tasks do primary_key :id foreign_key :user_id, :users String :title, unique: true constraint(:title_length) { char_length(title) > 1 } if ctx.postgres?(example) constraint(:title_length) { length(title) > 1 } if ctx.sqlite?(example) end conn.create_table :tags do primary_key :id String :name end conn.create_table :task_tags do primary_key [:tag_id, :task_id] Integer :tag_id Integer :task_id end end before do |example| next if example.metadata[:seeds] == false conn[:tasks].insert id: 1, user_id: 2, title: "Joe's task" conn[:tasks].insert id: 2, user_id: 1, title: "Jane's task" conn[:tags].insert id: 1, name: 'important' conn[:task_tags].insert(tag_id: 1, task_id: 1) end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
rom-sql-1.0.3 | spec/shared/users_and_tasks.rb |
rom-sql-1.0.2 | spec/shared/users_and_tasks.rb |