extface 0.4.0 → 0.4.1a
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 +4 -4
- data/app/controllers/extface/devices_controller.rb +1 -0
- data/app/helpers/extface/application_helper.rb +2 -2
- data/app/models/extface/device.rb +1 -1
- data/app/models/extface/driver.rb +3 -4
- data/app/models/extface/driver/datecs/commands_v1.rb +30 -0
- data/app/models/extface/driver/datecs/fp550.rb +129 -0
- data/app/views/extface/driver/datecs/fp550/_control.html.erb +2 -0
- data/app/views/extface/driver/datecs/fp550/_settings.html.erb +0 -0
- data/lib/extface/version.rb +1 -1
- data/lib/generators/extface/driver/USAGE +15 -0
- data/lib/generators/extface/driver/driver_generator.rb +3 -0
- data/test/dummy/db/test.sqlite3 +0 -0
- data/test/dummy/log/development.log +10 -0
- data/test/dummy/log/test.log +12823 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/0a8a23b1a73ebf217f4e2b765013ce7b +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/21fb58a50e25d1170f2c7d5bd5d29c54 +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/263375f2d55c31687ed052f99ddead55 +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/265c1a0ad735604fec09a30dc1b8b50f +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/3f4ff460a79b2e29781690193a3960f6 +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/4ef10b222fde3c042209a46daf3d3e36 +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/544650645bc510ef8fbee0043c41fdcf +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/6dbf2b0443792e51055710be15c83197 +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/717acb3e7c0df18696cf1bc56de6d3d5 +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/88b0a473a5770f601b60e2e38e180a0f +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/9891cbb0808f38b2c42f42fd89e662a4 +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/9b178820b9dc8c81c9784cf7ee3b7d35 +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/a06a4a7f51754a6a2c0694eb39ff824b +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/a8cc2e73253025d2518d2449e16e5266 +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/b56dfad0b14283f2cc10c62f37d71cc7 +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/e1197e0129ade843b08de0b45c47fc40 +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/ece3270b150db7c668579bb91ac7e2e5 +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/f018ab87f3490dbbcbc2e3c9f36aed3d +0 -0
- data/test/fixtures/extface/devices.yml +6 -0
- data/test/fixtures/extface/drivers.yml +4 -1
- data/test/lib/generators/extface/driver_generator_test.rb +16 -0
- data/test/models/extface/driver/datecs/fp550_test.rb +49 -0
- data/test/test_helper.rb +12 -0
- metadata +32 -4
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
@@ -0,0 +1,16 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
require 'generators/extface/driver/driver_generator'
|
3
|
+
|
4
|
+
module Extface
|
5
|
+
class DriverGeneratorTest < Rails::Generators::TestCase
|
6
|
+
tests Extface::DriverGenerator
|
7
|
+
destination Rails.root.join('tmp/generators')
|
8
|
+
setup :prepare_destination
|
9
|
+
|
10
|
+
# test "generator runs without errors" do
|
11
|
+
# assert_nothing_raised do
|
12
|
+
# run_generator ["arguments"]
|
13
|
+
# end
|
14
|
+
# end
|
15
|
+
end
|
16
|
+
end
|
@@ -0,0 +1,49 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
module Extface
|
4
|
+
class Driver::Datecs::Fp550Test < ActiveSupport::TestCase
|
5
|
+
setup do
|
6
|
+
@driver = extface_drivers(:datecs_fp550)
|
7
|
+
@driver.flush # clear receive buffer
|
8
|
+
end
|
9
|
+
|
10
|
+
test "handle" do
|
11
|
+
assert_equal nil, @driver.handle('bad packet')
|
12
|
+
assert_equal 6, @driver.handle("\x01data\x03data"), "Frame not match"
|
13
|
+
assert_equal 9, @driver.handle("pre\x01data\x03data"), "Frame with preamble not match"
|
14
|
+
assert_equal 1, @driver.handle("\x16\x16\x01data\x03data"), "Frame with ACK preamble not match"
|
15
|
+
assert_equal 4, @driver.handle("pre\x15"), "NAK not match"
|
16
|
+
end
|
17
|
+
|
18
|
+
test "build packet" do
|
19
|
+
assert_equal "\x01\x24\x20\x4a\x05\x30\x30\x39\x33\x03".b, @driver.build_packet(0x4a), "packet without data"
|
20
|
+
assert_equal "\x01\x25\x21\x4a\x58\x05\x30\x30\x3e\x3d\x03".b, @driver.build_packet(0x4a, 'X'), "packet with data"
|
21
|
+
end
|
22
|
+
|
23
|
+
test "response frame" do
|
24
|
+
frame_class = @driver.class::Frame
|
25
|
+
assert frame_class.new("\x15").nak?, "NAK message failed"
|
26
|
+
assert frame_class.new("\x16\x16").ack?, "ACK message failed"
|
27
|
+
assert_nothing_raised do
|
28
|
+
assert_equal false, frame_class.new("bad data\x01\x25\x21\x4asome broken packet\x58\x05\x30\x30\x3e\x3d\x03".b).valid?
|
29
|
+
end
|
30
|
+
frame = frame_class.new("\x16\x01\x2C\x2F\x2D\x50\x04\x88\x80\xC0\x80\x80\xB0\x05\x30\x34\x35\x39\x03".b)
|
31
|
+
assert frame.valid?, "Vailid frame not recognized"
|
32
|
+
assert_equal "\x01\x2C\x2F\x2D\x50\x04\x88\x80\xC0\x80\x80\xB0\x05\x30\x34\x35\x39\x03".b, frame.frame
|
33
|
+
assert_equal "\x2c".b, frame.len
|
34
|
+
assert_equal "\x2f".b, frame.seq
|
35
|
+
assert_equal "\x2d".b, frame.cmd
|
36
|
+
assert_equal "\x50".b, frame.data
|
37
|
+
assert_equal "\x88\x80\xC0\x80\x80\xB0".b, frame.status
|
38
|
+
assert_equal "\x30\x34\x35\x39".b, frame.bcc
|
39
|
+
#bad check sum
|
40
|
+
frame = frame_class.new("\x01\x2C\x2F\x2D\x50\x04\x88\x80\xC0\x80\x80\xB0\x05\x30\x34\x35\x38\x03".b)
|
41
|
+
assert_equal false, frame.valid?
|
42
|
+
assert frame.errors.messages[:bcc]
|
43
|
+
#bad length
|
44
|
+
frame = frame_class.new("\x01\x2b\x2F\x2D\x50\x04\x88\x80\xC0\x80\x80\xB0\x05\x30\x34\x35\x38\x03".b)
|
45
|
+
assert_equal false, frame.valid?
|
46
|
+
assert frame.errors.messages[:len]
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
data/test/test_helper.rb
CHANGED
@@ -25,5 +25,17 @@ module Extface
|
|
25
25
|
setup do
|
26
26
|
@routes = Extface::Engine.routes
|
27
27
|
end
|
28
|
+
module Behavior
|
29
|
+
def process_with_shop(action, http_method = 'GET', parameters = nil, session = nil, flash = nil)
|
30
|
+
parameters = { shop_id: shops(:one) }.merge(parameters || {})
|
31
|
+
process_without_shop(action, http_method, parameters, session, flash)
|
32
|
+
end
|
33
|
+
alias_method_chain :process, :shop
|
34
|
+
end
|
35
|
+
end
|
36
|
+
class ActionDispatch::Routing::RouteSet
|
37
|
+
def default_url_options(options={})
|
38
|
+
options.merge(shop_id: Shop.first)
|
39
|
+
end
|
28
40
|
end
|
29
41
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: extface
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.4.
|
4
|
+
version: 0.4.1a
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alex Vangelov
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-09-25 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -66,6 +66,20 @@ dependencies:
|
|
66
66
|
- - ">="
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '0'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: billing
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - ">="
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0'
|
76
|
+
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ">="
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '0'
|
69
83
|
description: Extface allows use of Cash Registers, Fiscal and POS printers without
|
70
84
|
physical connection between the device, application server and the end user. Can
|
71
85
|
also be used for remotely reading CDR logs from PBX systems and actually supports
|
@@ -100,6 +114,8 @@ files:
|
|
100
114
|
- app/models/extface/driver/base/fiscal.rb
|
101
115
|
- app/models/extface/driver/daisy/commands_fx1200.rb
|
102
116
|
- app/models/extface/driver/daisy_fx1200.rb
|
117
|
+
- app/models/extface/driver/datecs/commands_v1.rb
|
118
|
+
- app/models/extface/driver/datecs/fp550.rb
|
103
119
|
- app/models/extface/driver/eltrade/commands_fp4.rb
|
104
120
|
- app/models/extface/driver/eltrade_tm_u220.rb
|
105
121
|
- app/models/extface/driver/generic_pos.rb
|
@@ -116,6 +132,8 @@ files:
|
|
116
132
|
- app/views/extface/driver/_control_raw.html.erb
|
117
133
|
- app/views/extface/driver/_control_report.html.erb
|
118
134
|
- app/views/extface/driver/daisy_fx1200/_settings.html.erb
|
135
|
+
- app/views/extface/driver/datecs/fp550/_control.html.erb
|
136
|
+
- app/views/extface/driver/datecs/fp550/_settings.html.erb
|
119
137
|
- app/views/extface/driver/eltrade_tm_u220/_control_.html.erb
|
120
138
|
- app/views/extface/driver/eltrade_tm_u220/_settings.html.erb
|
121
139
|
- app/views/extface/driver/generic_pos/_settings.html.erb
|
@@ -142,6 +160,8 @@ files:
|
|
142
160
|
- lib/extface/mapping.rb
|
143
161
|
- lib/extface/routes.rb
|
144
162
|
- lib/extface/version.rb
|
163
|
+
- lib/generators/extface/driver/USAGE
|
164
|
+
- lib/generators/extface/driver/driver_generator.rb
|
145
165
|
- lib/tasks/extface_tasks.rake
|
146
166
|
- test/controllers/extface/devices_controller_test.rb
|
147
167
|
- test/controllers/extface/jobs_controller_test.rb
|
@@ -186,11 +206,13 @@ files:
|
|
186
206
|
- test/dummy/tmp/cache/assets/test/sprockets/0a8a23b1a73ebf217f4e2b765013ce7b
|
187
207
|
- test/dummy/tmp/cache/assets/test/sprockets/21fb58a50e25d1170f2c7d5bd5d29c54
|
188
208
|
- test/dummy/tmp/cache/assets/test/sprockets/263375f2d55c31687ed052f99ddead55
|
209
|
+
- test/dummy/tmp/cache/assets/test/sprockets/265c1a0ad735604fec09a30dc1b8b50f
|
189
210
|
- test/dummy/tmp/cache/assets/test/sprockets/3f4ff460a79b2e29781690193a3960f6
|
190
211
|
- test/dummy/tmp/cache/assets/test/sprockets/4ef10b222fde3c042209a46daf3d3e36
|
191
212
|
- test/dummy/tmp/cache/assets/test/sprockets/544650645bc510ef8fbee0043c41fdcf
|
192
213
|
- test/dummy/tmp/cache/assets/test/sprockets/6dbf2b0443792e51055710be15c83197
|
193
214
|
- test/dummy/tmp/cache/assets/test/sprockets/717acb3e7c0df18696cf1bc56de6d3d5
|
215
|
+
- test/dummy/tmp/cache/assets/test/sprockets/88b0a473a5770f601b60e2e38e180a0f
|
194
216
|
- test/dummy/tmp/cache/assets/test/sprockets/9891cbb0808f38b2c42f42fd89e662a4
|
195
217
|
- test/dummy/tmp/cache/assets/test/sprockets/9b178820b9dc8c81c9784cf7ee3b7d35
|
196
218
|
- test/dummy/tmp/cache/assets/test/sprockets/a06a4a7f51754a6a2c0694eb39ff824b
|
@@ -209,7 +231,9 @@ files:
|
|
209
231
|
- test/helpers/extface/jobs_helper_test.rb
|
210
232
|
- test/helpers/extface/sse_helper_test.rb
|
211
233
|
- test/integration/navigation_test.rb
|
234
|
+
- test/lib/generators/extface/driver_generator_test.rb
|
212
235
|
- test/models/extface/device_test.rb
|
236
|
+
- test/models/extface/driver/datecs/fp550_test.rb
|
213
237
|
- test/models/extface/driver/generic_pos_test.rb
|
214
238
|
- test/models/extface/driver/star_scp700_test.rb
|
215
239
|
- test/models/extface/driver/star_tsp200_test.rb
|
@@ -231,9 +255,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
231
255
|
version: '0'
|
232
256
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
233
257
|
requirements:
|
234
|
-
- - "
|
258
|
+
- - ">"
|
235
259
|
- !ruby/object:Gem::Version
|
236
|
-
version:
|
260
|
+
version: 1.3.1
|
237
261
|
requirements: []
|
238
262
|
rubyforge_project:
|
239
263
|
rubygems_version: 2.2.2
|
@@ -241,6 +265,7 @@ signing_key:
|
|
241
265
|
specification_version: 4
|
242
266
|
summary: External Interfaces for Cloud-Based Applications (Rails 4)
|
243
267
|
test_files:
|
268
|
+
- test/lib/generators/extface/driver_generator_test.rb
|
244
269
|
- test/fixtures/extface/serial_configs.yml
|
245
270
|
- test/fixtures/extface/devices.yml
|
246
271
|
- test/fixtures/extface/drivers.yml
|
@@ -249,6 +274,7 @@ test_files:
|
|
249
274
|
- test/test_helper.rb
|
250
275
|
- test/controllers/extface/devices_controller_test.rb
|
251
276
|
- test/controllers/extface/jobs_controller_test.rb
|
277
|
+
- test/dummy/tmp/cache/assets/test/sprockets/265c1a0ad735604fec09a30dc1b8b50f
|
252
278
|
- test/dummy/tmp/cache/assets/test/sprockets/0a8a23b1a73ebf217f4e2b765013ce7b
|
253
279
|
- test/dummy/tmp/cache/assets/test/sprockets/4ef10b222fde3c042209a46daf3d3e36
|
254
280
|
- test/dummy/tmp/cache/assets/test/sprockets/ece3270b150db7c668579bb91ac7e2e5
|
@@ -264,6 +290,7 @@ test_files:
|
|
264
290
|
- test/dummy/tmp/cache/assets/test/sprockets/717acb3e7c0df18696cf1bc56de6d3d5
|
265
291
|
- test/dummy/tmp/cache/assets/test/sprockets/3f4ff460a79b2e29781690193a3960f6
|
266
292
|
- test/dummy/tmp/cache/assets/test/sprockets/a8cc2e73253025d2518d2449e16e5266
|
293
|
+
- test/dummy/tmp/cache/assets/test/sprockets/88b0a473a5770f601b60e2e38e180a0f
|
267
294
|
- test/dummy/tmp/cache/assets/test/sprockets/a06a4a7f51754a6a2c0694eb39ff824b
|
268
295
|
- test/dummy/config.ru
|
269
296
|
- test/dummy/log/development.log
|
@@ -312,6 +339,7 @@ test_files:
|
|
312
339
|
- test/models/extface/driver/generic_pos_test.rb
|
313
340
|
- test/models/extface/driver/star_scp700_test.rb
|
314
341
|
- test/models/extface/driver/star_tsp200_test.rb
|
342
|
+
- test/models/extface/driver/datecs/fp550_test.rb
|
315
343
|
- test/models/extface/serial_config_test.rb
|
316
344
|
- test/models/extface/device_test.rb
|
317
345
|
- test/models/extface/driver_test.rb
|