nfse_gyn 0.1.0 → 0.1.1

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
- SHA256:
3
- metadata.gz: 01a27dc406ace444898a4dca5f3588e136367c7c6083f398cfe147bd87b4d667
4
- data.tar.gz: e6257d16d7d6f976f6f9ce595ef9fb5892cff2079311f156f328be0099a32aaf
2
+ SHA1:
3
+ metadata.gz: 8edeb97b674900d2d55bfe6079983a82928ce28d
4
+ data.tar.gz: 9a66234db94af251416151771705d6c795c21699
5
5
  SHA512:
6
- metadata.gz: ea2d7880cd0ba4f2f4efbf56b7833a199616e4662b1edcf120d33e377decb0fb270c6b18d811461a72829492b67d639e851d3398929e787e9fa0e902e9eedbb7
7
- data.tar.gz: aebb617cb978903d7b1f9e024909e8ec12443b5bfe05b37da0ef3d047f2ec5a2c727cab84bb45fb3621df3bf2e93d43c2d94359cd8c25db529e58c32145d651d
6
+ metadata.gz: ad16794f0150a07fd650c15c7c0e9fd1f8164a1557a2964208bcb08289b836a480c1d3557607601fcf113522fd1983ff55dd82fc6aad3cf08dca4824ce6dd073
7
+ data.tar.gz: d809f3cf8333b71cb5bd2037729f1c4bf8c8dc7e7ebaac014b4a01e424078cd97d4b42d29f0ecb139bf0b1f7d5d71d450e611513f9554fc69435734aef2c84b7
data/Gemfile.lock CHANGED
@@ -1,8 +1,9 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- nfse_gyn (0.1.0)
4
+ nfse_gyn (0.1.1)
5
5
  activemodel (~> 3.0)
6
+ activesupport (~> 3.0)
6
7
  savon (~> 2.9)
7
8
  signer (~> 1.10)
8
9
 
