jekyll-truthyfalsy 1.0.1 → 1.0.2

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
  SHA256:
3
- metadata.gz: 18c8a4f46fc5fb38b342d4397c15f69fcbffda7c93e07510ceedd398b297ffd4
4
- data.tar.gz: 6d358291c9f05de551756ec8a2aaecd4f5839bcef21fe0b479bb9b3b07a80d1c
3
+ metadata.gz: dfea5b16fc9b87be39842ea2b737d73f12704d15f9494af8fb5e9c6369349536
4
+ data.tar.gz: 675fc5000ab5ac2fb897067fb5ed6d2baf116f67208274947011b7ee80cb819d
5
5
  SHA512:
6
- metadata.gz: 422f80f7cadd2e72343de2eb1db3d3c9b8412ab2fa44f83eb929558b96fbef81d8b623df8ae547a9902c681692ab9cb65e7a97a97023c552fe6ae3a7f513f27c
7
- data.tar.gz: d7131b7e0704ce8094f192527804c2d3cb80af7a3517571d8ee0877d9d9cf12930f59198f1269e7711cf0610b965e3ae19e35d83a9944376d86ae10f8488d640
6
+ metadata.gz: 44880789333e1af31f786e9b8bac5c298b91371f16d1195ed24f8e34928072f2a117a13b13b1d5db4555907435598dd8708ca9f8cdf51f03fc40249eabbd14d7
7
+ data.tar.gz: d9cbb6c6c2652a4e924ce4899d8ac709db058b026320fa15855cf05f0fc5094d08959cb62cfaf645f1e05646731e8f989e121efa17cefdc34202a76dc256a220
data/README.md CHANGED
@@ -33,7 +33,6 @@ Yes, this module works in both Node and browser environments, including compatib
33
33
  * Exposes a `isfalsy` function
34
34
 
35
35
  # Jekyll::truthyfalsy
36
-
37
36
  Meet `jekyll-truthyfalsy`, the whimsical gem dedicated to turning the grey areas of truthiness and falsiness into black and white.
38
37
 
39
38
  It doesn't just settle for mere booleans; oh no, it goes above and beyond, scrutinizing empty strings and null values too! Like a tenacious detective, it leaves no stone unturned, and no value unverified. Banish the verbose 'if' statements and welcome a new era of compact, expressive checks.
@@ -41,7 +40,6 @@ It doesn't just settle for mere booleans; oh no, it goes above and beyond, scrut
41
40
  Because life is too short for ambiguity, embrace the certainty that comes with `jekyll-truthyfalsy`. Truthiness and falsiness: not just a philosophical quandary, but a .gem installation away!
42
41
 
43
42
  ## Installation
44
-
45
43
  Install the gem and add to the application's Gemfile by executing:
46
44
  ```shell
47
45
  bundle add jekyll-truthyfalsy
@@ -53,38 +51,66 @@ gem install jekyll-truthyfalsy
53
51
  ```
54
52
 
55
53
  ## Usage
56
- Now you can use the istruthy and isfalsy filters in your Jekyll site's templates:
54
+ Now you can use the `istruthy` and `isfalsy` filters in your Jekyll site's templates:
57
55
 
58
56
  ```liquid
59
- {% if page.title | istruthy %}
60
- <h1>{{ page.title }}</h1>
61
- {% else %}
62
- <h1>Untitled</h1>
63
- {% endif %}
64
-
65
- {% if page.description | isfalsy %}
66
- <p>No description available</p>
67
- {% else %}
68
- <p>{{ page.description }}</p>
69
- {% endif %}
57
+ {%- assign test_true = true | istruthy -%}
58
+ {%- if test_true -%}
59
+ This will print because `true` is truthy
60
+ {%- endif -%}
61
+
62
+ {%- assign test_false = false | istruthy -%}
63
+ {%- if test_false -%}
64
+ This will NOT print because `false` is falsy
65
+ {%- endif -%}
66
+
67
+ {%- assign test_string = 'hi' | istruthy -%}
68
+ {%- if test_string -%}
69
+ This will print because `'hi'` is truthy
70
+ {%- endif -%}
71
+
72
+ {%- assign test_empty_string = '' | istruthy -%}
73
+ {%- if test_empty_string -%}
74
+ This will NOT print because `''` is falsy
75
+ {%- endif -%}
76
+
77
+ {%- assign test_null = null | istruthy -%}
78
+ {%- if test_null -%}
79
+ This will NOT print because `null` is falsy
80
+ {%- endif -%}
81
+
82
+ {%- assign test_zero = 0 | istruthy -%}
83
+ {%- if test_zero -%}
84
+ This will NOT print because `0` is falsy
85
+ {%- endif -%}
86
+
87
+ {%- assign test_one = 1 | istruthy -%}
88
+ {%- if test_one -%}
89
+ This will print because `1` is truthy
90
+ {%- endif -%}
70
91
  ```
