fat_core 1.2.3 → 1.2.4

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: 797e6994f7aa6ed0c11d9b25350e1e9b9877c3d2
4
- data.tar.gz: 2d4ff594b7d3e2e46b20b6d5936076ea15d34e7a
3
+ metadata.gz: c00b777b066aba459ed7236c3e72dec827e537ba
4
+ data.tar.gz: 2e8144d891f29514b9666db2d18823e49d861097
5
5
  SHA512:
6
- metadata.gz: 81fa59c2ad8689e4421be2dfd0d5398038b52baddb9c763a11a1cb9c52248bc4bf7e4de7d433ca51cbda559f0c96a096fdbbdfd6ca6886b839a9f5ece4c404f9
7
- data.tar.gz: be6cc5052d2574cb61e83f61996724a1092521bbacd641c626d58780d965b2ea92aaba932700128a12d06e365c5dcd50ee16d2ead6b657e0b67c252a555754a3
6
+ metadata.gz: b72ad4cd0ef01b259f5d47efe95b4460e88b4b0fba2afbe40fb88bb8911d31a602beb3071af1eb2c0d4afb31cc77e00e15a3439ca230708058525977c6531e48
7
+ data.tar.gz: c54f2e4a903b2c3aa872c961598ca63f676015fc052a937975b8344c24f5f03b736795d4465e8e7b3610d7f04dee4f49380960849ece0a7a9e757b9c438cc38a
@@ -90,19 +90,26 @@ module FatCore
90
90
  else
91
91
  # Only non-blank values are allowed to set the type of the column
92
92
  val_class = val.class
93
- val = convert_to_boolean(val) ||
94
- convert_to_date_time(val) ||
93
+ bool_val = convert_to_boolean(val)
94
+ val =
95
+ if bool_val.nil?
96
+ convert_to_date_time(val) ||
95
97
  convert_to_numeric(val) ||
96
98
  convert_to_string(val)
99
+ else
100
+ bool_val
101
+ end
97
102
  @type =
98
- if val.is_a?(Numeric)
103
+ if val == true || val == false
104
+ 'Boolean'
105
+ elsif val.is_a?(Numeric)
99
106
  'Numeric'
100
107
  else
101
108
  val.class.name
102
109
  end
103
- val
104
110
  end
105
- when 'TrueClass', 'FalseClass'
111
+ val
112
+ when 'Boolean', 'TrueClass', 'FalseClass'
106
113
  val_class = val.class
107
114
  val = convert_to_boolean(val)
108
115
  if val.nil?
@@ -1,7 +1,7 @@
1
1
  module FatCore
2
2
  MAJOR = 1
3
3
  MINOR = 2
4
- PATCH = 3
4
+ PATCH = 4
5
5
 
6
6
  VERSION = [MAJOR, MINOR, PATCH].compact.join('.')
7
7
  end
