Skip to content

Commit f4d1f66

Browse files
committed
- Allow using bashly-settings.yml instead of settings.yml
1 parent 5410200 commit f4d1f66

File tree

2 files changed

+43
-1
lines changed

2 files changed

+43
-1
lines changed

lib/bashly/settings.rb

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,13 @@ def user_settings
101101
end
102102

103103
def user_settings_path
104-
ENV['BASHLY_SETTINGS_PATH'] || 'settings.yml'
104+
@user_settings_path ||= if ENV['BASHLY_SETTINGS_PATH']
105+
ENV['BASHLY_SETTINGS_PATH']
106+
elsif File.exist? 'bashly-settings.yml'
107+
'bashly-settings.yml'
108+
else
109+
'settings.yml'
110+
end
105111
end
106112

107113
def defsult_settings

spec/bashly/settings_spec.rb

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,42 @@
88
expect(subject.tab_indent).to be false
99
end
1010

11+
context 'when settings.yml exists' do
12+
original_value = described_class.source_dir
13+
14+
before do
15+
reset_tmp_dir
16+
File.write 'spec/tmp/settings.yml', 'source_dir: somedir'
17+
subject.source_dir = nil
18+
end
19+
20+
after { described_class.source_dir = original_value }
21+
22+
it 'returns the value from the settings file' do
23+
Dir.chdir 'spec/tmp' do
24+
expect(subject.source_dir).to eq 'somedir'
25+
end
26+
end
27+
end
28+
29+
context 'when bashly-settings.yml exists' do
30+
original_value = described_class.source_dir
31+
32+
before do
33+
reset_tmp_dir
34+
File.write 'spec/tmp/bashly-settings.yml', 'source_dir: somedir'
35+
subject.source_dir = nil
36+
end
37+
38+
after { described_class.source_dir = original_value }
39+
40+
it 'returns the value from the settings file' do
41+
Dir.chdir 'spec/tmp' do
42+
expect(subject.source_dir).to eq 'somedir'
43+
end
44+
end
45+
end
46+
1147
context 'when its corresponding env var is set' do
1248
original_value = ENV['BASHLY_TAB_INDENT']
1349

0 commit comments

Comments
 (0)