rus_bank 0.6.0 → 0.7.0

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: 97c16ed5955b72b7277266c7fd60ae076eb79792
4
- data.tar.gz: 25c64f341251803164969e0ad62fb86f6286a78f
3
+ metadata.gz: 051a9c51a7ac2666d39d4a7f9988c40dc5578385
4
+ data.tar.gz: 1ab9c9f0eef089704fe62818d45b036934b4e163
5
5
  SHA512:
6
- metadata.gz: 643c970a2272f8119a9e420f38a7ce49cea7a748169270560e07a87aaf92f056158531297c57ef41681c4e5aedca80b3e3149eaded8b97ad3b869e43115c32d7
7
- data.tar.gz: 7ced0a75afabf44648b45a9ebbc4d962ee5b89db9b748172e4797f7330698511d8047781c50c22c820e5746b21272a41e4217102795d1be6c2cc240d3711558c
6
+ metadata.gz: f5bbfc4dc442b293e096d7c9dcfd7098db3c91e5df28f7959d4eca82dc0e292c364e15749ee42115032bfa1037fe19761fd77987167e40ed6e274564312aab87
7
+ data.tar.gz: 4a18725ed9a9d25d2e35f951a091f910323f7ddb0565de5efd46d908658713576db4cb512e12452420f59e254d6b4d3b72ec5080fa4aae0134bf208d26711373
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.6.0
1
+ 0.7.0
data/lib/rus_bank.rb CHANGED
@@ -30,6 +30,30 @@ class RusBank
30
30
  call(:int_code_to_reg_num, params)
31
31
  end
32
32
 
33
+ def SearchByRegionCodeXML(region_code)
34
+ params = { "RegCode" => region_code }
35
+ response = call(:search_by_region_code_xml, params)
36
+ if response.nil?
37
+ nil
38
+ else
39
+ response[:credit_org][:enum_credits]
40
+ end
41
+ end
42
+
43
+ def SearchByNameXML(bank_name) # Метод возвращает nil, либо массив хэшей
44
+ params = { "NamePart" => bank_name }
45
+ response = call(:search_by_name_xml, params)
46
+ if response[:credit_org][:enum_credits].nil?
47
+ nil
48
+ else
49
+ if not response[:credit_org][:enum_credits].instance_of?(Array) # Если найдена одна запись, возвращается единичный хэш,
50
+ [response[:credit_org][:enum_credits]] # если более одной, то массив хешей,
51
+ else # поэтому одну запись преобразуем к массиву из одного хэша.
52
+ response[:credit_org][:enum_credits]
53
+ end
54
+ end
55
+ end
56
+
33
57
  def EnumBicXML
34
58
  response = call(:enum_bic_xml)
35
59
  if response.nil?
data/rus_bank.gemspec CHANGED
@@ -5,7 +5,7 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "rus_bank"
8
- s.version = "0.6.0"
8
+ s.version = "0.7.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["wilDAlex"]
@@ -14,6 +14,9 @@ class TestRusBank < Test::Unit::TestCase
14
14
  INVALID_INT_CODE = "450000650999999"
15
15
  VALID_REG_NUMBER = "316"
16
16
  INVALID_REG_NUMBER = "289375237580009"
17
+ VALID_REGION = "16"
18
+ INVALID_REGION = "999"
19
+ INVALID_ORG_NAME = "djhgsjdlksl"
17
20
  VALID_ORG_NAME = "ХКФ БАНК"
18
21
  end
19
22
 
@@ -54,6 +57,17 @@ class TestRusBank < Test::Unit::TestCase
54
57
  assert(@cbr.RegionsEnumXML.length > 70, "This should return more than 70 elements")
55
58
  end
56
59
 
60
+ should ":search_by_region_code_xml returns array of elements" do
61
+ assert(@cbr.SearchByRegionCodeXML(VALID_REGION).instance_of?(Array), "This should be array")
62
+ assert(@cbr.SearchByRegionCodeXML(VALID_REGION).length > 10, "This should return more than 10 banks")
63
+ assert_equal(nil, @cbr.SearchByRegionCodeXML(INVALID_REGION), "Should return nil if value not found")
64
+ end
65
+
66
+ should ":search_by_name_xml return correct value" do
67
+ assert(@cbr.SearchByNameXML(VALID_ORG_NAME).instance_of?(Array), "This should be array")
68
+ assert_equal(VALID_ORG_NAME, @cbr.SearchByNameXML(VALID_ORG_NAME).first[:org_name])
69
+ assert_equal(nil, @cbr.SearchByNameXML(INVALID_ORG_NAME), "Should return nil if value not found")
70
+ end
57
71
 
58
72
  should ":credit_info_by_int_code_xml return correct bank" do
59
73
  assert_equal(VALID_REG_NUMBER, @cbr.CreditInfoByIntCodeXML(VALID_INT_CODE)[:reg_number])
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rus_bank
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.0
4
+ version: 0.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - wilDAlex