@@ -0,0 +1,82 @@
1
+ | Ref | Date | Code | Price | G10 | QP10 | Shares | LP | QP |
2
+ |------+------------+------+---------+-----+------+--------+--------+--------|
3
+ | T001 | 2016-11-01 | P | 7.70000 | F | F | 100 | 14 | 86 |
4
+ | T002 | 2016-11-01 | P | 7.75000 | F | F | 200 | 28 | 172 |
5
+ | T003 | 2016-11-01 | P | 7.50000 | F | F | 800 | 112 | 688 |
6
+ | T004 | 2016-11-01 | S | 7.55000 | F | F | 6811 | 966 | 5845 |
7
+ | T005 | 2016-11-01 | S | 7.50000 | F | F | 4000 | 572 | 3428 |
8
+ | T006 | 2016-11-01 | S | 7.60000 | F | F | 1000 | 143 | 857 |
9
+ | T007 | 2016-11-01 | S | 7.65000 | F | F | 200 | 28 | 172 |
10
+ | T008 | 2016-11-01 | P | 7.65000 | F | F | 2771 | 393 | 2378 |
11
+ | T009 | 2016-11-01 | P | 7.60000 | F | F | 9550 | 1363 | 8187 |
12
+ | T010 | 2016-11-01 | P | 7.55000 | F | F | 3175 | 451 | 2724 |
13
+ | T011 | 2016-11-02 | P | 7.42500 | F | F | 100 | 14 | 86 |
14
+ | T012 | 2016-11-02 | P | 7.55000 | F | F | 4700 | 677 | 4023 |
15
+ | T013 | 2016-11-02 | P | 7.35000 | F | F | 53100 | 7656 | 45444 |
16
+ | T014 | 2016-11-02 | P | 7.45000 | F | F | 5847 | 835 | 5012 |
17
+ | T015 | 2016-11-02 | P | 7.75000 | F | F | 500 | 72 | 428 |
18
+ | T016 | 2016-11-02 | P | 8.25000 | F | F | 100 | 14 | 86 |
19
+ | T017 | 2016-11-02 | S | 7.57500 | F | F | 100 | 14 | 86 |
20
+ | T018 | 2016-11-02 | P | 7.50000 | F | F | 5695 | 818 | 4877 |
21
+ | T019 | 2016-11-02 | P | 8.00000 | F | F | 10100 | 1456 | 8644 |
22
+ | T020 | 2016-11-02 | P | 8.05000 | F | F | 3000 | 433 | 2567 |
23
+ | T021 | 2016-11-02 | S | 7.60000 | F | F | 500 | 71 | 429 |
24
+ | T022 | 2016-11-02 | S | 7.55000 | F | F | 4141 | 597 | 3544 |
25
+ | T023 | 2016-11-02 | S | 7.50000 | F | F | 1400 | 198 | 1202 |
26
+ | T024 | 2016-11-02 | P | 7.65000 | F | F | 500 | 72 | 428 |
27
+ | T025 | 2016-11-02 | P | 7.40000 | F | F | 4814 | 685 | 4129 |
28
+ | T026 | 2016-11-02 | P | 7.30000 | F | F | 9000 | 1298 | 7702 |
29
+ | T027 | 2016-11-03 | S | 7.50000 | F | F | 500 | 70 | 430 |
30
+ | T028 | 2016-11-04 | P | 6.50000 | F | F | 11690 | 1675 | 10015 |
31
+ | T029 | 2016-11-04 | P | 6.52500 | F | F | 400 | 57 | 343 |
32
+ | T030 | 2016-11-04 | P | 6.55000 | F | F | 8404 | 1202 | 7202 |
33
+ | T031 | 2016-11-04 | P | 6.25000 | F | F | 1426 | 206 | 1220 |
34
+ | T032 | 2016-11-04 | S | 6.45000 | T | F | 1500 | 214 | 1286 |
35
+ | T033 | 2016-11-04 | P | 6.70000 | F | F | 5600 | 805 | 4795 |
36
+ | T034 | 2016-11-04 | P | 6.35000 | F | F | 80 | 11 | 69 |
37
+ | T035 | 2016-11-04 | S | 6.25000 | F | F | 100 | 14 | 86 |
38
+ | T036 | 2016-11-04 | P | 6.42500 | F | F | 100 | 14 | 86 |
39
+ | T037 | 2016-11-04 | P | 6.47500 | F | F | 400 | 57 | 343 |
40
+ | T038 | 2016-11-04 | S | 6.10000 | F | F | 530 | 76 | 454 |
41
+ | T039 | 2016-11-04 | P | 6.57500 | F | F | 300 | 43 | 257 |
42
+ | T040 | 2016-11-04 | P | 6.02500 | F | F | 200 | 29 | 171 |
43
+ | T041 | 2016-11-04 | S | 6.05000 | F | F | 3000 | 428 | 2572 |
44
+ | T042 | 2016-11-04 | S | 6.57500 | F | F | 400 | 57 | 343 |
45
+ | T043 | 2016-11-04 | P | 6.05000 | F | F | 2800 | 400 | 2400 |
46
+ | T044 | 2016-11-04 | S | 6.65000 | F | F | 400 | 56 | 344 |
47
+ | T045 | 2016-11-04 | S | 6.60000 | F | F | 5200 | 743 | 4457 |
48
+ | T046 | 2016-11-04 | S | 6.65000 | T | F | 200 | 28 | 172 |
49
+ | T047 | 2016-11-04 | P | 6.10000 | F | F | 1600 | 227 | 1373 |
50
+ | T048 | 2016-11-04 | P | 6.60000 | F | F | 45463 | 6553 | 38911 |
51
+ | T049 | 2016-11-04 | S | 6.20000 | F | F | 1200 | 172 | 1028 |
52
+ | T050 | 2016-11-04 | P | 6.45000 | F | F | 1400 | 198 | 1202 |
53
+ | T051 | 2016-11-04 | P | 6.20000 | F | F | 675 | 95 | 580 |
54
+ | T052 | 2016-11-04 | S | 6.35000 | F | F | 1412 | 203 | 1209 |
55
+ | T053 | 2016-11-04 | P | 6.30000 | F | F | 1699 | 243 | 1456 |
56
+ | T054 | 2016-11-04 | P | 6.15000 | F | F | 475 | 68 | 407 |
57
+ | T055 | 2016-11-04 | P | 6.65000 | F | F | 1610 | 226 | 1384 |
58
+ | T056 | 2016-11-04 | S | 6.55000 | T | F | 100 | 14 | 86 |
59
+ | T057 | 2016-11-04 | P | 6.00000 | F | F | 2100 | 297 | 1803 |
60
+ | T058 | 2016-11-04 | P | 5.95000 | F | F | 200 | 28 | 172 |
61
+ | T059 | 2016-11-04 | P | 6.40000 | F | F | 8164 | 1166 | 6998 |
62
+ | T060 | 2016-11-04 | P | 6.50000 | T | F | 300 | 42 | 258 |
63
+ | T061 | 2016-11-04 | S | 6.15000 | F | F | 1200 | 172 | 1028 |
64
+ | T062 | 2016-11-04 | S | 6.35000 | T | F | 7900 | 1128 | 6772 |
65
+ | T063 | 2016-11-04 | S | 6.55000 | F | F | 1200 | 169 | 1031 |
66
+ | T064 | 2016-11-04 | P | 6.55000 | T | F | 3500 | 500 | 3000 |
67
+ | T065 | 2016-11-04 | S | 6.00000 | F | F | 1000 | 143 | 857 |
68
+ | T066 | 2016-11-04 | S | 6.40000 | T | F | 2300 | 326 | 1974 |
69
+ | T067 | 2016-11-07 | P | 6.20000 | T | F | 1900 | 270 | 1630 |
70
+ | T068 | 2016-11-07 | P | 6.12500 | F | F | 100 | 14 | 86 |
71
+ | T069 | 2016-11-07 | S | 6.30000 | T | F | 600 | 86 | 514 |
72
+ | T070 | 2016-11-07 | S | 6.01250 | T | F | 100 | 14 | 86 |
73
+ | T071 | 2016-11-07 | P | 6.25000 | T | F | 500 | 71 | 429 |
74
+ | T072 | 2016-11-07 | P | 5.95000 | T | F | 200 | 28 | 172 |
75
+ | T073 | 2016-11-07 | S | 5.75000 | T | F | 156 | 22 | 134 |
76
+ | T074 | 2016-11-07 | P | 6.00000 | T | F | 2000 | 284 | 1716 |
77
+ | T075 | 2016-11-07 | S | 6.15000 | T | F | 1250 | 176 | 1074 |
78
+ | T076 | 2016-11-07 | P | 6.20000 | F | F | 5022 | 718 | 4304 |
79
+ | T077 | 2016-11-07 | P | 6.15000 | F | F | 8061 | 1153 | 6908 |
80
+ | T078 | 2016-11-07 | S | 6.10000 | F | F | 1400 | 201 | 1199 |
81
+ | T079 | 2016-11-07 | P | 6.00000 | F | F | 1312 | 186 | 1126 |
82
+ | T080 | 2016-11-07 | P | 6.15000 | T | F | 5781 | 830 | 4951 |
@@ -305,6 +305,12 @@ EOS
305
305
  expect(row[:c].is_a?(BigDecimal)).to be true
