diff options
Diffstat (limited to 'spec/graphql/resolvers/design_management/designs_resolver_spec.rb')
-rw-r--r-- | spec/graphql/resolvers/design_management/designs_resolver_spec.rb | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/spec/graphql/resolvers/design_management/designs_resolver_spec.rb b/spec/graphql/resolvers/design_management/designs_resolver_spec.rb index cfa37d34fd9..28e963c88a9 100644 --- a/spec/graphql/resolvers/design_management/designs_resolver_spec.rb +++ b/spec/graphql/resolvers/design_management/designs_resolver_spec.rb @@ -6,6 +6,10 @@ RSpec.describe Resolvers::DesignManagement::DesignsResolver do include GraphqlHelpers include DesignManagementTestHelpers + specify do + expect(described_class).to have_nullable_graphql_type(::Types::DesignManagement::DesignType.connection_type) + end + before do enable_design_management end @@ -65,8 +69,24 @@ RSpec.describe Resolvers::DesignManagement::DesignsResolver do let(:second_version) { create(:design_version) } let(:second_design) { create(:design, issue: issue, versions: [second_version]) } + context 'ids is provided but null' do + let(:args) { { ids: nil } } + + it 'behaves as if unfiltered' do + expect(resolve_designs).to contain_exactly(first_design, second_design) + end + end + + context 'ids is provided but empty' do + let(:args) { { ids: [] } } + + it 'eliminates all values' do + expect(resolve_designs).to be_empty + end + end + context 'the ID is on the current issue' do - let(:args) { { ids: [GitlabSchema.id_from_object(second_design).to_s] } } + let(:args) { { ids: [GitlabSchema.id_from_object(second_design)] } } it 'resolves to just the relevant design' do expect(resolve_designs).to contain_exactly(second_design) @@ -77,7 +97,7 @@ RSpec.describe Resolvers::DesignManagement::DesignsResolver do let(:third_version) { create(:design_version) } let(:third_design) { create(:design, issue: create(:issue, project: project), versions: [third_version]) } - let(:args) { { ids: [GitlabSchema.id_from_object(third_design).to_s] } } + let(:args) { { ids: [GitlabSchema.id_from_object(third_design)] } } it 'ignores it' do expect(resolve_designs).to be_empty |