code.gitea.io/gitea@v1.22.3/modules/setting/lfs_test.go (about)

     1  // Copyright 2023 The Gitea Authors. All rights reserved.
     2  // SPDX-License-Identifier: MIT
     3  
     4  package setting
     5  
     6  import (
     7  	"testing"
     8  
     9  	"github.com/stretchr/testify/assert"
    10  )
    11  
    12  func Test_getStorageInheritNameSectionTypeForLFS(t *testing.T) {
    13  	iniStr := `
    14  	[storage]
    15  	STORAGE_TYPE = minio
    16  	`
    17  	cfg, err := NewConfigProviderFromData(iniStr)
    18  	assert.NoError(t, err)
    19  	assert.NoError(t, loadLFSFrom(cfg))
    20  
    21  	assert.EqualValues(t, "minio", LFS.Storage.Type)
    22  	assert.EqualValues(t, "lfs/", LFS.Storage.MinioConfig.BasePath)
    23  
    24  	iniStr = `
    25  [server]
    26  LFS_CONTENT_PATH = path_ignored
    27  [lfs]
    28  PATH = path_used
    29  `
    30  	cfg, err = NewConfigProviderFromData(iniStr)
    31  	assert.NoError(t, err)
    32  	assert.NoError(t, loadLFSFrom(cfg))
    33  
    34  	assert.EqualValues(t, "local", LFS.Storage.Type)
    35  	assert.Contains(t, LFS.Storage.Path, "path_used")
    36  
    37  	iniStr = `
    38  [server]
    39  LFS_CONTENT_PATH = deprecatedpath
    40  `
    41  	cfg, err = NewConfigProviderFromData(iniStr)
    42  	assert.NoError(t, err)
    43  	assert.NoError(t, loadLFSFrom(cfg))
    44  
    45  	assert.EqualValues(t, "local", LFS.Storage.Type)
    46  	assert.Contains(t, LFS.Storage.Path, "deprecatedpath")
    47  
    48  	iniStr = `
    49  [storage.lfs]
    50  STORAGE_TYPE = minio
    51  `
    52  	cfg, err = NewConfigProviderFromData(iniStr)
    53  	assert.NoError(t, err)
    54  	assert.NoError(t, loadLFSFrom(cfg))
    55  
    56  	assert.EqualValues(t, "minio", LFS.Storage.Type)
    57  	assert.EqualValues(t, "lfs/", LFS.Storage.MinioConfig.BasePath)
    58  
    59  	iniStr = `
    60  [lfs]
    61  STORAGE_TYPE = my_minio
    62  
    63  [storage.my_minio]
    64  STORAGE_TYPE = minio
    65  `
    66  	cfg, err = NewConfigProviderFromData(iniStr)
    67  	assert.NoError(t, err)
    68  	assert.NoError(t, loadLFSFrom(cfg))
    69  
    70  	assert.EqualValues(t, "minio", LFS.Storage.Type)
    71  	assert.EqualValues(t, "lfs/", LFS.Storage.MinioConfig.BasePath)
    72  
    73  	iniStr = `
    74  [lfs]
    75  STORAGE_TYPE = my_minio
    76  MINIO_BASE_PATH = my_lfs/
    77  
    78  [storage.my_minio]
    79  STORAGE_TYPE = minio
    80  `
    81  	cfg, err = NewConfigProviderFromData(iniStr)
    82  	assert.NoError(t, err)
    83  	assert.NoError(t, loadLFSFrom(cfg))
    84  
    85  	assert.EqualValues(t, "minio", LFS.Storage.Type)
    86  	assert.EqualValues(t, "my_lfs/", LFS.Storage.MinioConfig.BasePath)
    87  }
    88  
    89  func Test_LFSStorage1(t *testing.T) {
    90  	iniStr := `
    91  [storage]
    92  STORAGE_TYPE = minio
    93  `
    94  	cfg, err := NewConfigProviderFromData(iniStr)
    95  	assert.NoError(t, err)
    96  
    97  	assert.NoError(t, loadLFSFrom(cfg))
    98  	assert.EqualValues(t, "minio", LFS.Storage.Type)
    99  	assert.EqualValues(t, "gitea", LFS.Storage.MinioConfig.Bucket)
   100  	assert.EqualValues(t, "lfs/", LFS.Storage.MinioConfig.BasePath)
   101  }