71
92
 
72
93
  These examples show how you can use `istruthy` and `isfalsy` to easily check if a variable is "truthy" (not null, not an empty string, and not false) or "falsy" (null, an empty string, or false), respectively.
73
94
 
74
- No more long, confusing, multi-condition 'if' statements - just simple, readable code!
95
+ No more long, confusing, multi-condition `if` statements - just simple, readable code!
75
96
 
76
97
  ## Development
77
-
78
98
  After checking out the repo, run `bin/setup` to install dependencies. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
79
99
 
80
100
  To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and the created tag, and push the `.gem` file to [rubygems.org](https://rubygems.org).
81
101
 
82
102
  ### Building and pushing
103
+ Run the tests
104
+ ```shell
105
+ bundle exec rspec
106
+ ```
107
+
108
+ Publish the Gem
83
109
  ```shell
84
110
  gem build jekyll-truthyfalsy.gemspec
85
- gem push jekyll-istruthyfalsy-1.0.0.gem
111
+
112
+ gem push jekyll-truthyfalsy-1.0.0.gem
86
113
  ```
87
114
 
88
115
  ## Contributing
89
-
90
- Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/jekyll-truthyfalsy.
116
+ Bug reports and pull requests are welcome on GitHub at https://github.com/itw-creative-works/jekyll-truthyfalsy.
@@ -1,5 +1,5 @@
1
1
  module Jekyll
2
2
  module TruthyFalsy
3
- VERSION = "1.0.1"
3
+ VERSION = "1.0.2"
4
4
  end # module TruthyFalsy
5
5
  end # module Jekyll
@@ -3,11 +3,11 @@ require "jekyll"
3
3
  module Jekyll
4
4
  module TruthyFalsy
5
5
  def istruthy(input)
6
- !(input.nil? || input == '' || input == false)
6
+ !(input.nil? || input == '' || input == false || input == 0)
7
7
  end
8
8
 
9
9
  def isfalsy(input)
10
- input.nil? || input == '' || input == false
10
+ input.nil? || input == '' || input == false || input == 0
11
11
  end
12
12
  end
13
13
  end
@@ -8,6 +8,7 @@ RSpec.describe Jekyll::TruthyFalsy do
8
8
 
9
9
  let(:dummy) { DummyClass.new }
10
10
 
11
+ # Truthy values
11
12
  describe '.istruthy' do
12
13
  it 'returns true for non-empty string' do
13
14
  expect(dummy.istruthy('hello')).to be(true)
@@ -28,8 +29,17 @@ RSpec.describe Jekyll::TruthyFalsy do
28
29
  it 'returns false for nil' do
29
30
  expect(dummy.istruthy(nil)).to be(false)
30
31
  end
31
- end
32
32
 
33
+ it 'returns true for integer 1' do
34
+ expect(dummy.istruthy(1)).to be(true)
35
+ end
36
+
37
+ it 'returns false for integer 0' do
38
+ expect(dummy.istruthy(0)).to be(false)
39
+ end
40
+ end
41
+
42
+ # Falsy values
33
43
  describe '.isfalsy' do
34
44
  it 'returns false for non-empty string' do
35
45
  expect(dummy.isfalsy('hello')).to be(false)
@@ -50,5 +60,13 @@ RSpec.describe Jekyll::TruthyFalsy do
50
60
  it 'returns true for nil' do
51
61
  expect(dummy.isfalsy(nil)).to be(true)
52
62
  end
63
+
64
+ it 'returns false for integer 1' do
65
+ expect(dummy.isfalsy(1)).to be(false)
66
+ end
67
+
68
+ it 'returns true for integer 0' do
69
+ expect(dummy.isfalsy(0)).to be(true)
70
+ end
53
71
  end
54
72
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jekyll-truthyfalsy
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - ITW Creative Works