sms-uslugi-api 0.5.1 → 0.6.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 76f59025daf73751fae158bcbed5432d42d53cb6
4
- data.tar.gz: 4eff4594b3fddbc63042e6a6cf56536a52a3c51c
3
+ metadata.gz: fa3cc0956533ad7860ee6901b9c33bcecb3a8855
4
+ data.tar.gz: a307d914bdaf629d01870733f84646362652aa60
5
5
  SHA512:
6
- metadata.gz: 62a02153c6a082b8912f3b54d8ac6648fba4c6c964a95d91459197146f9834b2cf8834cac8cf4061cf2b9082b4bea2e2e8838e7406ba1a739493e6f498aa8df1
7
- data.tar.gz: 6aca789d93cb1b2d95e84c5155a6931718c48a2941a673a0b25bb72a4a7216b00a4e618d0e43275c1017befd7e9ee42270617a0361660c18f4dad5f411ca065c
6
+ metadata.gz: 6bf4acd350f17a1f274abfaa9c9a812ea3a71137e86849f29f59e7aed7fd5e80e4e12b256988343473804ccfcb51bc0ea4cc2608cde3e7cfa955ca75ceff0b41
7
+ data.tar.gz: 4afd07b857dec38a879c3d00250a6777958f2ff30952f8ef98c1d7b74209c99571342110b3160d281757e414db99dc031d00628bcbb83abc947130685b8e5063
data/README.md CHANGED
@@ -47,7 +47,26 @@ sms.send 'message in utf8', '81112223333' # отправка SMS получат
47
47
  }
48
48
  ```
49
49
 
50
+ ## Тестирование
51
+
52
+ Для запуска тестов необходимо запустить команду `rspec` в директории с проектом. После выполнения тестов будет сохранен отчёт о проценте покрытия кода тестами в директории `coverage`.
53
+
54
+ ## Разработка
55
+
56
+ Pull-реквесты приветствуются. Чтобы добавить новую функциональность или изменить текущую, требуется:
57
+
58
+ 1. Форкнуть и склонировать репозиторий
59
+ 2. Написать тесты и код
60
+ 3. Проверить работоспособность
61
+ 4. Проверить покрытие кода тестами
62
+ 5. Закомитить и создать pull-реквест
63
+
64
+ ### Примечание
65
+
66
+ Так как сервис не поддерживает тестовый режим, а также для того, чтобы не оставлять реальных данных аккаунта, для написания тестов с использованием VCR необходимо сначала указать при инициализации `SmsUslugiApi` в блоке `before` реальные данные, а затем поправить руками в `./fixtures/vcr_cassettes/*.yml` URL запроса, чтобы он содержал в качестве логина и пароля `demo:demo`, а также все необходимые данные.
67
+
68
+ PS. При смене информации для авторизации все старые тесты не пройдут, это нормальное поведение. После замены логина и пароля обратно на `demo:demo` всё станет нормально.
69
+
50
70
  ## Copyright
51
71
 
52
72
  Copyright (c) 2014 Alexander Maslov. See LICENSE.txt for further details.
53
-
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.5.1
1
+ 0.6.0
@@ -0,0 +1,45 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://lcab.sms-uslugi.ru/lcabApi/getPhoneInfo.php?login=demo&password=demo&phone=79000000000
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.8.8
12
+ Accept-Encoding:
13
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
14
+ Accept:
15
+ - '*/*'
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Server:
22
+ - nginx
23
+ Date:
24
+ - Sat, 22 Feb 2014 19:05:48 GMT
25
+ Content-Type:
26
+ - text/json; charset:utf-8;
27
+ Transfer-Encoding:
28
+ - chunked
29
+ Connection:
30
+ - keep-alive
31
+ X-Powered-By:
32
+ - PHP/5.5.9
33
+ X-Content-Type-Options:
34
+ - nosniff
35
+ X-Xss-Protection:
36
+ - 1; mode=block;
37
+ body:
38
+ encoding: UTF-8
39
+ string: '{"code":1,"descr":"\u041e\u043f\u0435\u0440\u0430\u0446\u0438\u044f
40
+ \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0430 \u0443\u0441\u043f\u0435\u0448\u043d\u043e","phone":"79000000000","district":"\u041a\u0440\u0430\u0441\u043d\u043e\u0434\u0430\u0440\u0441\u043a\u0438\u0439
41
+ \u043a\u0440\u0430\u0439","country":"\u0420\u043e\u0441\u0441\u0438\u044f","opsos":"\u0422\u0435\u043b\u0435
42
+ 2 (\u0446\u0438\u0444\u0440\u043e\u0432\u0430\u044f \u043f\u043e\u0434\u043f\u0438\u0441\u044c)"}'
43
+ http_version:
44
+ recorded_at: Sat, 22 Feb 2014 19:05:47 GMT
45
+ recorded_with: VCR 2.6.0
@@ -32,6 +32,12 @@ class SmsUslugiApi
32
32
  })
33
33
  end
34
34
 
35
+ def get_phone_info(phone)
36
+ api_request("getPhoneInfo.php", {
37
+ phone: phone
38
+ })
39
+ end
40
+
35
41
  private
36
42
 
37
43
  def api_request(url, options = {})
@@ -5,7 +5,7 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "sms-uslugi-api"
8
- s.version = "0.5.1"
8
+ s.version = "0.6.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Alexander Maslov"]
@@ -25,6 +25,7 @@ Gem::Specification.new do |s|
25
25
  "README.md",
26
26
  "Rakefile",
27
27
  "VERSION",
28
+ "fixtures/vcr_cassettes/getPhoneInfo.yml",
28
29
  "fixtures/vcr_cassettes/info.yml",
29
30
  "fixtures/vcr_cassettes/send.yml",
30
31
  "lib/sms-uslugi-api.rb",
@@ -40,7 +40,23 @@ describe SmsUslugiApi do
40
40
  code: 1,
41
41
  descr: "Успешно обработано",
42
42
  colsmsOfSending: 1,
43
- priceOfSending: '0.50'
43
+ priceOfSending: "0.50"
44
+ )
45
+ end
46
+ end
47
+ end
48
+
49
+ describe "phone number info" do
50
+ it "should reveice phone number info" do
51
+ VCR.use_cassette("getPhoneInfo") do
52
+ phone_info = @sms.get_phone_info("79000000000")
53
+ expect(phone_info).to include(
54
+ code: 1,
55
+ descr: "Операция завершена успешно",
56
+ phone: "79000000000",
57
+ country: "Россия",
58
+ district: "Краснодарский край",
59
+ opsos: "Теле 2 (цифровая подпись)"
44
60
  )
45
61
  end
46
62
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sms-uslugi-api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.1
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alexander Maslov
@@ -152,6 +152,7 @@ files:
152
152
  - README.md
153
153
  - Rakefile
154
154
  - VERSION
155
+ - fixtures/vcr_cassettes/getPhoneInfo.yml
155
156
  - fixtures/vcr_cassettes/info.yml
156
157
  - fixtures/vcr_cassettes/send.yml
157
158
  - lib/sms-uslugi-api.rb