306
306
  end
307
307
  end
308
+
309
+ it 'should set T F columns to Boolean' do
310
+ cwd = File.dirname(__FILE__)
311
+ dwtab = Table.new(cwd + '/../example_files/datawatch.org')
312
+ expect(dwtab.column(:g10).type).to eq('Boolean')
313
+ end
308
314
  end
309
315
 
310
316
  describe 'column operations' do
@@ -631,6 +637,7 @@ EOS
631
637
  tab2 = tab.where('info =~ /xxxx/')
632
638
  expect(tab2.rows.size).to eq(0)
633
639
  end
640
+
634
641
  end
635
642
 
636
643
  describe 'group_by' do
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fat_core
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.3
4
+ version: 1.2.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel E. Doherty
@@ -218,6 +218,7 @@ files:
218
218
  - lib/fat_core/symbol.rb
219
219
  - lib/fat_core/table.rb
220
220
  - lib/fat_core/version.rb
221
+ - spec/example_files/datawatch.org
221
222
  - spec/example_files/goldberg.org
222
223
  - spec/example_files/wpcs.csv
223
224
  - spec/lib/array_spec.rb
@@ -259,6 +260,7 @@ signing_key:
259
260
  specification_version: 4
260
261
  summary: fat_core provides some useful core extensions
261
262
  test_files:
263
+ - spec/example_files/datawatch.org
262
264
  - spec/example_files/goldberg.org
263
265
  - spec/example_files/wpcs.csv
264
266
  - spec/lib/array_spec.rb