code.gitea.io/gitea@v1.19.3/modules/storage/helper_test.go (about)

     1  // Copyright 2022 The Gitea Authors. All rights reserved.
     2  // SPDX-License-Identifier: MIT
     3  
     4  package storage
     5  
     6  import (
     7  	"bytes"
     8  	"testing"
     9  
    10  	"github.com/stretchr/testify/assert"
    11  )
    12  
    13  func Test_discardStorage(t *testing.T) {
    14  	tests := []discardStorage{
    15  		uninitializedStorage,
    16  		discardStorage("empty"),
    17  	}
    18  	for _, tt := range tests {
    19  		t.Run(string(tt), func(t *testing.T) {
    20  			{
    21  				got, err := tt.Open("path")
    22  				assert.Nil(t, got)
    23  				assert.Error(t, err, string(tt))
    24  			}
    25  			{
    26  				got, err := tt.Save("path", bytes.NewReader([]byte{0}), 1)
    27  				assert.Equal(t, int64(0), got)
    28  				assert.Error(t, err, string(tt))
    29  			}
    30  			{
    31  				got, err := tt.Stat("path")
    32  				assert.Nil(t, got)
    33  				assert.Error(t, err, string(tt))
    34  			}
    35  			{
    36  				err := tt.Delete("path")
    37  				assert.Error(t, err, string(tt))
    38  			}
    39  			{
    40  				got, err := tt.URL("path", "name")
    41  				assert.Nil(t, got)
    42  				assert.Errorf(t, err, string(tt))
    43  			}
    44  			{
    45  				err := tt.IterateObjects(func(_ string, _ Object) error { return nil })
    46  				assert.Error(t, err, string(tt))
    47  			}
    48  		})
    49  	}
    50  }