data/README.md CHANGED
@@ -47,7 +47,8 @@ Crie um arquivo `config/initializers/nfse_gyn.rb` e adicione:
47
47
  ```ruby
48
48
  NfseGyn.configure do |nfse|
49
49
  nfse.test_mode = true
50
- nfse.log_level = :debug
50
+ nfse.test_mode = true
51
+ nfse.log_level = :none
51
52
  nfse.cnpj = '000000000000000'
52
53
  nfse.inscricao_municipal = '0000000'
53
54
  nfse.codigo_tributacao_municipio = '00000000'
@@ -2,6 +2,7 @@ module NfseGyn
2
2
  class Configuration
3
3
  attr_accessor :wsdl,
4
4
  :test_mode,
5
+ :mock_mode,
5
6
  :log_level,
6
7
  :ca_cert_path,
7
8
  :cert_key_path,
@@ -16,6 +17,7 @@ module NfseGyn
16
17
 
17
18
  def initialize
18
19
  @test_mode = false
20
+ @mock_mode = false
19
21
  @log_level = :debug
20
22
  @wsdl = 'https://nfse.goiania.go.gov.br/ws/nfse.asmx?wsdl'
21
23
 
@@ -27,6 +29,13 @@ module NfseGyn
27
29
  @codigo_tributacao_municipio = ''
28
30
  end
29
31
 
32
+ def from_h(hash)
33
+ hash.each do |k, v|
34
+ instance_variable_set("@#{k}".to_sym, v)
35
+ end
36
+ self
37
+ end
38
+
30
39
  def rps_serie
31
40
  return 'TESTE' if test_mode
32
41
  'A'
@@ -12,7 +12,11 @@ module NfseGyn
12
12
  end
13
13
 
14
14
  def execute!
15
- @client.call(:consultar_nfse_rps, self)
15
+ if NfseGyn.configuration.mock_mode
16
+ NfseGyn::MockConsultarNfseResponse.new(invoice_number, invoice_serie, invoice_type)
17
+ else
18
+ @client.call(:consultar_nfse_rps, self)
19
+ end
16
20
  end
17
21
 
18
22
  def to_xml
@@ -8,7 +8,11 @@ module NfseGyn
8
8
  end
9
9
 
10
10
  def execute!
11
- @client.call(:gerar_nfse, self)
11
+ if NfseGyn.configuration.mock_mode
12
+ NfseGyn::MockGerarNfseResponse.new(@invoice)
13
+ else
14
+ @client.call(:gerar_nfse, self)
15
+ end
12
16
  end
13
17
 
14
18
  def to_xml
@@ -1,7 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'active_support'
4
- require 'active_support/core_ext'
5
3
  require 'signer'
6
4
 
7
5
  module NfseGyn
@@ -20,32 +18,32 @@ module NfseGyn
20
18
  'InfDeclaracaoPrestacaoServico' => {
21
19
  '@xmlns' => 'http://nfse.goiania.go.gov.br/xsd/nfse_gyn_v02.xsd',
22
20
  'Rps' => {
23
- '@Id' => @invoice[:identification_number],
21
+ '@Id' => raise_if_missing(@invoice[:identification_number], :identification_number),
24
22
  'IdentificacaoRps' => {
25
23
  'Numero' => @invoice[:identification_number],
26
- 'Serie' => NfseGyn.configuration.rps_serie,
27
- 'Tipo' => NfseGyn.configuration.rps_tipo
24
+ 'Serie' => raise_if_missing(NfseGyn.configuration.rps_serie, :rps_serie),
25
+ 'Tipo' => raise_if_missing(NfseGyn.configuration.rps_tipo, :rps_tipo)
28
26
  },
29
- 'DataEmissao' => @invoice[:data_emissao],
27
+ 'DataEmissao' => raise_if_missing(@invoice[:data_emissao], :data_emissao),
30
28
  'Status' => 1
31
29
  },
32
30
 
33
31
  'Servico' => {
34
32
  'Valores' => {
35
- 'ValorServicos' => @invoice[:total],
36
- 'Aliquota' => NfseGyn.configuration.valor_aliquota
33
+ 'ValorServicos' => raise_if_missing(@invoice[:total], :total),
34
+ 'Aliquota' => raise_if_missing(NfseGyn.configuration.valor_aliquota, :valor_aliquota)
37
35
  },
38
36
 
39
- 'CodigoTributacaoMunicipio' => NfseGyn.configuration.codigo_tributacao_municipio,
40
- 'Discriminacao' => clear(@invoice[:description]),
41
- 'CodigoMunicipio' => NfseGyn.configuration.codigo_municipio
37
+ 'CodigoTributacaoMunicipio' => raise_if_missing(NfseGyn.configuration.codigo_tributacao_municipio, :codigo_tributacao_municipio),
38
+ 'Discriminacao' => raise_if_missing(clear(@invoice[:description]), :description),
39
+ 'CodigoMunicipio' => raise_if_missing(NfseGyn.configuration.codigo_municipio, :codigo_municipio)
42
40
  },
43
41
 
44
42
  'Prestador' => {
45
43
  'CpfCnpj' => {
46
- 'Cnpj' => NfseGyn.configuration.cnpj
44
+ 'Cnpj' => raise_if_missing(NfseGyn.configuration.cnpj, :prestador_cnpj)
47
45
  },
48
- 'InscricaoMunicipal' => NfseGyn.configuration.inscricao_municipal
46
+ 'InscricaoMunicipal' => raise_if_missing(NfseGyn.configuration.inscricao_municipal, :prestador_inscricao_municipal)
49
47
  },
50
48
 
51
49
  'Tomador' => tomador
@@ -54,8 +52,15 @@ module NfseGyn
54
52
  )
55
53
  end
56
54
 
55
+ private
56
+
57
+ def raise_if_missing(param, param_name)
58
+ throw "Param #{param_name} is missing" if param.blank?
59
+ param
60
+ end
61
+
57
62
  def sign(xml)
58
- return xml if !certificate.present? || !private_key.present?
63
+ return xml if NfseGyn.configuration.mock_mode || !certificate.present? || !private_key.present?
59
64
  signer = Signer.new(xml, canonicalize_algorithm: :c14n_1_0, wss: false)
60
65
  signer.cert = OpenSSL::X509::Certificate.new(certificate)
61
66
  signer.private_key = OpenSSL::PKey::RSA.new(private_key, NfseGyn.configuration.cert_key_password)
@@ -91,7 +96,7 @@ module NfseGyn
91
96
 
92
97
  if document_type.present?
93
98
  xml['IdentificacaoTomador'] = {
94
- 'CpfCnpj' => { document_type => document_number }
99
+ 'CpfCnpj' => { document_type => raise_if_missing(document_number, :tomador_document_number)}
95
100
  }
96
101
  end
97
102
 
@@ -0,0 +1,77 @@
1
+ module NfseGyn
2
+ class MockConsultarNfseResponse < NfseGyn::ConsultarNfse::Response
3
+ def initialize(_invoice_number, _invoice_serie, _invoice_type)
4
+ super(nil)
5
+ end
6
+
7
+ def content
8
+ {
9
+ 'CompNfse' => {
10
+ 'Nfse' => {
11
+ 'InfNfse' => {
12
+ 'Numero' => '370',
13
+ 'CodigoVerificacao' => 'MB94-C3ZA',
14
+ 'DataEmissao' => @request[:data_emissao],
15
+ 'OutrasInformacoes' => 'OUTRAS INFORMACOES SOBRE O SERVICO.',
16
+ 'ValoresNfse' => {
17
+ 'BaseCalculo' => '0',
18
+ 'Aliquota' => '5',
19
+ 'ValorIss' => '0'
20
+ }, 'DeclaracaoPrestacaoServico' => {
21
+ 'IdentificacaoRps' => {
22
+ 'Numero' => '14',
23
+ 'Serie' => 'UNICA',
24
+ 'Tipo' => '1'
25
+ },
26
+ 'DataEmissao' => @request[:data_emissao],
27
+ 'Competencia' => @request[:data_emissao],
28
+ 'Servico' => {
29
+ 'Valores' => {
30
+ 'ValorServicos' => @request[:total],
31
+ 'ValorDeducoes' => '0',
32
+ 'ValorPis' => '0.00',
33
+ 'ValorCofins' => '0.00',
34
+ 'ValorInss' => '0.00',
35
+ 'ValorIr' => '0.00',
36
+ 'ValorCsll' => '0.00',
37
+ 'ValorIss' => '0',
38
+ 'Aliquota' => '5',
39
+ 'DescontoIncondicionado' => '0.00'
40
+ },
41
+ 'IssRetido' => '2',
42
+ 'CodigoTributacaoMunicipio' => '791120000',
43
+ 'Discriminacao' => @request[:description],
44
+ 'CodigoMunicipio' => '0025300',
45
+ 'ExigibilidadeISS' => '1',
46
+ 'MunicipioIncidencia' => '0025300'
47
+ }, 'Prestador' => {
48
+ 'IdentificacaoPrestador' => {
49
+ 'CpfCnpj' => {
50
+ 'Cnpj' => NfseGyn.configuration.cnpj
51
+ }, 'InscricaoMunicipal' => NfseGyn.configuration.inscricao_municipal
52
+ }
53
+ }, 'Tomador' => {
54
+ 'IdentificacaoTomador' => {
55
+ 'CpfCnpj' => {
56
+ (@request[:customer][:document_type]).to_s => (@request[:customer][:document_number]).to_s
57
+ }
58
+ },
59
+ 'RazaoSocial' => @request[:customer][:name],
60
+ 'Endereco' => {
61
+ 'Endereco' => 'RUA DAS AMENDOEIRAS',
62
+ 'Numero' => '30',
63
+ 'Complemento' => 'LOTE 4',
64
+ 'Bairro' => 'CENTRO',
65
+ 'CodigoMunicipio' => '0025300',
66
+ 'Uf' => 'GO',
67
+ 'Cep' => '74823350'
68
+ }
69
+ }, 'OptanteSimplesNacional' => '2'
70
+ }
71
+ }
72
+ }
73
+ }
74
+ }
75
+ end
76
+ end
77
+ end
@@ -0,0 +1,85 @@
1
+ module NfseGyn
2
+ class MockGerarNfseResponse < NfseGyn::GerarNfse::Response
3
+ def initialize(request)
4
+ super(nil)
5
+ @request = request
6
+ end
7
+
8
+ def content
9
+ {
10
+ 'ListaNfse' => {
11
+ 'CompNfse' => {
12
+ 'Nfse' => {
13
+ 'InfNfse' => {
14
+ 'Numero' => '370',
15
+ 'CodigoVerificacao' => 'MB94-C3ZA',
16
+ 'DataEmissao' => @request[:data_emissao],
17
+ 'OutrasInformacoes' => 'OUTRAS INFORMACOES SOBRE O SERVICO.',
18
+ 'ValoresNfse' => {
19
+ 'BaseCalculo' => '0',
20
+ 'Aliquota' => '5',
21
+ 'ValorIss' => '0'
22
+ }, 'DeclaracaoPrestacaoServico' => {
23
+ 'IdentificacaoRps' => {
24
+ 'Numero' => '14',
25
+ 'Serie' => 'UNICA',
26
+ 'Tipo' => '1'
27
+ },
28
+ 'DataEmissao' => @request[:data_emissao],
29
+ 'Competencia' => @request[:data_emissao],
30
+ 'Servico' => {
31
+ 'Valores' => {
32
+ 'ValorServicos' => @request[:total],
33
+ 'ValorDeducoes' => '0',
34
+ 'ValorPis' => '0.00',
35
+ 'ValorCofins' => '0.00',
36
+ 'ValorInss' => '0.00',
37
+ 'ValorIr' => '0.00',
38
+ 'ValorCsll' => '0.00',
39
+ 'ValorIss' => '0',
40
+ 'Aliquota' => '5',
41
+ 'DescontoIncondicionado' => '0.00'
42
+ },
43
+ 'IssRetido' => '2',
44
+ 'CodigoTributacaoMunicipio' => '791120000',
45
+ 'Discriminacao' => @request[:description],
46
+ 'CodigoMunicipio' => '0025300',
47
+ 'ExigibilidadeISS' => '1',
48
+ 'MunicipioIncidencia' => '0025300'
49
+ }, 'Prestador' => {
50
+ 'IdentificacaoPrestador' => {
51
+ 'CpfCnpj' => {
52
+ 'Cnpj' => NfseGyn.configuration.cnpj
53
+ }, 'InscricaoMunicipal' => NfseGyn.configuration.inscricao_municipal
54
+ }
55
+ }, 'Tomador' => {
56
+ 'IdentificacaoTomador' => {
57
+ 'CpfCnpj' => {
58
+ (@request[:customer][:document_type]).to_s => (@request[:customer][:document_number]).to_s
59
+ }
60
+ },
61
+ 'RazaoSocial' => @request[:customer][:name],
62
+ 'Endereco' => {
63
+ 'Endereco' => 'RUA DAS AMENDOEIRAS',
64
+ 'Numero' => '30',
65
+ 'Complemento' => 'LOTE 4',
66
+ 'Bairro' => 'CENTRO',
67
+ 'CodigoMunicipio' => '0025300',
68
+ 'Uf' => 'GO',
69
+ 'Cep' => '74823350'
70
+ }
71
+ }, 'OptanteSimplesNacional' => '2'
72
+ }
73
+ }
74
+ }
75
+ }
76
+ }, 'ListaMensagemRetorno' => {
77
+ 'MensagemRetorno' => {
78
+ 'Codigo' => 'L000',
79
+ 'Mensagem' => 'NORMAL'
80
+ }
81
+ }
82
+ }
83
+ end
84
+ end
85
+ end
@@ -13,7 +13,6 @@ module NfseGyn
13
13
  end
14
14
 
15
15
  def error?
16
- binding.pry
17
16
  content['ListaMensagemRetorno'].present?
18
17
  end
19
18
 
@@ -11,6 +11,7 @@ module NfseGyn
11
11
  private
12
12
 
13
13
  def client
14
+ log = NfseGyn.configuration.log_level != :none
14
15
  @client ||= Savon.client(
15
16
  wsdl: NfseGyn.configuration.wsdl,
16
17
  env_namespace: :soap,
@@ -21,8 +22,8 @@ module NfseGyn
21
22
  ssl_cert_key_file: NfseGyn.configuration.cert_key_path,
22
23
  ssl_ca_cert_file: NfseGyn.configuration.ca_cert_path,
23
24
  ssl_cert_key_password: NfseGyn.configuration.cert_key_password,
24
- log_level: NfseGyn.configuration.log_level,
25
- log: true,
25
+ log_level: log ? NfseGyn.configuration.log_level : nil,
26
+ log: log,
26
27
  open_timeout: 120,
27
28
  read_timeout: 120
28
29
  )
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module NfseGyn
4
- VERSION = '0.1.0'.freeze
4
+ VERSION = '0.1.1'.freeze
5
5
  end
data/lib/nfse_gyn.rb CHANGED
@@ -2,6 +2,8 @@
2
2
 
3
3
  require 'ostruct'
4
4
  require 'active_model'
5
+ require 'active_support'
6
+ require 'active_support/core_ext'
5
7
 
6
8
  require 'nfse_gyn/version'
7
9
  require 'nfse_gyn/configuration'
@@ -10,6 +12,8 @@ require 'nfse_gyn/soap_client'
10
12
  require 'nfse_gyn/response'
11
13
  require 'nfse_gyn/gerar_nfse'
12
14
  require 'nfse_gyn/consultar_nfse'
15
+ require 'nfse_gyn/mock_gerar_nfse_response'
16
+ require 'nfse_gyn/mock_consultar_nfse_response'
13
17
 
14
18
  HTTPI.adapter = :net_http
15
19
 
data/nfse_gyn.gemspec CHANGED
@@ -9,7 +9,7 @@ Gem::Specification.new do |spec|
9
9
  spec.email = ['ramonvic@me.com']
10
10
 
11
11
  spec.summary = 'Gem para realizar a geração de NFSE em Goiânia'
12
- spec.homepage = "https://github.com/ramonvic/nfse_gyn"
12
+ spec.homepage = 'https://github.com/ramonvic/nfse_gyn'
13
13
  spec.license = 'MIT'
14
14
 
15
15
  spec.metadata['homepage_uri'] = spec.homepage
@@ -19,11 +19,12 @@ Gem::Specification.new do |spec|
19
19
  spec.executables = `git ls-files -- bin/*`.split("\n").map { |f| File.basename(f) }
20
20
  spec.require_paths = ['lib']
21
21
 
22
- spec.add_dependency 'activemodel', '~> 3.0'
23
- spec.add_dependency 'savon', '~> 2.9'
24
- spec.add_dependency 'signer', '~> 1.10'
22
+ spec.add_dependency 'activemodel', '~> 3.0'
23
+ spec.add_dependency 'activesupport', '~> 3.0'
24
+ spec.add_dependency 'savon', '~> 2.9'
25
+ spec.add_dependency 'signer', '~> 1.10'
25
26
 
26
- spec.add_development_dependency 'bundler', '~> 1.7'
27
+ spec.add_development_dependency 'bundler', '~> 1.7'
27
28
  spec.add_development_dependency 'pry'
28
29
  spec.add_development_dependency 'rake', '~> 10.0'
29
30
  spec.add_development_dependency 'rspec'
@@ -45,4 +45,30 @@ RSpec.describe NfseGyn::Configuration do
45
45
  it { expect(NfseGyn.configuration.cert_key_password).to eq 'very-secure-encrypted-password' }
46
46
  it { expect(NfseGyn.configuration.wsdl).to eq 'https://nfse.goiania.go.gov.br/ws/nfse.asmx?wsdl' }
47
47
  end
48
+
49
+ describe '#from_h' do
50
+ let(:hash) do
51
+ {
52
+ test_mode: true,
53
+ cert_path: 'certicate.pem',
54
+ ca_cert_path: 'ca/certicate.pem',
55
+ cert_key_path: 'certicate/key.pem',
56
+ cert_key_password: 'updated-password'
57
+ }
58
+ end
59
+
60
+ before do
61
+ NfseGyn.configuration.from_h(hash)
62
+ end
63
+
64
+ after do
65
+ NfseGyn.reset!
66
+ end
67
+
68
+ it { expect(NfseGyn.configuration.test_mode).to be_truthy }
69
+ it { expect(NfseGyn.configuration.cert_path).to eq 'certicate.pem' }
70
+ it { expect(NfseGyn.configuration.ca_cert_path).to eq 'ca/certicate.pem' }
71
+ it { expect(NfseGyn.configuration.cert_key_path).to eq 'certicate/key.pem' }
72
+ it { expect(NfseGyn.configuration.cert_key_password).to eq 'updated-password' }
73
+ end
48
74
  end
@@ -19,16 +19,17 @@ RSpec.describe NfseGyn::GerarNfse do
19
19
  end
20
20
 
21
21
  describe '#execute!' do
22
+ let(:response) { File.read(fixture_file_path('xmls/valid_gerar_nfse_response.xml'))}
22
23
  let(:xml_payload) { File.read(fixture_file_path('xmls/valid_gerar_nfse_request.xml')) }
23
24
  let(:request_payload) { "<ArquivoXML><![CDATA[#{xml_payload}]]></ArquivoXML>" }
24
25
 
25
26
  before do
26
27
  allow(subject).to receive(:to_xml).and_return(xml_payload)
27
- savon.expects(:gerar_nfse).with(message: request_payload).returns(response)
28
28
  end
29
29
 
30
30
  context 'valid request' do
31
- let(:response) { File.read(fixture_file_path('xmls/valid_gerar_nfse_response.xml'))}
31
+
32
+ before { savon.expects(:gerar_nfse).with(message: request_payload).returns(response) }
32
33
 
33
34
  it 'returns a valid response' do
34
35
  expect(subject.execute!).to be_successful
@@ -38,6 +39,8 @@ RSpec.describe NfseGyn::GerarNfse do
38
39
  context 'invalid request' do
39
40
  let(:response) { File.read(fixture_file_path('xmls/invalid_gerar_nfse_response.xml'))}
40
41
 
42
+ before { savon.expects(:gerar_nfse).with(message: request_payload).returns(response) }
43
+
41
44
  it 'returns a invalid response' do
42
45
  expect(subject.execute!).to_not be_successful
43
46
  end
@@ -46,5 +49,18 @@ RSpec.describe NfseGyn::GerarNfse do
46
49
  expect(subject.execute!.error_message).to eq('Para essa Inscrição Municipal/CNPJ já existe um RPS informado com o mesmo número, série e tipo.')
47
50
  end
48
51
  end
52
+
53
+ context 'when mock data' do
54
+ before do
55
+ NfseGyn.configuration.mock_mode = true
56
+ allow(NfseGyn::MockGerarNfseResponse).to receive(:new).and_return("mock response")
57
+ end
58
+
59
+ after { NfseGyn.configuration.mock_mode = false }
60
+
61
+ it 'should return a MockConsultarNfseResponse' do
62
+ expect(subject.execute!).to eq("mock response")
63
+ end
64
+ end
49
65
  end
50
66
  end
@@ -40,7 +40,7 @@ RSpec.describe NfseGyn::GerarNfseXML do
40
40
  describe '#certificate' do
41
41
  context 'when has not certificate in configuration' do
42
42
  it 'shoud certificate is nil' do
43
- expect(subject.certificate).to be_nil
43
+ expect(subject.send(:certificate)).to be_nil
44
44
  end
45
45
  end
46
46
 
@@ -54,7 +54,7 @@ RSpec.describe NfseGyn::GerarNfseXML do
54
54
  end
55
55
 
56
56
  it 'shoud certificate not nil' do
57
- expect(subject.certificate).to_not be_nil
57
+ expect(subject.send(:certificate)).to_not be_nil
58
58
  end
59
59
  end
60
60
  end
@@ -62,7 +62,7 @@ RSpec.describe NfseGyn::GerarNfseXML do
62
62
  describe '#private_key' do
63
63
  context 'when has not private_key in configuration' do
64
64
  it 'shoud private_key is nil' do
65
- expect(subject.private_key).to be_nil
65
+ expect(subject.send(:private_key)).to be_nil
66
66
  end
67
67
  end
68
68
 
@@ -76,7 +76,7 @@ RSpec.describe NfseGyn::GerarNfseXML do
76
76
  end
77
77
 
78
78
  it 'shoud private_key not nil' do
79
- expect(subject.private_key).to_not be_nil
79
+ expect(subject.send(:private_key)).to_not be_nil
80
80
  end
81
81
  end
82
82
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nfse_gyn
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ramon Vicente
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-01-14 00:00:00.000000000 Z
11
+ date: 2024-01-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activemodel
@@ -24,6 +24,20 @@ dependencies:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '3.0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: activesupport
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '3.0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '3.0'
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: savon
29
43
  requirement: !ruby/object:Gem::Requirement
@@ -108,7 +122,7 @@ dependencies:
108
122
  - - ">="
109
123
  - !ruby/object:Gem::Version
110
124
  version: '0'
111
- description:
125
+ description:
112
126
  email:
113
127
  - ramonvic@me.com
114
128
  executables:
@@ -131,6 +145,8 @@ files:
131
145
  - lib/nfse_gyn/consultar_nfse.rb
132
146
  - lib/nfse_gyn/gerar_nfse.rb
133
147
  - lib/nfse_gyn/gerar_nfse_xml.rb
148
+ - lib/nfse_gyn/mock_consultar_nfse_response.rb
149
+ - lib/nfse_gyn/mock_gerar_nfse_response.rb
134
150
  - lib/nfse_gyn/response.rb
135
151
  - lib/nfse_gyn/sanitizer.rb
136
152
  - lib/nfse_gyn/soap_client.rb
@@ -149,14 +165,13 @@ files:
149
165
  - spec/lib/gerar_nfse_spec.rb
150
166
  - spec/lib/gerar_nfse_xml_spec.rb
151
167
  - spec/lib/sanitizer_spec.rb
152
- - spec/nfse_gyn_spec.rb
153
168
  - spec/spec_helper.rb
154
169
  homepage: https://github.com/ramonvic/nfse_gyn
155
170
  licenses:
156
171
  - MIT
157
172
  metadata:
158
173
  homepage_uri: https://github.com/ramonvic/nfse_gyn
159
- post_install_message:
174
+ post_install_message:
160
175
  rdoc_options: []
161
176
  require_paths:
162
177
  - lib
@@ -171,8 +186,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
171
186
  - !ruby/object:Gem::Version
172
187
  version: '0'
173
188
  requirements: []
174
- rubygems_version: 3.4.10
175
- signing_key:
189
+ rubyforge_project:
190
+ rubygems_version: 2.2.3
191
+ signing_key:
176
192
  specification_version: 4
177
193
  summary: Gem para realizar a geração de NFSE em Goiânia
178
194
  test_files:
@@ -189,5 +205,4 @@ test_files:
189
205
  - spec/lib/gerar_nfse_spec.rb
190
206
  - spec/lib/gerar_nfse_xml_spec.rb
191
207
  - spec/lib/sanitizer_spec.rb
192
- - spec/nfse_gyn_spec.rb
193
208
  - spec/spec_helper.rb
@@ -1,11 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- RSpec.describe NfseGyn do
4
- it "has a version number" do
5
- expect(NfseGyn::VERSION).to eq("0.1.0")
6
- end
7
-
8
- it "does something useful" do
9
- expect(false).to eq(true)
10
- end
11
- end