wx_ext 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 53373828789ebd3ab2f05921de302c7e3cec984e
4
- data.tar.gz: 5ffb60baac576500d9e1e7cea5404903d27e2b0d
3
+ metadata.gz: f8a9175b614f4a055da85f6303f46a43e49960fd
4
+ data.tar.gz: fa906a29a4b0b5c7aa4cebc193941af670912185
5
5
  SHA512:
6
- metadata.gz: f7ba4f709afccc8075780147c451b763c1f388403b3beb23caa7781d459ab4ee39f62baebcd378e289a91ddd2db2327c1a8e5cb1a8bdc39b87dc7e5176b4e7af
7
- data.tar.gz: e46026e8ded4ae222b94ba7aa9cc269ad24f463c7700f3d07f0340e75f673348770a612fbd24bfe832e5472e88ca919aa37aa2be75df5b2660bb9e99397f780c
6
+ metadata.gz: fe8b3ff1f7086f4bb70ee9f12ed3faaf0c90dda65a548a0c0ab05db31ef508c5540e65a95e4c40ee2da7c9000a960fad8d5af9a4a07518a215a9cd58c2ec5a03
7
+ data.tar.gz: 361b995e41b4b3bc565bd71bfa3ec74d81db33a8519bc09bc2ed26cfd4f745f05fd46ea1b34cad2ea4ebe1400eec4eed3a9e8440effc4bf44274b4bdfe7bd93a
data/README.md CHANGED
@@ -7,7 +7,7 @@
7
7
  Add this line to your application's Gemfile:
8
8
 
9
9
  ```ruby
10
- gem 'wx_ext', '~> 0.0.2'
10
+ gem 'wx_ext', '~> 0.0.3'
11
11
  ```
12
12
 
13
13
  And then execute:
data/Rakefile CHANGED
@@ -1,4 +1,4 @@
1
- require "bundler/gem_tasks"
1
+ require 'bundler/gem_tasks'
2
2
 
3
3
  require 'rspec/core/rake_task'
4
4
  RSpec::Core::RakeTask.new('spec')
@@ -1,3 +1,4 @@
1
+ # encoding: UTF-8
1
2
  module WxExt
2
- VERSION = "0.0.2"
3
+ VERSION = "0.0.3"
3
4
  end
data/lib/wx_ext.rb CHANGED
@@ -22,50 +22,62 @@ module WxExt
22
22
  end
23
23
 
24
24
  # 使用用户名和密码登陆微信公众平台获取access_token, 过期时间是7200s
25
- def init
26
- login_name = @account
25
+ def login
27
26
  password = Digest::MD5.hexdigest @password
28
- home_url = @home_url
29
-
30
27
  login_headers = {
31
- referer: 'https://mp.weixin.qq.com/'
28
+ referer: 'https://mp.weixin.qq.com/'
32
29
  }
33
30
  login_params = {
34
- username: login_name,
35
- pwd: password,
36
- imgcode: '',
37
- f: 'json'
31
+ username: @account,
32
+ pwd: password,
33
+ imgcode: '',
34
+ f: 'json'
38
35
  }
39
36
 
40
- login_resource = RestClient::Resource.new(home_url, :headers => login_headers)
41
- login_res = login_resource['cgi-bin/login'].post login_params, :content_type => 'text/plain'
42
- login_cookies = login_res.cookies
43
- login_res_str = login_res.to_s
37
+ resource = RestClient::Resource.new(@home_url, headers: login_headers)
38
+ res = resource['cgi-bin/login'].post login_params
39
+ @cookies = res.cookies
40
+ return_hash = {
41
+ status: 0,
42
+ msg: 'ok'
43
+ }
44
44
  # {"base_resp"=>{"ret"=>0, "err_msg"=>"ok"}, "redirect_url"=>"/cgi-bin/home?t=home/index&lang=zh_CN&token=1869497342"}
45
45
  # {"base_resp":{"ret":-8,"err_msg":"need verify code"}}
46
46
  # https://mp.weixin.qq.com/cgi-bin/verifycode?username=tuodan@thecampus.cc&r=1415774604450
