format
This commit is contained in:
		
							parent
							
								
									e725903eb9
								
							
						
					
					
						commit
						96124821ba
					
				
					 3 changed files with 29 additions and 8 deletions
				
			
		| 
						 | 
				
			
			@ -180,9 +180,12 @@ impl Forgejo {
 | 
			
		|||
            status => Err(ForgejoError::UnexpectedStatusCode(status)),
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
 | 
			
		||||
    /// Like `execute`, but returns a `String`.
 | 
			
		||||
    async fn execute_opt_raw(&self, request: Request) -> Result<Option<bytes::Bytes>, ForgejoError> {
 | 
			
		||||
    async fn execute_opt_raw(
 | 
			
		||||
        &self,
 | 
			
		||||
        request: Request,
 | 
			
		||||
    ) -> Result<Option<bytes::Bytes>, ForgejoError> {
 | 
			
		||||
        let response = self.client.execute(request).await?;
 | 
			
		||||
        match response.status() {
 | 
			
		||||
            status if status.is_success() => Ok(Some(response.bytes().await?)),
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -207,7 +207,12 @@ impl Forgejo {
 | 
			
		|||
            .await
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    pub async fn download_release_zip(&self, owner: &str, repo: &str, release: u64) -> Result<Option<bytes::Bytes>, ForgejoError> {
 | 
			
		||||
    pub async fn download_release_zip(
 | 
			
		||||
        &self,
 | 
			
		||||
        owner: &str,
 | 
			
		||||
        repo: &str,
 | 
			
		||||
        release: u64,
 | 
			
		||||
    ) -> Result<Option<bytes::Bytes>, ForgejoError> {
 | 
			
		||||
        let release = self.get_release(owner, repo, release).await;
 | 
			
		||||
        let release = match release {
 | 
			
		||||
            Ok(Some(release)) => release,
 | 
			
		||||
| 
						 | 
				
			
			@ -218,7 +223,12 @@ impl Forgejo {
 | 
			
		|||
        self.execute_opt_raw(request).await
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    pub async fn download_release_tarball(&self, owner: &str, repo: &str, release: u64) -> Result<Option<bytes::Bytes>, ForgejoError> {
 | 
			
		||||
    pub async fn download_release_tarball(
 | 
			
		||||
        &self,
 | 
			
		||||
        owner: &str,
 | 
			
		||||
        repo: &str,
 | 
			
		||||
        release: u64,
 | 
			
		||||
    ) -> Result<Option<bytes::Bytes>, ForgejoError> {
 | 
			
		||||
        let release = self.get_release(owner, repo, release).await;
 | 
			
		||||
        let release = match release {
 | 
			
		||||
            Ok(Some(release)) => release,
 | 
			
		||||
| 
						 | 
				
			
			@ -229,8 +239,16 @@ impl Forgejo {
 | 
			
		|||
        self.execute_opt_raw(request).await
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    pub async fn download_release_attachment(&self, owner: &str, repo: &str, release: u64, attach: u64) -> Result<Option<bytes::Bytes>, ForgejoError> {
 | 
			
		||||
        let release = self.get_release_attachment(owner, repo, release, attach).await?;
 | 
			
		||||
    pub async fn download_release_attachment(
 | 
			
		||||
        &self,
 | 
			
		||||
        owner: &str,
 | 
			
		||||
        repo: &str,
 | 
			
		||||
        release: u64,
 | 
			
		||||
        attach: u64,
 | 
			
		||||
    ) -> Result<Option<bytes::Bytes>, ForgejoError> {
 | 
			
		||||
        let release = self
 | 
			
		||||
            .get_release_attachment(owner, repo, release, attach)
 | 
			
		||||
            .await?;
 | 
			
		||||
        let request = self.client.get(release.browser_download_url).build()?;
 | 
			
		||||
        self.execute_opt_raw(request).await
 | 
			
		||||
    }
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -224,10 +224,10 @@ async fn repo(api: &forgejo_api::Forgejo) -> eyre::Result<()> {
 | 
			
		|||
        api.download_release_attachment("TestingAdmin", "test", release.id, attachment.id)
 | 
			
		||||
            .await?
 | 
			
		||||
            .as_deref()
 | 
			
		||||
        == Some(b"This is a file!"),
 | 
			
		||||
            == Some(b"This is a file!"),
 | 
			
		||||
        "couldn't download attachment"
 | 
			
		||||
    );
 | 
			
		||||
        
 | 
			
		||||
 | 
			
		||||
    api.delete_release_attachment("TestingAdmin", "test", release.id, attachment.id)
 | 
			
		||||
        .await
 | 
			
		||||
        .wrap_err("failed to deleted attachment")?;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue