Sha256: 49a7bd95dfb819fa8ad1f48894ff1cd9dc813ebd58f67b6684b5d2f28a621401

Contents?: true

Size: 835 Bytes

Versions: 2

Compression:

Stored size: 835 Bytes

Contents

# frozen_string_literal: true

require 'spec_helper'

RSpec.describe SolidusGraphqlApi::BatchLoader::HasOne, skip: (ENV["DB"] == "mysql") do
  include Helpers::ActiveRecord

  subject(:loader) do
    described_class.new(
      article,
      Article.reflect_on_association(:image)
    )
  end

  before do
    run_migrations do
      create_table :articles, force: true
      create_table :images, force: true do |t|
        t.belongs_to :article
      end
    end
    create_model("Article") { has_one :image }
    create_model("Image") { belongs_to :article }

    article.create_image!
  end

  after do
    run_migrations do
      drop_table :articles
      drop_table :images
    end
  end

  let!(:article) { Article.create! }

  it 'loads the association properly' do
    expect(loader.load.sync).to eq(article.image)
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
solidus_graphql_api-0.3.1 spec/lib/solidus_graphql_api/batch_loader/has_one_spec.rb
solidus_graphql_api-0.3.0 spec/lib/solidus_graphql_api/batch_loader/has_one_spec.rb