scss_lint 0.51.0 → 0.52.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 125c8c771a34f5997a2a5632b521c50cd5ffe301
4
- data.tar.gz: 58f9ec25bf46faf67567b1f2f5e3a7075c1dfd58
3
+ metadata.gz: 19af5419180f80bdaad53ecffaa33992432af5e0
4
+ data.tar.gz: ad403dc48c33f6658ff318dabcd8f4fb3b2f5ba0
5
5
  SHA512:
6
- metadata.gz: c16f9acd86f9330b1e693192597105cab8a5e6c80788d6fba28ea95bb4ec55f78b52104b4980cc5c93d8506455935fa22ec27a4e994e4c2204fa599ca03b960f
7
- data.tar.gz: 26f1bc74bb06a32d7efab07ddd12baf5483719364e928ceac6b21c139f1a82240cc31313bae462c130651ebbe3afcb806ab84af2a8886d33314f0d1011f9d380
6
+ metadata.gz: 1c4f46183c914ad9f99cd41fc63583413e08465ccc76ea60387d12c11bfae897fe91e5cbdb354795d6bc65f813f59fea7aa4024385acbe372206ab0ed7a629ea
7
+ data.tar.gz: 45baee65c2f6a3d0268c3ff442e5ab93db4dcab3cafc3f73d29f0c756c9db6b76a21e6bd19d444ecba6e337e9741411eb6a5723b76ec3a689db743fb480ffb44
@@ -6,11 +6,11 @@ module SCSSLint
6
6
 
7
7
  def initialize(dir)
8
8
  @dir = dir
9
- @config = SCSSLint::Config.new({}) # Will always be empty
10
9
  end
11
10
 
12
11
  def load
13
12
  ruby_files.each { |file| require file }
13
+ @config = plugin_config
14
14
  self
15
15
  end
16
16
 
@@ -19,6 +19,29 @@ module SCSSLint
19
19
  def ruby_files
20
20
  Dir.glob(File.expand_path(File.join(@dir, '**', '*.rb')))
21
21
  end
22
+
23
+ # Returns the {SCSSLint::Config} for this directory.
24
+ #
25
+ # This is intended to be merged with the configuration that loaded this
26
+ # plugin.
27
+ #
28
+ # @return [SCSSLint::Config]
29
+ def plugin_config
30
+ file = plugin_config_file
31
+
32
+ if File.exist?(file)
33
+ Config.load(file, merge_with_default: false)
34
+ else
35
+ Config.new({})
36
+ end
37
+ end
38
+
39
+ # Path of the configuration file to attempt to load for this directory.
40
+ #
41
+ # @return [String]
42
+ def plugin_config_file
43
+ File.join(@dir, Config::FILE_NAME)
44
+ end
22
45
  end
23
46
  end
24
47
  end
@@ -2,5 +2,5 @@
2
2
 
3
3
  # Defines the gem version.
4
4
  module SCSSLint
5
- VERSION = '0.51.0'.freeze
5
+ VERSION = '0.52.0'.freeze
6
6
  end
@@ -4,18 +4,42 @@ describe SCSSLint::Plugins::LinterDir do
4
4
  let(:plugin_directory) { File.expand_path('../../fixtures/plugins', __FILE__) }
5
5
  let(:subject) { described_class.new(plugin_directory) }
6
6
 
7
- describe '#config' do
8
- it 'returns empty configuration' do
9
- subject.config.should == SCSSLint::Config.new({})
7
+ describe '#load' do
8
+ let(:config_file) { File.join(plugin_directory, '.scss-lint.yml') }
9
+ let(:config_file_exists) { false }
10
+
11
+ before do
12
+ File.stub(:exist?).with(config_file).and_return(config_file_exists)
10
13
  end
11
- end
12
14
 
13
- describe '#load' do
14
15
  it 'requires each file in the plugin directory' do
15
16
  subject.should_receive(:require)
16
17
  .with(File.join(plugin_directory, 'linter_plugin.rb')).once
17
18
 
18
19
  subject.load
19
20
  end
21
+
22
+ context 'when the dir does not include a configuration file' do
23
+ it 'loads an empty configuration' do
24
+ subject.load
25
+ subject.config.should == SCSSLint::Config.new({})
26
+ end
27
+ end
28
+
29
+ context 'when a config file exists in the dir' do
30
+ let(:config_file_exists) { true }
31
+ let(:fake_config) { SCSSLint::Config.new('linters' => { 'FakeLinter' => {} }) }
32
+
33
+ before do
34
+ SCSSLint::Config.should_receive(:load)
35
+ .with(config_file, merge_with_default: false)
36
+ .and_return(fake_config)
37
+ end
38
+
39
+ it 'loads the configuration' do
40
+ subject.load
41
+ subject.config.should == fake_config
42
+ end
43
+ end
20
44
  end
21
45
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: scss_lint
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.51.0
4
+ version: 0.52.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brigade Engineering
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2016-12-16 00:00:00.000000000 Z
12
+ date: 2017-01-05 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rake
@@ -272,7 +272,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
272
272
  version: '0'
273
273
  requirements: []
274
274
  rubyforge_project:
275
- rubygems_version: 2.5.2
275
+ rubygems_version: 2.4.5.1
276
276
  signing_key:
277
277
  specification_version: 4
278
278
  summary: SCSS lint tool
@@ -369,3 +369,4 @@ test_files:
369
369
  - spec/spec_helper.rb
370
370
  - spec/support/isolated_environment.rb
371
371
  - spec/support/matchers/report_lint.rb
372
+ has_rdoc: