Commit d2482f15 authored by Fabian Schneider's avatar Fabian Schneider

Fix template selector menu visibility

parent dd552d06
......@@ -94,7 +94,7 @@ export default class FileTemplateMediator {
const hash = urlPieces[1];
if (hash === 'preview') {
this.hideTemplateSelectorMenu();
} else if (hash === 'editor') {
} else if (hash === 'editor' && !this.typeSelector.isHidden()) {
this.showTemplateSelectorMenu();
}
});
......
......@@ -32,6 +32,10 @@ export default class FileTemplateSelector {
}
}
isHidden() {
return this.$wrapper.hasClass('hidden');
}
getToggleText() {
return this.$dropdownToggleText.text();
}
......
---
title: Fix template selector menu visibility when toggling preview mode in file edit
view
merge_request: 18118
author: Fabian Schneider
type: fixed
require 'spec_helper'
feature 'Template selector menu', :js do
let(:project) { create(:project, :repository) }
let(:user) { create(:user) }
before do
project.add_master(user)
sign_in user
end
context 'editing a non-matching file' do
before do
create_and_edit_file('README.md')
end
scenario 'is not displayed' do
check_template_selector_menu_display(false)
end
context 'user toggles preview' do
before do
click_link 'Preview'
end
scenario 'template selector menu is not displayed' do
check_template_selector_menu_display(false)
click_link 'Write'
check_template_selector_menu_display(false)
end
end
end
context 'editing a matching file' do
before do
visit project_edit_blob_path(project, File.join(project.default_branch, 'LICENSE'))
end
scenario 'is displayed' do
check_template_selector_menu_display(true)
end
context 'user toggles preview' do
before do
click_link 'Preview'
end
scenario 'template selector menu is hidden and shown correctly' do
check_template_selector_menu_display(false)
click_link 'Write'
check_template_selector_menu_display(true)
end
end
end
end
def check_template_selector_menu_display(is_visible)
count = is_visible ? 1 : 0
expect(page).to have_css('.template-selectors-menu', count: count)
end
def create_and_edit_file(file_name)
visit project_new_blob_path(project, 'master', file_name: file_name)
click_button "Commit changes"
visit project_edit_blob_path(project, File.join(project.default_branch, file_name))
end
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment