da_funk 1.3.1 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 6bde18d850bc388b6e35557c9333e387834bd10a
4
- data.tar.gz: 5784cae788d6eee58877385a070c41f213483fea
3
+ metadata.gz: d0b539f11ff4bbc09a57745c7f4a792ee043e2e9
4
+ data.tar.gz: 42bb3e49baceca6ca7438e5b1898922ecf97c022
5
5
  SHA512:
6
- metadata.gz: 27e2cbdd35fdefedb84e58bf92432f0dbe916f18b5b330e454923ba9657631be6265869483922a2c8e43e40ddf7c0551c20531aa2966481085226ad8b80cd366
7
- data.tar.gz: eb7b1a2a4bf801ae68fe1abb676d8f13fe1f05541e85ea5740760ac6141e2f1dba603d7cca80b4cf34a3ca3ed68919aa3367b23b91787cac50e801fffaf0a38f
6
+ metadata.gz: cbae8601f3aa4b764677ce26661561ff9d330223928dc7202637bfede9d9c9ce1e1d3acd7cb9963667908ba6130646a80b8b5098ea70323cbcc11da8187e850e
7
+ data.tar.gz: ebfe524729b698f8ef8ea72609cae67da317fc08dae04b2e7bb2511d7ba64eb1fe8d49661ab9187d9bb7ce24ef8954c59b0eba59516871c4cef23662034cdaf3
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- da_funk (1.3.1)
4
+ da_funk (1.4.0)
5
5
  archive-zip (~> 0.5)
6
6
  bundler
7
7
  cloudwalk_handshake
@@ -15,7 +15,7 @@ GEM
15
15
  archive-zip (0.10.0)
16
16
  io-like (~> 0.3.0)
17
17
  ast (2.3.0)
18
- cloudwalk (1.1.0)
18
+ cloudwalk (1.4.0)
19
19
  bundler
20
20
  rake
21
21
  cloudwalk_handshake (0.12.0)
@@ -27,7 +27,7 @@ GEM
27
27
  parallel (1.12.1)
28
28
  parser (2.4.0.2)
29
29
  ast (~> 2.3)
30
- posxml_parser (1.0.0)
30
+ posxml_parser (1.1.0)
31
31
  funky-emv (~> 0.3)
32
32
  powerpack (0.1.1)
33
33
  rainbow (3.0.0)
@@ -1,5 +1,13 @@
1
1
  # DaFunk
2
2
 
3
+ ### 1.4.0 - 2018-01-16
4
+
5
+ - Refactoring String.integer? And String.to_i adding more tests and support big numbers integer check.
6
+ - Implement Screen.add to print and update x and y.
7
+ - Support to print background image on menu if title path exists.
8
+ - Update cloudwalk (1.4.0).
9
+ - Do no print menu entry if empty.
10
+
3
11
  ### 1.3.1 - 2018-01-12
4
12
 
5
13
  - Fix String.integer? Method supporting Float.
@@ -154,7 +154,9 @@ module DaFunk
154
154
  if options[:number]
155
155
  Device::Display.print("#{i+1} #{display}", i+line_zero, 0)
156
156
  else
157
- Device::Display.print("#{display}", i+line_zero, 0)
157
+ unless display.to_s.empty?
158
+ Device::Display.print("#{display}", i+line_zero, 0)
159
+ end
158
160
  end
159
161
  end
160
162
  end
@@ -304,10 +306,14 @@ module DaFunk
304
306
  end
305
307
 
306
308
  def print_title(string, default)
307
- if default
308
- puts("#{string} (#{default})")
309
+ if string.to_s.downcase.include?(".bmp") && (path = "./shared/#{string}") && File.file?(path)
310
+ Device::Display.print_bitmap(path)
309
311
  else
310
- puts("#{string}")
312
+ if default
313
+ puts("#{string} (#{default})")
314
+ else
315
+ puts("#{string}")
316
+ end
311
317
  end
312
318
  end
313
319
 
@@ -50,6 +50,16 @@ class Screen
50
50
  print(*args)
51
51
  end
52
52
 
53
+ def add(string, line, column)
54
+ ContextLog.info "STRING: #{string.inspect}"
55
+ string.split("\n", -1).each_with_index do |str, i|
56
+ self.y = i + line
57
+ self.x = column
58
+ Device::Display.print(str, self.y, self.x)
59
+ self.x = column + str.size
60
+ end
61
+ end
62
+
53
63
  private
54
64
  def loop_split_strings(*args)
55
65
  str, value_y, value_x = *args
@@ -1,4 +1,4 @@
1
1
  module DaFunk
2
- VERSION="1.3.1"
2
+ VERSION="1.4.0"
3
3
  end
4
4
 
@@ -11,17 +11,17 @@ class String
11
11
  end
12
12
 
13
13
  def integer?
14
- return true if self[0] == "0"
15
- ! (self.to_f == 0)
14
+ !! Integer(self)
16
15
  rescue ArgumentError => e
17
16
  if e.message[-19..-1] == "too big for integer"
18
17
  begin
19
- return self.to_i.to_s.size == self.size
18
+ self.to_f
19
+ return true
20
20
  rescue
21
21
  false
22
22
  end
23
23
  end
24
- return false
24
+ false
25
25
  end
26
26
 
27
27
  def to_i(*args)
@@ -31,7 +31,7 @@ class String
31
31
  else
32
32
  begin
33
33
  Integer(self, args.first || 10)
34
- rescue ArgumentError => e
34
+ rescue => e
35
35
  if e.message[-19..-1] == "too big for integer"
36
36
  self.to_f(*args)
37
37
  else
@@ -15,5 +15,25 @@ class StringTest < DaFunk::Test.case
15
15
  def test_to_mask_number_bigger_than_value
16
16
  assert_equal "874948315", "874948315".to_mask("9999999999")
17
17
  end
18
+
19
+ def test_interger_check_false_5A179759
20
+ assert_false "5A179759".integer?
21
+ end
22
+
23
+ def test_interger_check_true_5A179759
24
+ assert "5179759".integer?
25
+ end
26
+
27
+ def test_interger_check_true_big
28
+ assert "51797590000000000000".integer?
29
+ end
30
+
31
+ def test_interger_check_false_0A179759
32
+ assert_false "0A179759".integer?
33
+ end
34
+
35
+ def test_interger_check_false_empty
36
+ assert_false "".integer?
37
+ end
18
38
  end
19
39
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: da_funk
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.1
4
+ version: 1.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Thiago Scalone
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-01-12 00:00:00.000000000 Z
11
+ date: 2018-01-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake