From 76358aee81a471a5e71eaf3e8c2d91b7c9a0a5a9 Mon Sep 17 00:00:00 2001 From: GitLab Bot Date: Wed, 8 Apr 2020 21:09:50 +0000 Subject: Add latest changes from gitlab-org/gitlab@master --- .../import_export/project/tree_restorer_spec.rb | 22 +++++++--------------- .../import_export/project/tree_saver_spec.rb | 15 +++++++++++---- 2 files changed, 18 insertions(+), 19 deletions(-) (limited to 'spec/lib/gitlab/import_export') diff --git a/spec/lib/gitlab/import_export/project/tree_restorer_spec.rb b/spec/lib/gitlab/import_export/project/tree_restorer_spec.rb index 96aed774cfc..c8229eeee94 100644 --- a/spec/lib/gitlab/import_export/project/tree_restorer_spec.rb +++ b/spec/lib/gitlab/import_export/project/tree_restorer_spec.rb @@ -11,7 +11,7 @@ describe Gitlab::ImportExport::Project::TreeRestorer do let(:shared) { project.import_export_shared } - RSpec.shared_examples 'project tree restorer work properly' do |reader| + RSpec.shared_examples 'project tree restorer work properly' do |reader, ndjson_enabled| describe 'restore project tree' do before_all do # Using an admin for import, so we can check assignment of existing members @@ -25,6 +25,9 @@ describe Gitlab::ImportExport::Project::TreeRestorer do @project = create(:project, :builds_enabled, :issues_disabled, name: 'project', path: 'project') @shared = @project.import_export_shared + allow(Feature).to receive(:enabled?).and_call_original + stub_feature_flags(project_import_ndjson: ndjson_enabled) + setup_import_export_config('complex') setup_reader(reader) @@ -999,23 +1002,12 @@ describe Gitlab::ImportExport::Project::TreeRestorer do end context 'enable ndjson import' do - before_all do - # Test suite `restore project tree` run `project_tree_restorer.restore` in `before_all`. - # `Enable all features by default for testing` happens in `before(:each)` - # So it requires manually enable feature flag to allow ndjson_reader - Feature.enable(:project_import_ndjson) - end - - it_behaves_like 'project tree restorer work properly', :legacy_reader + it_behaves_like 'project tree restorer work properly', :legacy_reader, true - it_behaves_like 'project tree restorer work properly', :ndjson_reader + it_behaves_like 'project tree restorer work properly', :ndjson_reader, true end context 'disable ndjson import' do - before do - stub_feature_flags(project_import_ndjson: false) - end - - it_behaves_like 'project tree restorer work properly', :legacy_reader + it_behaves_like 'project tree restorer work properly', :legacy_reader, false end end diff --git a/spec/lib/gitlab/import_export/project/tree_saver_spec.rb b/spec/lib/gitlab/import_export/project/tree_saver_spec.rb index d859af5df02..ded57b1d576 100644 --- a/spec/lib/gitlab/import_export/project/tree_saver_spec.rb +++ b/spec/lib/gitlab/import_export/project/tree_saver_spec.rb @@ -16,7 +16,6 @@ describe Gitlab::ImportExport::Project::TreeSaver do let_it_be(:group) { create(:group) } let_it_be(:project) { setup_project } let_it_be(:shared) { project.import_export_shared } - let_it_be(:project_tree_saver ) { described_class.new(project: project, current_user: user, shared: shared) } let(:relation_name) { :projects } @@ -29,9 +28,17 @@ describe Gitlab::ImportExport::Project::TreeSaver do end before_all do - Feature.enable(:project_export_as_ndjson) if ndjson_enabled - project.add_maintainer(user) - project_tree_saver.save + RSpec::Mocks.with_temporary_scope do + allow(Feature).to receive(:enabled?).and_call_original + stub_feature_flags(project_export_as_ndjson: ndjson_enabled) + + project.add_maintainer(user) + + stub_feature_flags(project_export_as_ndjson: ndjson_enabled) + project_tree_saver = described_class.new(project: project, current_user: user, shared: shared) + + project_tree_saver.save + end end after :all do -- cgit v1.2.3