diff options
author | Nick Thomas <nick@gitlab.com> | 2019-05-22 18:06:03 +0300 |
---|---|---|
committer | Nick Thomas <nick@gitlab.com> | 2019-05-22 18:06:03 +0300 |
commit | 454cbac3ef1b72ad8f9f70aecc7e8e9b9aba3f7a (patch) | |
tree | 756a900c127fee7123646c0acb84e2b269956772 /spec/graphql/resolvers | |
parent | 98cdeed44c90580a0e51be7614e57dc65f87240d (diff) | |
parent | 67a50861953be9347e267795a9ce736dfea5316b (diff) |
Merge branch 'graphql-tree' into 'master'
Added repository files to GraphQL API
See merge request gitlab-org/gitlab-ce!28325
Diffstat (limited to 'spec/graphql/resolvers')
-rw-r--r-- | spec/graphql/resolvers/tree_resolver_spec.rb | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/spec/graphql/resolvers/tree_resolver_spec.rb b/spec/graphql/resolvers/tree_resolver_spec.rb new file mode 100644 index 00000000000..9f95b740ab1 --- /dev/null +++ b/spec/graphql/resolvers/tree_resolver_spec.rb @@ -0,0 +1,35 @@ +require 'spec_helper' + +describe Resolvers::TreeResolver do + include GraphqlHelpers + + let(:repository) { create(:project, :repository).repository } + + describe '#resolve' do + it 'resolves to a tree' do + result = resolve_repository({ ref: "master" }) + + expect(result).to be_an_instance_of(Tree) + end + + it 'resolve to a recursive tree' do + result = resolve_repository({ ref: "master", recursive: true }) + + expect(result.trees[4].path).to eq('files/html') + end + + context 'when repository does not exist' do + it 'returns nil' do + allow(repository).to receive(:exists?).and_return(false) + + result = resolve_repository({ ref: "master" }) + + expect(result).to be(nil) + end + end + end + + def resolve_repository(args) + resolve(described_class, obj: repository, args: args) + end +end |