extface 0.5.3 → 0.5.4a

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.
@@ -46,7 +46,8 @@ module Extface
46
46
  job = extface_jobs(:one)
47
47
  job_thread = Thread.new do
48
48
  @driver.set_job(job)
49
- result = @driver.fsend(0x2C) # paper move command
49
+ @driver.autofix_unclosed_doc #should not affect test
50
+ @driver.fsend(0x2C) # paper move command
50
51
  end
51
52
  simulate_device_pull(job)
52
53
  @driver.handle("\x01\x31\x20\x4A\x88\x80\xC0\x80\x80\xB8\x04\x88\x80\xC0\x80\x80\xB8\x05\x30\x37\x3A\x34\x03\x01\x31\x20\x4A\x88\x80\xC0\x80\x80\xB8\x04\x88\x80\xC0\x80\x80\xB8\x05\x30\x37\x3A\x34\x03".b)
@@ -60,6 +61,7 @@ module Extface
60
61
  job = extface_jobs(:one)
61
62
  job_thread = Thread.new do
62
63
  @driver.set_job(job)
64
+ @driver.autofix_unclosed_doc #should not affect test
63
65
  result = @driver.fsend(0x2C) # paper move command
64
66
  end
65
67
  simulate_device_pull(job)
@@ -71,6 +73,23 @@ module Extface
71
73
  job_thread.join
72
74
  assert @driver.errors.empty?
73
75
  end
76
+
77
+ test "autofix unclosed doc" do
78
+ job = extface_jobs(:one)
79
+ job_thread = Thread.new do
80
+ @driver.set_job(job)
81
+ @driver.autofix_unclosed_doc
82
+ end
83
+ # status byte 2 bit 3 (fiscal doc open) 80 80 88 80 80 B8
84
+ assert_equal simulate_device_pull(job).b[3].ord, @driver.class::Info::STATUS
85
+ @driver.handle("\x01\x31\x20\x4A\x80\x80\x88\x80\x80\xB8\x04\x80\x80\x88\x80\x80\xB8\x05\x30\x37\x32\x34\x03")
86
+ assert_equal simulate_device_pull(job).b[3].ord, @driver.class::Sales::CANCEL_DOC
87
+ @driver.handle("\x01\x38\x21\x30\x30\x30\x30\x30\x31\x36\x2C\x30\x30\x30\x30\x31\x35\x04\x80\x80\x88\x80\x80\xB8\x05\x30\x36\x34\x3B\x03")
88
+ assert_equal simulate_device_pull(job).b[3].ord, @driver.class::Printer::CUT
89
+ @driver.handle("\x01\x2B\x22\x34\x04\x80\x80\x88\x80\x80\xB8\x05\x30\x33\x3C\x3A\x03")
90
+ job_thread.join
91
+ assert @driver.errors.empty?
92
+ end
74
93
  end
75
94
  end
76
95
 
data/test/test_helper.rb CHANGED
@@ -21,7 +21,16 @@ class ActiveSupport::TestCase
21
21
  fixtures :all
22
22
 
23
23
  def simulate_device_pull(job)
24
- Extface.redis_block{ |r| sleep 1; r.publish(job.id, "OK") } #simulate send to device
24
+ result = nil
25
+ Extface.redis_block do |r|
26
+ list, data = r.blpop(job.id, timeout: 1)
27
+ while data
28
+ result = data
29
+ r.publish(job.id, "OK")
30
+ list, data = r.blpop(job.id, timeout: 1)
31
+ end
32
+ end #simulate send to device
33
+ result
25
34
  end
26
35
  end
27
36
  module Extface
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.5.3
4
+ version: 0.5.4a
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alex Vangelov
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-12-20 00:00:00.000000000 Z
11
+ date: 2016-01-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: redis
@@ -145,6 +145,7 @@ files:
145
145
  - db/migrate/20140303112124_create_extface_drivers.rb
146
146
  - db/migrate/20140303122506_change_driver_polymorphic_to_belongs_to_extface_devices.rb
147
147
  - db/migrate/20140303123022_change_polymorphic_to_has_one_to_extface_serial_configs.rb
148
+ - db/migrate/20160103154233_add_started_at_to_extface_job.rb
148
149
  - lib/extface.rb
149
150
  - lib/extface/engine.rb
150
151
  - lib/extface/extfaceable.rb
@@ -251,9 +252,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
251
252
  version: '0'
252
253
  required_rubygems_version: !ruby/object:Gem::Requirement
253
254
  requirements:
254
- - - ">="
255
+ - - ">"
255
256
  - !ruby/object:Gem::Version
256
- version: '0'
257
+ version: 1.3.1
257
258
  requirements: []
258
259
  rubyforge_project:
259
260
  rubygems_version: 2.5.0