57 lines
1.3 KiB
Rust
57 lines
1.3 KiB
Rust
use super::*;
|
|
|
|
use crate::nextcloud::NextcloudConfig;
|
|
use crate::trello::TrelloConfig;
|
|
use crate::{s, FullCtx};
|
|
|
|
use kxio::{
|
|
fs::{FileSystem, TempFileSystem},
|
|
net::{MockNet, Net},
|
|
print::Printer,
|
|
};
|
|
|
|
pub(crate) fn a_context(fs: FileSystem, net: Net, prt: Printer) -> Ctx {
|
|
Ctx { fs, net, prt }
|
|
}
|
|
|
|
pub(crate) fn a_filesystem() -> TempFileSystem {
|
|
kxio::fs::temp().expect("temp fs")
|
|
}
|
|
|
|
pub(crate) fn a_network() -> MockNet {
|
|
kxio::net::mock()
|
|
}
|
|
|
|
pub(crate) fn a_printer() -> Printer {
|
|
kxio::print::test()
|
|
}
|
|
|
|
pub(crate) fn a_trello_config() -> TrelloConfig {
|
|
TrelloConfig {
|
|
api_key: s!("trello-api-key").into(),
|
|
api_secret: s!("trello-api-secret").into(),
|
|
}
|
|
}
|
|
|
|
pub(crate) fn a_nextcloud_config() -> NextcloudConfig {
|
|
let hostname = s!("https://host-name").into();
|
|
let username = s!("username").into();
|
|
let password = s!("password").into();
|
|
NextcloudConfig {
|
|
hostname,
|
|
username,
|
|
password,
|
|
}
|
|
}
|
|
|
|
pub(crate) fn a_full_context(fs: TempFileSystem, mock_net: MockNet) -> FullCtx {
|
|
FullCtx {
|
|
fs: fs.as_real(),
|
|
net: mock_net.into(),
|
|
prt: a_printer(),
|
|
cfg: AppConfig {
|
|
trello: a_trello_config(),
|
|
nextcloud: a_nextcloud_config(),
|
|
},
|
|
}
|
|
}
|