47
- login_res_hash = JSON.parse login_res_str
48
- token_reg = /.*token=(\d+)\".*/
49
- if token_reg =~ login_res_str
50
- @token = $1
47
+ res_hash = JSON.parse res.to_s
48
+ if res_hash['base_resp']['ret'].to_s == '0'
49
+ token_reg = /.*token=(\d+)\".*/
50
+ @token = $1 if token_reg =~ res.to_s
51
+ elsif res_hash['bash_resp']['ret'].to_s == '-8'
52
+ return_hash = {
53
+ status: -8,
54
+ msg: 'need_varify_code'
55
+ }
56
+ else
57
+ return_hash = {
58
+ status: -1,
59
+ msg: 'system_error'
60
+ }
51
61
  end
62
+ return_hash
63
+ end
52
64
 
53
- msg_send_url = "https://mp.weixin.qq.com/cgi-bin/masssendpage?t=mass/send&token=#{@token}&lang=zh_CN"
54
- msg_send_page = RestClient.get msg_send_url, {cookies: login_cookies}
55
- @cookies = login_cookies.merge msg_send_page.cookies
65
+ # 初始化 ticket, cookies, operation_seq, user_name 等等信息
66
+ def init
67
+ msg_send_url = 'https://mp.weixin.qq.com/cgi-bin/masssendpage'\
68
+ "?t=mass/send&token=#{@token}&lang=zh_CN"
69
+ msg_send_page = RestClient.get msg_send_url, cookies: @cookies
70
+ @cookies = @cookies.merge msg_send_page.cookies
56
71
 
57
72
  ticket_reg = /.*ticket\s*:\s*\"(\w+)\".*user_name\s*:\s*\"(\w+)\".*nick_name\s*:\s*\"(.*)\".*/m
58
-
59
73
  operation_seq_reg = /.*operation_seq\s*:\s*\"(\d+)\".*/
60
- if operation_seq_reg =~ msg_send_page.to_s
61
- @operation_seq = $1
62
- end
74
+ @operation_seq = $1 if operation_seq_reg =~ msg_send_page.to_s
63
75
  if ticket_reg =~ msg_send_page.to_s
64
76
  @ticket = $1
65
77
  @user_name = @ticket_id= $2
66
78
  true
67
79
  else
68
- nil
80
+ false
69
81
  end
70
82
  end
71
83
 
@@ -83,54 +95,63 @@ module WxExt
83
95
  post_single_msg_uri = 'cgi-bin/operate_appmsg'\
84
96
  '?t=ajax-response&sub=create&type=10&token'\
85
97
  "=#{@token}&lang=zh_CN"
