code.gitea.io/gitea@v1.19.3/modules/setting/cron_test.go (about)

     1  // Copyright 2020 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  	ini "gopkg.in/ini.v1"
    11  )
    12  
    13  func Test_getCronSettings(t *testing.T) {
    14  	type BaseStruct struct {
    15  		Base   bool
    16  		Second string
    17  	}
    18  
    19  	type Extended struct {
    20  		BaseStruct
    21  		Extend bool
    22  	}
    23  
    24  	iniStr := `
    25  [cron.test]
    26  Base = true
    27  Second = white rabbit
    28  Extend = true
    29  `
    30  	cfg, err := ini.Load([]byte(iniStr))
    31  	assert.NoError(t, err)
    32  
    33  	extended := &Extended{
    34  		BaseStruct: BaseStruct{
    35  			Second: "queen of hearts",
    36  		},
    37  	}
    38  
    39  	_, err = getCronSettings(cfg, "test", extended)
    40  	assert.NoError(t, err)
    41  	assert.True(t, extended.Base)
    42  	assert.EqualValues(t, extended.Second, "white rabbit")
    43  	assert.True(t, extended.Extend)
    44  }