mqtt 0.3.1 → 0.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.
@@ -9,7 +9,8 @@ describe "a client talking to a server" do
9
9
  before(:each) do
10
10
  @error_log = StringIO.new
11
11
  @server = MQTT::FakeServer.new
12
- @server.just_one = true
12
+ @server.just_one_connection = true
13
+ @server.respond_to_pings = true
13
14
  @server.logger = Logger.new(@error_log)
14
15
  @server.logger.level = Logger::WARN
15
16
  @server.start
@@ -142,4 +143,24 @@ describe "a client talking to a server" do
142
143
  end
143
144
  end
144
145
 
146
+ context "detects server not sending ping responses" do
147
+ def connect_and_timeout(keep_alive)
148
+ @server.respond_to_pings = false
149
+ @client.keep_alive = keep_alive
150
+ @client.connect
151
+ sleep(keep_alive * 3)
152
+ end
153
+
154
+ context "when keep-alive=1" do
155
+ it "the server should have received at least one ping" do
156
+ expect {
157
+ connect_and_timeout(1)
158
+ }.to raise_error(
159
+ MQTT::ProtocolException,
160
+ 'No Ping Response received for 2 seconds'
161
+ )
162
+ end
163
+ end
164
+ end
165
+
145
166
  end
metadata CHANGED
@@ -1,68 +1,60 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mqtt
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
5
- prerelease:
4
+ version: 0.4.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Nicholas J Humfrey
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2014-10-10 00:00:00.000000000 Z
11
+ date: 2016-06-27 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: bundler
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
17
  - - ! '>='
20
18
  - !ruby/object:Gem::Version
21
- version: 1.5.0
19
+ version: 1.11.2
22
20
  type: :development
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
24
  - - ! '>='
28
25
  - !ruby/object:Gem::Version
29
- version: 1.5.0
26
+ version: 1.11.2
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: rake
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ! '>='
31
+ - - ~>
36
32
  - !ruby/object:Gem::Version
37
- version: 0.10.0
33
+ version: 0.9.6
38
34
  type: :development
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
- - - ! '>='
38
+ - - ~>
44
39
  - !ruby/object:Gem::Version
45
- version: 0.10.0
40
+ version: 0.9.6
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: yard
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
- - - ! '>='
45
+ - - ~>
52
46
  - !ruby/object:Gem::Version
53
47
  version: 0.8.0
54
48
  type: :development
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
- - - ! '>='
52
+ - - ~>
60
53
  - !ruby/object:Gem::Version
61
54
  version: 0.8.0
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: rspec
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
59
  - - ~>
68
60
  - !ruby/object:Gem::Version
@@ -70,7 +62,6 @@ dependencies:
70
62
  type: :development
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
65
  requirements:
75
66
  - - ~>
76
67
  - !ruby/object:Gem::Version
@@ -78,19 +69,17 @@ dependencies:
78
69
  - !ruby/object:Gem::Dependency
79
70
  name: simplecov
80
71
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
72
  requirements:
83
- - - ! '>='
73
+ - - ~>
84
74
  - !ruby/object:Gem::Version
85
- version: '0'
75
+ version: 0.9.2
86
76
  type: :development
87
77
  prerelease: false
88
78
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
79
  requirements:
91
- - - ! '>='
80
+ - - ~>
92
81
  - !ruby/object:Gem::Version
93
- version: '0'
82
+ version: 0.9.2
94
83
  description: Pure Ruby gem that implements the MQTT protocol, a lightweight protocol
95
84
  for publish/subscribe messaging.
96
85
  email: njh@aelius.com
@@ -98,49 +87,51 @@ executables: []
98
87
  extensions: []
99
88
  extra_rdoc_files: []
100
89
  files:
101
- - README.md
102
90
  - LICENSE.md
103
91
  - NEWS.md
92
+ - README.md
93
+ - lib/mqtt.rb
104
94
  - lib/mqtt/client.rb
105
95
  - lib/mqtt/packet.rb
106
96
  - lib/mqtt/patches/string_encoding.rb
107
97
  - lib/mqtt/proxy.rb
98
+ - lib/mqtt/sn/packet.rb
108
99
  - lib/mqtt/version.rb
109
- - lib/mqtt.rb
110
100
  - spec/mqtt_client_spec.rb
111
101
  - spec/mqtt_packet_spec.rb
112
102
  - spec/mqtt_proxy_spec.rb
103
+ - spec/mqtt_sn_packet_spec.rb
113
104
  - spec/mqtt_version_spec.rb
114
105
  - spec/zz_client_integration_spec.rb
115
106
  homepage: http://github.com/njh/ruby-mqtt
116
107
  licenses:
117
108
  - MIT
109
+ metadata: {}
118
110
  post_install_message:
119
111
  rdoc_options: []
120
112
  require_paths:
121
113
  - lib
122
114
  required_ruby_version: !ruby/object:Gem::Requirement
123
- none: false
124
115
  requirements:
125
116
  - - ! '>='
126
117
  - !ruby/object:Gem::Version
127
118
  version: '0'
128
119
  required_rubygems_version: !ruby/object:Gem::Requirement
129
- none: false
130
120
  requirements:
131
121
  - - ! '>='
132
122
  - !ruby/object:Gem::Version
133
123
  version: '0'
134
124
  requirements: []
135
125
  rubyforge_project: mqtt
136
- rubygems_version: 1.8.23
126
+ rubygems_version: 2.5.2
137
127
  signing_key:
138
- specification_version: 3
128
+ specification_version: 4
139
129
  summary: Implementation of the MQTT protocol
140
130
  test_files:
141
131
  - spec/mqtt_client_spec.rb
142
132
  - spec/mqtt_packet_spec.rb
143
133
  - spec/mqtt_proxy_spec.rb
134
+ - spec/mqtt_sn_packet_spec.rb
144
135
  - spec/mqtt_version_spec.rb
145
136
  - spec/zz_client_integration_spec.rb
146
137
  has_rdoc: