formatting
This commit is contained in:
parent
6d2c1ce21c
commit
ac25339cf6
|
@ -129,7 +129,10 @@ impl Forgejo {
|
||||||
let release = self
|
let release = self
|
||||||
.repo_get_release_attachment(owner, repo, release, attach)
|
.repo_get_release_attachment(owner, repo, release, attach)
|
||||||
.await?;
|
.await?;
|
||||||
let request = self.client.get(format!("/attachments/{}", release.uuid.unwrap())).build()?;
|
let request = self
|
||||||
|
.client
|
||||||
|
.get(format!("/attachments/{}", release.uuid.unwrap()))
|
||||||
|
.build()?;
|
||||||
Ok(self.execute(request).await?.bytes().await?)
|
Ok(self.execute(request).await?.bytes().await?)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
use eyre::{ensure, eyre, WrapErr};
|
use eyre::{ensure, eyre, WrapErr};
|
||||||
use forgejo_api::{Forgejo, structs::*};
|
use forgejo_api::{structs::*, Forgejo};
|
||||||
|
|
||||||
#[tokio::test]
|
#[tokio::test]
|
||||||
async fn ci() -> eyre::Result<()> {
|
async fn ci() -> eyre::Result<()> {
|
||||||
|
@ -40,19 +40,23 @@ async fn user(api: &Forgejo) -> eyre::Result<()> {
|
||||||
"user should be named \"TestingAdmin\""
|
"user should be named \"TestingAdmin\""
|
||||||
);
|
);
|
||||||
|
|
||||||
let myself_indirect = api
|
let myself_indirect = api.user_get("TestingAdmin").await?;
|
||||||
.user_get("TestingAdmin")
|
|
||||||
.await?;
|
|
||||||
ensure!(
|
ensure!(
|
||||||
myself == myself_indirect,
|
myself == myself_indirect,
|
||||||
"result of `myself` does not match result of `get_user`"
|
"result of `myself` does not match result of `get_user`"
|
||||||
);
|
);
|
||||||
|
|
||||||
let query = UserListFollowingQuery { page: None, limit: None };
|
let query = UserListFollowingQuery {
|
||||||
|
page: None,
|
||||||
|
limit: None,
|
||||||
|
};
|
||||||
let following = api.user_list_following("TestingAdmin", query).await?;
|
let following = api.user_list_following("TestingAdmin", query).await?;
|
||||||
ensure!(following == Vec::new(), "following list not empty");
|
ensure!(following == Vec::new(), "following list not empty");
|
||||||
|
|
||||||
let query = UserListFollowersQuery { page: None, limit: None };
|
let query = UserListFollowersQuery {
|
||||||
|
page: None,
|
||||||
|
limit: None,
|
||||||
|
};
|
||||||
let followers = api.user_list_followers("TestingAdmin", query).await?;
|
let followers = api.user_list_followers("TestingAdmin", query).await?;
|
||||||
ensure!(followers == Vec::new(), "follower list not empty");
|
ensure!(followers == Vec::new(), "follower list not empty");
|
||||||
|
|
||||||
|
@ -118,7 +122,10 @@ async fn repo(api: &forgejo_api::Forgejo) -> eyre::Result<()> {
|
||||||
remote_repo.owner.as_ref().unwrap().login.as_ref().unwrap() == "TestingAdmin",
|
remote_repo.owner.as_ref().unwrap().login.as_ref().unwrap() == "TestingAdmin",
|
||||||
"repo owner is not \"TestingAdmin\""
|
"repo owner is not \"TestingAdmin\""
|
||||||
);
|
);
|
||||||
ensure!(remote_repo.name.as_ref().unwrap() == "test", "repo owner is not \"test\"");
|
ensure!(
|
||||||
|
remote_repo.name.as_ref().unwrap() == "test",
|
||||||
|
"repo owner is not \"test\""
|
||||||
|
);
|
||||||
tokio::time::sleep(std::time::Duration::from_secs(3)).await;
|
tokio::time::sleep(std::time::Duration::from_secs(3)).await;
|
||||||
|
|
||||||
let mut remote_url = remote_repo.clone_url.clone().unwrap();
|
let mut remote_url = remote_repo.clone_url.clone().unwrap();
|
||||||
|
@ -245,25 +252,42 @@ async fn repo(api: &forgejo_api::Forgejo) -> eyre::Result<()> {
|
||||||
"test",
|
"test",
|
||||||
release.id.unwrap(),
|
release.id.unwrap(),
|
||||||
b"This is a file!".to_vec(),
|
b"This is a file!".to_vec(),
|
||||||
RepoCreateReleaseAttachmentQuery { name: Some("test.txt".into()) },
|
RepoCreateReleaseAttachmentQuery {
|
||||||
|
name: Some("test.txt".into()),
|
||||||
|
},
|
||||||
)
|
)
|
||||||
.await
|
.await
|
||||||
.wrap_err("failed to create release attachment")?;
|
.wrap_err("failed to create release attachment")?;
|
||||||
ensure!(
|
ensure!(
|
||||||
&*api.download_release_attachment("TestingAdmin", "test", release.id.unwrap(), attachment.id.unwrap())
|
&*api
|
||||||
|
.download_release_attachment(
|
||||||
|
"TestingAdmin",
|
||||||
|
"test",
|
||||||
|
release.id.unwrap(),
|
||||||
|
attachment.id.unwrap()
|
||||||
|
)
|
||||||
.await?
|
.await?
|
||||||
== b"This is a file!",
|
== b"This is a file!",
|
||||||
"couldn't download attachment"
|
"couldn't download attachment"
|
||||||
);
|
);
|
||||||
let _zip_archive = api.repo_get_archive("TestingAdmin", "test", "v1.0.zip")
|
let _zip_archive = api
|
||||||
.await.unwrap();
|
.repo_get_archive("TestingAdmin", "test", "v1.0.zip")
|
||||||
let _tar_archive = api.repo_get_archive("TestingAdmin", "test", "v1.0.tar.gz")
|
.await
|
||||||
.await.unwrap();
|
.unwrap();
|
||||||
|
let _tar_archive = api
|
||||||
|
.repo_get_archive("TestingAdmin", "test", "v1.0.tar.gz")
|
||||||
|
.await
|
||||||
|
.unwrap();
|
||||||
// check these contents when their return value is fixed
|
// check these contents when their return value is fixed
|
||||||
|
|
||||||
api.repo_delete_release_attachment("TestingAdmin", "test", release.id.unwrap(), attachment.id.unwrap())
|
api.repo_delete_release_attachment(
|
||||||
.await
|
"TestingAdmin",
|
||||||
.wrap_err("failed to deleted attachment")?;
|
"test",
|
||||||
|
release.id.unwrap(),
|
||||||
|
attachment.id.unwrap(),
|
||||||
|
)
|
||||||
|
.await
|
||||||
|
.wrap_err("failed to deleted attachment")?;
|
||||||
|
|
||||||
api.repo_delete_release("TestingAdmin", "test", release.id.unwrap())
|
api.repo_delete_release("TestingAdmin", "test", release.id.unwrap())
|
||||||
.await
|
.await
|
||||||
|
@ -306,7 +330,10 @@ async fn admin(api: &forgejo_api::Forgejo) -> eyre::Result<()> {
|
||||||
.await
|
.await
|
||||||
.wrap_err("failed to search users")?;
|
.wrap_err("failed to search users")?;
|
||||||
ensure!(
|
ensure!(
|
||||||
users.iter().find(|u| u.login.as_ref().unwrap() == "Pipis").is_some(),
|
users
|
||||||
|
.iter()
|
||||||
|
.find(|u| u.login.as_ref().unwrap() == "Pipis")
|
||||||
|
.is_some(),
|
||||||
"could not find new user"
|
"could not find new user"
|
||||||
);
|
);
|
||||||
let query = AdminGetAllEmailsQuery {
|
let query = AdminGetAllEmailsQuery {
|
||||||
|
@ -344,9 +371,7 @@ async fn admin(api: &forgejo_api::Forgejo) -> eyre::Result<()> {
|
||||||
limit: None,
|
limit: None,
|
||||||
};
|
};
|
||||||
ensure!(
|
ensure!(
|
||||||
!api.admin_get_all_orgs(query)
|
!api.admin_get_all_orgs(query).await?.is_empty(),
|
||||||
.await?
|
|
||||||
.is_empty(),
|
|
||||||
"org list empty"
|
"org list empty"
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -369,15 +394,11 @@ async fn admin(api: &forgejo_api::Forgejo) -> eyre::Result<()> {
|
||||||
api.admin_rename_user("Pipis", rename_opt)
|
api.admin_rename_user("Pipis", rename_opt)
|
||||||
.await
|
.await
|
||||||
.wrap_err("failed to rename user")?;
|
.wrap_err("failed to rename user")?;
|
||||||
let query = AdminDeleteUserQuery {
|
let query = AdminDeleteUserQuery { purge: Some(true) };
|
||||||
purge: Some(true),
|
|
||||||
};
|
|
||||||
api.admin_delete_user("Bepis", query)
|
api.admin_delete_user("Bepis", query)
|
||||||
.await
|
.await
|
||||||
.wrap_err("failed to delete user")?;
|
.wrap_err("failed to delete user")?;
|
||||||
let query = AdminDeleteUserQuery {
|
let query = AdminDeleteUserQuery { purge: Some(true) };
|
||||||
purge: Some(true),
|
|
||||||
};
|
|
||||||
ensure!(
|
ensure!(
|
||||||
api.admin_delete_user("Ghost", query).await.is_err(),
|
api.admin_delete_user("Ghost", query).await.is_err(),
|
||||||
"deleting fake user should fail"
|
"deleting fake user should fail"
|
||||||
|
@ -391,9 +412,16 @@ async fn admin(api: &forgejo_api::Forgejo) -> eyre::Result<()> {
|
||||||
.admin_cron_list(query)
|
.admin_cron_list(query)
|
||||||
.await
|
.await
|
||||||
.wrap_err("failed to get crons list")?;
|
.wrap_err("failed to get crons list")?;
|
||||||
api.admin_cron_run(&crons.get(0).ok_or_else(|| eyre!("no crons"))?.name.as_ref().unwrap())
|
api.admin_cron_run(
|
||||||
.await
|
&crons
|
||||||
.wrap_err("failed to run cron")?;
|
.get(0)
|
||||||
|
.ok_or_else(|| eyre!("no crons"))?
|
||||||
|
.name
|
||||||
|
.as_ref()
|
||||||
|
.unwrap(),
|
||||||
|
)
|
||||||
|
.await
|
||||||
|
.wrap_err("failed to run cron")?;
|
||||||
|
|
||||||
let hook_opt = CreateHookOption {
|
let hook_opt = CreateHookOption {
|
||||||
active: None,
|
active: None,
|
||||||
|
@ -402,7 +430,11 @@ async fn admin(api: &forgejo_api::Forgejo) -> eyre::Result<()> {
|
||||||
config: CreateHookOptionConfig {
|
config: CreateHookOptionConfig {
|
||||||
// content_type: "json".into(),
|
// content_type: "json".into(),
|
||||||
// url: url::Url::parse("http://test.local/").unwrap(),
|
// url: url::Url::parse("http://test.local/").unwrap(),
|
||||||
additional: [("content_type".into(), "json".into()), ("url".into(), "http://test.local/".into())].into(),
|
additional: [
|
||||||
|
("content_type".into(), "json".into()),
|
||||||
|
("url".into(), "http://test.local/".into()),
|
||||||
|
]
|
||||||
|
.into(),
|
||||||
},
|
},
|
||||||
events: Some(Vec::new()),
|
events: Some(Vec::new()),
|
||||||
r#type: "forgejo".into(),
|
r#type: "forgejo".into(),
|
||||||
|
|
Loading…
Reference in a new issue