File: mongoid_relation_connection_spec.rb

package info (click to toggle)
ruby-graphql 2.5.19-1
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 13,868 kB
  • sloc: ruby: 80,420; ansic: 1,808; yacc: 845; javascript: 480; makefile: 6
file content (33 lines) | stat: -rw-r--r-- 830 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# frozen_string_literal: true
require "spec_helper"

if testing_mongoid?
  describe GraphQL::Pagination::MongoidRelationConnection do
    class Food
      include Mongoid::Document
      field :name, type: String
    end

    before do
      # Populate the DB
      Food.collection.drop
      ConnectionAssertions::NAMES.each { |n| Food.create(name: n) }
    end

    class MongoidRelationConnectionWithTotalCount < GraphQL::Pagination::MongoidRelationConnection
      def total_count
        items.count
      end
    end

    let(:schema) {
      ConnectionAssertions.build_schema(
        connection_class: GraphQL::Pagination::MongoidRelationConnection,
        total_count_connection_class: MongoidRelationConnectionWithTotalCount,
        get_items: -> { Food.all }
      )
    }

    include ConnectionAssertions
  end
end