Skip to content

Commit c547dee

Browse files
committed
Add specs for embedding and image generation with per-request API key
1 parent 27f24ab commit c547dee

File tree

2 files changed

+24
-0
lines changed

2 files changed

+24
-0
lines changed

spec/ruby_llm/embeddings_spec.rb

+12
Original file line numberDiff line numberDiff line change
@@ -32,4 +32,16 @@
3232
end
3333
end
3434
end
35+
36+
describe 'embedding with per-request key' do
37+
let(:override_openai_key) { ENV.fetch('OTHER_OPENAI_API_KEY', nil) }
38+
39+
it 'embeds text using an overridden key' do # rubocop:disable RSpec/MultipleExpectations
40+
embedding = RubyLLM.embed("What's your favorite algorithm?",
41+
api_key: override_openai_key)
42+
43+
expect(embedding).to be_a(RubyLLM::Embedding)
44+
expect(embedding.vectors).to be_an(Array)
45+
end
46+
end
3547
end

spec/ruby_llm/image_generation_spec.rb

+12
Original file line numberDiff line numberDiff line change
@@ -65,4 +65,16 @@ def save_and_verify_image(image) # rubocop:disable Metrics/MethodLength
6565
end.to raise_error(RubyLLM::ModelNotFoundError)
6666
end
6767
end
68+
69+
describe 'painting with per-request key' do
70+
let(:override_openai_key) { ENV.fetch('OTHER_OPENAI_API_KEY', nil) }
71+
72+
it 'generates an image using an overridden key' do # rubocop:disable RSpec/MultipleExpectations
73+
image = RubyLLM.paint('A sunset in watercolor style', api_key: override_openai_key)
74+
expect(image).to be_a(RubyLLM::Image)
75+
expect(image.url).to match(%r{^https?://})
76+
77+
save_and_verify_image image
78+
end
79+
end
6880
end

0 commit comments

Comments
 (0)