feat!: wrap Client::new() return in a Result

BREAKING CHANGE: `Client::new()` now returns a `Result`.
This commit is contained in:
Ivan Gabriele
2024-03-04 04:43:16 +01:00
parent 1deab88251
commit 33876183e4
7 changed files with 25 additions and 20 deletions

View File

@@ -7,7 +7,7 @@ use mistralai_client::v1::{
#[test]
fn test_client_chat() {
let client = Client::new(None, None, None, None);
let client = Client::new(None, None, None, None).unwrap();
let model = Model::OpenMistral7b;
let messages = vec![ChatCompletionMessage {

View File

@@ -3,7 +3,7 @@ use mistralai_client::v1::{client::Client, constants::EmbedModel};
#[test]
fn test_client_embeddings() {
let client: Client = Client::new(None, None, None, None);
let client: Client = Client::new(None, None, None, None).unwrap();
let model = EmbedModel::MistralEmbed;
let input = vec!["Embed this sentence.", "As well as this one."]

View File

@@ -3,7 +3,7 @@ use mistralai_client::v1::client::Client;
#[test]
fn test_client_list_models() {
let client = Client::new(None, None, None, None);
let client = Client::new(None, None, None, None).unwrap();
let response = client.list_models().unwrap();

View File

@@ -1,5 +1,5 @@
use jrest::expect;
use mistralai_client::v1::client::Client;
use mistralai_client::v1::{client::Client, error::ClientError};
#[test]
fn test_client_new_with_none_params() {
@@ -7,7 +7,7 @@ fn test_client_new_with_none_params() {
std::env::remove_var("MISTRAL_API_KEY");
std::env::set_var("MISTRAL_API_KEY", "test_api_key_from_env");
let client = Client::new(None, None, None, None);
let client = Client::new(None, None, None, None).unwrap();
expect!(client.api_key).to_be("test_api_key_from_env".to_string());
expect!(client.endpoint).to_be("https://api.mistral.ai/v1".to_string());
@@ -38,7 +38,8 @@ fn test_client_new_with_all_params() {
endpoint.clone(),
max_retries.clone(),
timeout.clone(),
);
)
.unwrap();
expect!(client.api_key).to_be(api_key.unwrap());
expect!(client.endpoint).to_be(endpoint.unwrap());
@@ -54,12 +55,16 @@ fn test_client_new_with_all_params() {
}
#[test]
#[should_panic]
fn test_client_new_with_missing_api_key() {
let maybe_original_mistral_api_key = std::env::var("MISTRAL_API_KEY").ok();
std::env::remove_var("MISTRAL_API_KEY");
let _client = Client::new(None, None, None, None);
let call = || Client::new(None, None, None, None);
match call() {
Ok(_) => panic!("Expected `ClientError::ApiKeyError` but got Ok.`"),
Err(error) => assert_eq!(error, ClientError::ApiKeyError),
}
match maybe_original_mistral_api_key {
Some(original_mistral_api_key) => {