Private
Public Access
1
0
This commit is contained in:
2024-04-21 15:14:16 -07:00
parent 0b2811dc9f
commit 3e878ced4e
8 changed files with 379 additions and 19 deletions

View File

@@ -0,0 +1,22 @@
mod test_client;
use self::test_client::TestClient;
use crate::APIInterface;
pub mod api_interface {
use super::*;
#[test]
fn test_version() {
let client = TestClient{};
let version = client.get_version();
assert_eq!(version, "KordophoneTest-1.0");
}
#[test]
fn test_conversations() {
let client = TestClient{};
let conversations = client.get_conversations();
assert_eq!(conversations.len(), 1);
assert_eq!(conversations[0].display_name, Some("Test Conversation".to_string()));
}
}

View File

@@ -0,0 +1,16 @@
pub use crate::APIInterface;
use crate::model::Conversation;
pub struct TestClient {}
impl APIInterface for TestClient {
fn get_version(&self) -> String {
return "KordophoneTest-1.0".to_string()
}
fn get_conversations(&self) -> Vec<Conversation> {
let mut conversations = Vec::new();
conversations.push(Conversation::builder().display_name("Test Conversation").build());
conversations
}
}