spec/graphql/relay/relation_connection_spec.rb in graphql-1.7.14 vs spec/graphql/relay/relation_connection_spec.rb in graphql-1.8.0.pre1
- old
+ new
@@ -72,39 +72,10 @@
StarWars::Base.where(faction_id: 2).count,
result["data"]["empire"]["bases"]["totalCount"]
)
end
- it "makes one sql query for items and another for count" do
- query_str = <<-GRAPHQL
- {
- empire {
- bases(first: 2) {
- totalCount
- edges {
- cursor
- node {
- name
- }
- }
- }
- }
- }
- GRAPHQL
- io = StringIO.new
- begin
- prev_logger = ActiveRecord::Base.logger
- ActiveRecord::Base.logger = Logger.new(io)
- result = star_wars_query(query_str, "first" => 2)
- ensure
- ActiveRecord::Base.logger = prev_logger
- end
- assert_equal 2, io.string.scan("\n").count, "Two log entries"
- assert_equal 3, result["data"]["empire"]["bases"]["totalCount"]
- assert_equal 2, result["data"]["empire"]["bases"]["edges"].size
- end
-
it "provides bidirectional_pagination" do
result = star_wars_query(query_string, "first" => 1)
last_cursor = get_last_cursor(result)
result = star_wars_query(query_string, "first" => 1, "after" => last_cursor)
@@ -115,17 +86,10 @@
star_wars_query(query_string, "first" => 1, "after" => last_cursor)
}
assert_equal true, get_page_info(result)["hasNextPage"]
assert_equal true, get_page_info(result)["hasPreviousPage"]
- last_cursor = get_last_cursor(result)
- result = with_bidirectional_pagination {
- star_wars_query(query_string, "last" => 1, "before" => last_cursor)
- }
- assert_equal true, get_page_info(result)["hasNextPage"]
- assert_equal false, get_page_info(result)["hasPreviousPage"]
-
result = star_wars_query(query_string, "first" => 100)
last_cursor = get_last_cursor(result)
result = star_wars_query(query_string, "last" => 1, "before" => last_cursor)
assert_equal false, get_page_info(result)["hasNextPage"]
@@ -134,10 +98,11 @@
result = with_bidirectional_pagination {
star_wars_query(query_string, "last" => 1, "before" => last_cursor)
}
assert_equal true, get_page_info(result)["hasNextPage"]
assert_equal true, get_page_info(result)["hasPreviousPage"]
+
end
it 'slices the result' do
result = star_wars_query(query_string, "first" => 2)
assert_equal(["Death Star", "Shield Generator"], get_names(result))
@@ -596,38 +561,9 @@
assert_equal(["Headquarters"], get_names(result))
before = get_last_cursor(result)
result = star_wars_query(query_string, "last" => 1, "nameIncludes" => "ea", "before" => before)
assert_equal(["Death Star"], get_names(result))
- end
-
- it "makes one sql query for items and another for count" do
- query_str = <<-GRAPHQL
- {
- empire {
- basesAsSequelDataset(first: 2) {
- totalCount
- edges {
- cursor
- node {
- name
- }
- }
- }
- }
- }
- GRAPHQL
- result = nil
- io = StringIO.new
- begin
- StarWars::DB.loggers << Logger.new(io)
- result = star_wars_query(query_str, "first" => 2)
- ensure
- StarWars::DB.loggers.pop
- end
- assert_equal 2, io.string.scan("SELECT").count
- assert_equal 3, result["data"]["empire"]["basesAsSequelDataset"]["totalCount"]
- assert_equal 2, result["data"]["empire"]["basesAsSequelDataset"]["edges"].size
end
end
end
describe "#cursor_from_node" do