86
- post_single_msg_headers = {
98
+ headers = {
87
99
  referer: 'https://mp.weixin.qq.com/cgi-bin/appmsg?t=media/appmsg_edit'\
88
- "&action=edit&type=10&isMul=0&isNew=1&lang=zh_CN&token=#{@token}"
100
+ '&action=edit&type=10&isMul=0&isNew=1&lang=zh_CN'\
101
+ "&token=#{@token}"
89
102
  }
90
- post_single_msg_resource = RestClient::Resource.new(@home_url,
91
- headers: post_single_msg_headers,
92
- cookies: @cookies)
93
- post_single_msg_res = post_single_msg_resource[post_single_msg_uri].post single_msg_params
103
+ resource = RestClient::Resource.new(@home_url, headers: headers,
104
+ cookies: @cookies)
105
+ res = resource[post_single_msg_uri].post single_msg_params
94
106
  # {"ret":"0", "msg":"OK"}
95
- res_hash = JSON.parse post_single_msg_res.to_s
107
+ JSON.parse res.to_s
96
108
  end
97
109
 
98
110
  # 发送多图文到素材中心
99
111
  def upload_multi_msg(msg_params)
100
- post_msg_uri = "cgi-bin/operate_appmsg?t=ajax-response&sub=create&type=10&token=#{@token}&lang=zh_CN"
101
- post_msg_headers = {
102
- referer: "https://mp.weixin.qq.com/cgi-bin/appmsg?t=media/appmsg_edit&action=edit&type=10&isMul=1&isNew=1&lang=zh_CN&token=#{@token}"
112
+ uri = 'cgi-bin/operate_appmsg?t=ajax-response&sub=create&type=10'\
113
+ "&token=#{@token}&lang=zh_CN"
114
+ headers = {
115
+ referer: 'https://mp.weixin.qq.com/cgi-bin/appmsg'\
116
+ '?t=media/appmsg_edit&action=edit&type=10'\
117
+ "&isMul=1&isNew=1&lang=zh_CN&token=#{@token}"
103
118
  }
104
- post_msg_resource = RestClient::Resource.new(@home_url, headers: post_msg_headers, cookies: @cookies)
105
- post_msg_res = post_msg_resource[post_msg_uri].post msg_params
119
+ resource = RestClient::Resource.new(@home_url, headers: headers,
120
+ cookies: @cookies)
121
+ post_msg_res = resource[uri].post msg_params
106
122
  # {"ret":"0", "msg":"OK"}
107
- res_hash = JSON.parse post_msg_res.to_s
123
+ JSON.parse post_msg_res.to_s
108
124
  end
109
125
 
110
126
  # 群发图文消息
111
127
  def broadcast_msg(msg_params)
112
- post_msg_uri = "cgi-bin/masssend?t=ajax-response&token=#{@token}&lang=zh_CN"
113
- post_msg_headers = {
114
- referer: "https://mp.weixin.qq.com/cgi-bin/masssendpage?t=mass/send&token=#{token}&lang=zh_CN",
115
- host: 'mp.weixin.qq.com'
128
+ uri = "cgi-bin/masssend?t=ajax-response&token=#{@token}&lang=zh_CN"
129
+ headers = {
130
+ referer: 'https://mp.weixin.qq.com/cgi-bin/masssendpage'\
131
+ "?t=mass/send&token=#{token}&lang=zh_CN",
132
+ host: 'mp.weixin.qq.com'
116
133
  }
117
- post_msg_resource = RestClient::Resource.new(@home_url, :headers => post_msg_headers, cookies: @cookies)
118
- post_msg_res = post_msg_resource[post_msg_uri].post msg_params
134
+ resource = RestClient::Resource.new(@home_url, headers: headers,
135
+ cookies: @cookies)
136
+ post_msg_res = resource[uri].post msg_params
119
137
  # {"ret":"0", "msg":"OK"}
120
- puts post_msg_res.to_s
121
- res_hash = JSON.parse post_msg_res.to_s
138
+ JSON.parse post_msg_res.to_s
122
139
  end
123
140
 
124
141
  # 获取所有的图文列表
125
142
  def get_app_msg_list(msg_begin = 0, msg_count = 10)
126
- app_msg_url = "https://mp.weixin.qq.com/cgi-bin/appmsg?type=10&action=list&begin=#{msg_begin}&count=#{msg_count}&f=json&token=#{@token}&lang=zh_CN&token=#{@token}&lang=zh_CN&f=json&ajax=1&random=#{rand}"
127
- msg_json = RestClient.get app_msg_url, {cookies: @cookies}
128
- app_msg_hash = JSON.parse msg_json.to_s
143
+ url = 'https://mp.weixin.qq.com/cgi-bin/appmsg?type=10&action=list'\
144
+ "&begin=#{msg_begin}&count=#{msg_count}&f=json&token=#{@token}"\
145
+ "&lang=zh_CN&token=#{@token}&lang=zh_CN&f=json&ajax=1"\
146
+ "&random=#{rand}"
147
+ msg_json = RestClient.get url, cookies: @cookies
148
+ JSON.parse msg_json.to_s
129
149
  end
130
150
 
131
151
  # 轮训新消息条数
132
152
  def get_new_msg_num(last_msg_id)
133
- uri = "cgi-bin/getnewmsgnum?f=json&t=ajax-getmsgnum&lastmsgid=#{last_msg_id}&token=#{@token}&lang=zh_CN"
153
+ uri = 'cgi-bin/getnewmsgnum?f=json&t=ajax-getmsgnum'\
154
+ "&lastmsgid=#{last_msg_id}&token=#{@token}&lang=zh_CN"
134
155
  post_params = {
135
156
  ajax: 1,
136
157
  f: 'json',
@@ -139,16 +160,19 @@ module WxExt
139
160
  token: @token
140
161
  }
141
162
  post_headers = {
142
- referer: "https://mp.weixin.qq.com/cgi-bin/message?t=message/list&count=20&day=7&token=#{@token}&lang=zh_CN"
163
+ referer: 'https://mp.weixin.qq.com/cgi-bin/message?t=message/list'\
164
+ "&count=20&day=7&token=#{@token}&lang=zh_CN"
143
165
  }
144
- resource = RestClient::Resource.new(@home_url, :headers => post_headers, cookies: @cookies)
166
+ resource = RestClient::Resource.new(@home_url, headers: post_headers,
167
+ cookies: @cookies)
145
168
  res = resource[uri].post post_params
146
- res_json = JSON.parse res.to_s
169
+ JSON.parse res.to_s
147
170
  end
148
171
 
149
172
  # 获取联系人信息
150
173
  def get_contact_info(fakeid)
151
- uri = "cgi-bin/getcontactinfo?t=ajax-getcontactinfo&lang=zh_CN&fakeid=#{fakeid}"
174
+ uri = 'cgi-bin/getcontactinfo?t=ajax-getcontactinfo'\
175
+ "&lang=zh_CN&fakeid=#{fakeid}"
152
176
  post_params = {
153
177
  ajax: 1,
154
178
  f: 'json',
@@ -157,43 +181,57 @@ module WxExt
157
181
  token: @token
158
182
  }
159
183
  post_headers = {
160
- referer: "https://mp.weixin.qq.com/cgi-bin/contactmanage?t=user/index&pagesize=10&pageidx=0&type=0&token=#{@token}&lang=zh_CN"
184
+ referer: 'https://mp.weixin.qq.com/cgi-bin/contactmanage?t=user/index'\
185
+ "&pagesize=10&pageidx=0&type=0&token=#{@token}&lang=zh_CN"
161
186
  }
162
- resource = RestClient::Resource.new(@home_url, :headers => post_headers, cookies: @cookies)
187
+ resource = RestClient::Resource.new(@home_url, headers: post_headers,
188
+ cookies: @cookies)
163
189
  res = resource[uri].post post_params
164
- res_json = JSON.parse res.to_s
190
+ JSON.parse res.to_s
165
191
  end
166
192
 
167
193
  # 获取国家列表
168
194
  def get_country_list
169
- url = "https://mp.weixin.qq.com/cgi-bin/getregions?t=setting/ajax-getregions&id=0&token=#{@token}&lang=zh_CN&token=#{@token}&lang=zh_CN&f=json&ajax=1&random=#{rand}"
195
+ url = 'https://mp.weixin.qq.com/cgi-bin/getregions'\
196
+ "?t=setting/ajax-getregions&id=0&token=#{@token}&lang=zh_CN"\
197
+ "&token=#{@token}&lang=zh_CN&f=json&ajax=1&random=#{rand}"
170
198
  resource = RestClient::Resource.new(url, cookies: @cookies)
171
199
  res = resource.get
172
- res_json = JSON.parse res.to_s
200
+ JSON.parse res.to_s
173
201
  end
174
202
 
175
203
  # 获取每日可推送消息数
176
204
  def get_day_msg_count
177
- url = "https://mp.weixin.qq.com/cgi-bin/masssendpage?t=mass/send&token=#{@token}&lang=zh_CN"
178
- res = RestClient.get(url, {cookies: @cookies})
205
+ url = 'https://mp.weixin.qq.com/cgi-bin/masssendpage'\
206
+ "?t=mass/send&token=#{@token}&lang=zh_CN"
207
+ res = RestClient.get(url, cookies: @cookies)
179
208
  day_msg_count = 0
180
- msg_count_reg = /.*mass_send_left\s*:\s*can_verify_apply\s*\?\s*\'(\d*)\'\*/
181
- if msg_count_reg =~ res.to_s
182
- day_msg_count = $1
183
- end
209
+ reg = /.*mass_send_left\s*:\s*can_verify_apply\s*\?\s*\'(\d*)\'\*/
210
+ day_msg_count = $1 if reg =~ res.to_s
184
211
  day_msg_count.to_i
185
212
  end
186
213
 
187
- # todo list
188
- # 获取 last_msg_id 和 fake_id
189
- def get_ids # 未完成
190
- url = "https://mp.weixin.qq.com/cgi-bin/message?t=message/list&count=20&day=7&token=#{@token}&lang=zh_CN"
214
+ # 获取 last_msg_id 和 msg_item
215
+ def get_msg_item
216
+ url = 'https://mp.weixin.qq.com/cgi-bin/message?t=message/list&count=20'\
217
+ "&day=7&token=#{@token}&lang=zh_CN"
191
218
  resource = RestClient::Resource.new(url, cookies: @cookies)
192
219
  res = resource.get
193
- doc = Nokogiri::HTML(res.to_s)
194
- doc.css('ul.message_list li').each do |li|
195
- puts li.content
220
+ reg = /.*total_count\s*:\s*(\d*).*latest_msg_id\s*:\s*\'(\d*)\'.*list\s*:\s*\((.*)\)\.msg_item,.*/m
221
+ return_hash = {
222
+ status: -1,
223
+ msg: 'system_error'
224
+ }
225
+ if reg =~ res.to_s
226
+ return_hash = {
227
+ status: 0,
228
+ msg: 'ok',
229
+ total_count: $1,
230
+ latest_msg_id: $2,
231
+ msg_item: JSON.parse($3)['msg_item']
232
+ }
196
233
  end
234
+ return_hash
197
235
  end
198
236
 
199
237
  # https://mp.weixin.qq.com/cgi-bin/message?t=message/list&token=1664040225&count=20&day=7
@@ -208,19 +246,21 @@ module WxExt
208
246
  end
209
247
 
210
248
  private
249
+
211
250
  def set_cookie(page, k, v)
212
251
  case Capybara.current_session.driver
213
252
  when Capybara::Poltergeist::Driver
214
- page.driver.set_cookie(k,v)
253
+ page.driver.set_cookie(k, v)
215
254
  when Capybara::RackTest::Driver
216
255
  headers = {}
217
- Rack::Utils.set_cookie_header!(headers,k,v)
256
+ Rack::Utils.set_cookie_header!(headers, k, v)
218
257
  cookie_string = headers['Set-Cookie']
219
258
  Capybara.current_session.driver.browser.set_cookie(cookie_string)
220
259
  when Capybara::Selenium::Driver
221
- page.driver.browser.manage.add_cookie(:name=>k, :value=>v)
260
+ page.driver.browser.manage.add_cookie(name: k, value: v)
222
261
  else
223
- raise "no cookie-setter implemented for driver #{Capybara.current_session.driver.class.name}"
262
+ fail 'no cookie-setter implemented for driver '\
263
+ "#{Capybara.current_session.driver.class.name}"
224
264
  end
225
265
  end
226
266
  end
data/spec/spec_helper.rb CHANGED
@@ -1,3 +1,4 @@
1
+ # encoding: UTF-8
1
2
  require 'bundler/setup'
2
3
  Bundler.setup
3
4
 
@@ -5,4 +6,4 @@ require 'wx_ext'
5
6
 
6
7
  RSpec.configure do |config|
7
8
  #
8
- end
9
+ end
@@ -3,10 +3,16 @@ require 'spec_helper'
3
3
 
4
4
  describe WxExt::WeiXin do
5
5
  before(:all) do
6
- @weixin = WxExt::WeiXin.new 'flowerwrong@hotmail.com', '1*flower@wrong*1'
6
+ @weixin = WxExt::WeiXin.new 'flowerwrong', '11111111'
7
7
  end
8
8
 
9
- it 'init method should init all params' do
9
+ it 'should login to the mp' do
10
+ res_hash = @weixin.login
11
+ expect(res_hash[:status]).to eql(0)
12
+ end
13
+
14
+ it 'should init method should init all params' do
15
+ res_hash = @weixin.login
10
16
  flag = @weixin.init
11
17
  if flag
12
18
  token = @weixin.token
@@ -15,29 +21,36 @@ describe WxExt::WeiXin do
15
21
  end
16
22
  end
17
23
 
18
- it 'should get day msg count' do
19
- flag = @weixin.init
20
- if flag
21
- day_msg_count = @weixin.get_day_msg_count
22
- expect(day_msg_count.to_s).to match(/\d*/)
23
- end
24
- end
25
-
26
- # 未完待续
27
24
  it 'should get fakeids and msg ids' do
25
+ res_hash = @weixin.login
28
26
  flag = @weixin.init
29
- res = @weixin.get_ids if flag
30
- puts res.to_s
27
+ res_hash = @weixin.get_msg_item if flag
28
+ puts '==' * 20
29
+ puts res_hash
30
+ expect(res_hash[:status]).to eql(0)
31
31
  end
32
32
 
33
33
  it "should get new msg num" do
34
+ res_hash = @weixin.login
34
35
  flag = @weixin.init
35
- res_hash = @weixin.get_new_msg_num('201004139')
36
+ msg_res_hash = @weixin.get_msg_item if flag
37
+ res_hash = @weixin.get_new_msg_num(msg_res_hash[:latest_msg_id=])
38
+ puts '==' * 20
36
39
  puts res_hash
37
40
  expect(res_hash['ret'].to_s).to eql('0')
38
41
  end
39
42
 
43
+ it 'should get day msg count' do
44
+ res_hash = @weixin.login
45
+ flag = @weixin.init
46
+ if flag
47
+ day_msg_count = @weixin.get_day_msg_count
48
+ expect(day_msg_count.to_s).to match(/\d*/)
49
+ end
50
+ end
51
+
40
52
  it "should get contact info" do
53
+ res_hash = @weixin.login
41
54
  flag = @weixin.init
42
55
  res_hash = @weixin.get_contact_info('204060720')
43
56
  puts res_hash
@@ -45,13 +58,15 @@ describe WxExt::WeiXin do
45
58
  end
46
59
 
47
60
  it "should return a country list" do
61
+ res_hash = @weixin.login
48
62
  flag = @weixin.init
49
63
  res_hash = @weixin.get_country_list
50
64
  puts res_hash
51
65
  expect(res_hash["num"].to_s).to match(/\d+/)
52
66
  end
53
67
 
54
- it "upload_file method should return a right hash" do
68
+ it 'should upload_file method should return a right hash' do
69
+ res_hash = @weixin.login
55
70
  flag = @weixin.init
56
71
  puts @weixin.token
57
72
  puts @weixin.ticket_id
@@ -63,7 +78,8 @@ describe WxExt::WeiXin do
63
78
  expect(file_hash["base_resp"]["ret"].to_s).to eql("0")
64
79
  end
65
80
 
66
- it "upload_single_msg method should upload a msg to sucaizhongxin" do
81
+ it "should upload_single_msg method should upload a msg to sucaizhongxin" do
82
+ res_hash = @weixin.login
67
83
  flag = @weixin.init
68
84
  file = File.new("/home/yang/dev/ruby/gem/hack_wx/spec/hack_wx/test_spec.jpg", 'rb')
69
85
  file_hash = @weixin.upload_file(file, "test_spec.jpg")
@@ -91,7 +107,8 @@ describe WxExt::WeiXin do
91
107
  expect(msg_hash["ret"].to_s).to eql("0")
92
108
  end
93
109
 
94
- it "upload_multi_msg method should upload multi msg to sucaizhongxin" do
110
+ it "should upload_multi_msg method should upload multi msg to sucaizhongxin" do
111
+ res_hash = @weixin.login
95
112
  flag = @weixin.init
96
113
  file = File.new("/home/yang/dev/ruby/gem/hack_wx/spec/hack_wx/test_spec.jpg", 'rb')
97
114
  file_hash = @weixin.upload_file(file, "test_spec.jpg")
@@ -126,7 +143,8 @@ describe WxExt::WeiXin do
126
143
  expect(msg_hash["ret"].to_s).to eql("0")
127
144
  end
128
145
 
129
- it "broadcast msg to all user should return ok" do
146
+ it "should broadcast msg to all user" do
147
+ res_hash = @weixin.login
130
148
  flag = @weixin.init
131
149
 
132
150
  msg_hash = @weixin.get_app_msg_list
@@ -135,8 +153,8 @@ describe WxExt::WeiXin do
135
153
 
136
154
  msg_params = {
137
155
  ajax: 1,
138
- appmsgid: app_msg_id, # 图文appid
139
- cardlimit: 1, # 发送限制条数
156
+ appmsgid: app_msg_id,
157
+ cardlimit: 1,
140
158
  city: '',
141
159
  country: '',
142
160
  province: '',
@@ -144,7 +162,7 @@ describe WxExt::WeiXin do
144
162
  groupid: '-1',
145
163
  imgcode: '',
146
164
  lang: 'zh_CN',
147
- operation_seq: @weixin.operation_seq, #
165
+ operation_seq: @weixin.operation_seq,
148
166
  random: rand,
149
167
  sex: 0,
150
168
  synctxweibo: 0,
@@ -158,7 +176,8 @@ describe WxExt::WeiXin do
158
176
  expect(msg_hash["ret"].to_s).to eql("0")
159
177
  end
160
178
 
161
- it "get app msg list return json" do
179
+ it 'should get app msg list with json' do
180
+ res_hash = @weixin.login
162
181
  flag = @weixin.init
163
182
 
164
183
  msg_hash = @weixin.get_app_msg_list
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wx_ext
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - flowerwrong
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-11-18 00:00:00.000000000 Z
11
+ date: 2014-11-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler