bddgenx 2.4.13 → 2.4.15

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
  SHA256:
3
- metadata.gz: beed56e9fc1f8d17ba9a82a1e483250b61c8f6c97477053989c331a0928091c6
4
- data.tar.gz: 665a5bb96dc496ec923fc21815e34144464ec6fa6cd0caa9809624f6b6022b6c
3
+ metadata.gz: 8402925d1f6b2d1f32f2f19f7844231160b053cd57d8050975da15d721f22b4c
4
+ data.tar.gz: 17285613e91c7658d4d1d5b7cd64c077ebfcef9e348dab23e69db5de9284ff40
5
5
  SHA512:
6
- metadata.gz: d5c94a73512f6d56cce48e65b08ccfd376ce474ac170c3d26b60974cda3669aa087e4df607c5c9aa76ac6fa55fecbd15a1a9ddec5291b900bfd0247564df927b
7
- data.tar.gz: 2a34438497576d5cc03a56981c31492290b079ce1ad3dd6b421745526387c437a1c879273e66deb16a54b32f779b68705d78c5ce451438e7d0c329d0a44a4d2c
6
+ metadata.gz: e42b0bf55de930ca00635bc50baf658dc93b9e0ea9ba4818b5d35a4aede2b82f1067c96d7f22b41a8125b55d0c6528ba0b7944348728c7eb4438201ed1918046
7
+ data.tar.gz: dc111bad9714ed06d7a3f99229f8e621986c4171472227d83f39ee3a85e1653667b71e915f6bebf5016d5e50a8dfe97f8005b8506857f6da86b8c8e3352b75e9
data/VERSION CHANGED
@@ -1 +1 @@
1
- 2.4.13
1
+ 2.4.15
@@ -183,5 +183,46 @@ module Bddgenx
183
183
  puts "- #{I18n.t('messages.features_generated')}: #{features}"
184
184
  puts "- #{I18n.t('messages.steps_generated')}: #{steps}"
185
185
  end
186
+
187
+ # Gera cenários a partir do texto da história (string)
188
+ #
189
+ # @param text [String] Descrição da história ou requisito
190
+ # @param language [String] Código do idioma (default: 'pt')
191
+ # @return [String, nil] Conteúdo do arquivo feature gerado ou nil se erro
192
+ def self.generate_from_text(text, language: 'pt')
193
+ return nil if text.nil? || text.strip.empty?
194
+
195
+ # Monta o hash de história simulando o retorno de Parser.ler_historia
196
+ historia = {
197
+ descricao: text,
198
+ idioma: language
199
+ }
200
+
201
+ modo = ENV['BDDGENX_MODE'] || 'static'
202
+
203
+ feature_content = nil
204
+
205
+ if %w[gemini chatgpt copilot].include?(modo)
206
+ feature_content = Support::Loader.run("Gerando via IA...", :default) do
207
+ case modo
208
+ when 'gemini'
209
+ IA::GeminiCliente.gerar_cenarios(historia, language)
210
+ when 'chatgpt'
211
+ IA::ChatGptCliente.gerar_cenarios(historia, language)
212
+ when 'copilot'
213
+ IA::MicrosoftCopilotCliente.gerar_cenarios(historia, language)
214
+ end
215
+ end
216
+ else
217
+ feature_content = Support::Loader.run("Gerando localmente...", :dots) do
218
+ Generator.gerar_feature(historia)
219
+ end
220
+ end
221
+
222
+ feature_content ? Utils.limpar(feature_content) : nil
223
+ rescue StandardError => e
224
+ warn "Erro ao gerar feature: #{e.message}"
225
+ nil
226
+ end
186
227
  end
187
228
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bddgenx
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.4.13
4
+ version: 2.4.15
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Nascimento
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-08-01 00:00:00.000000000 Z
11
+ date: 2025-08-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: prawn