Skip to content
Snippets Groups Projects
Select Git revision
  • 57a2a8fd96f8813a7547c87b8bc1cc07ab282c1c
  • master default protected
  • 3.0
  • develop
  • revert-2069-tripleVersion
  • 3.1
  • rest-protocol
  • feat/remoting_rocketmq
  • dapr-support
  • 1.5
  • 1.4
  • 1.3
  • 1.2
  • 1.1
  • v3.0.3-rc2
  • v3.0.3-rc1
  • v3.0.2
  • v1.5.8
  • v1.5.9-rc1
  • v3.0.1
  • v1.5.8-rc1
  • v3.0.0
  • v3.0.0-rc4-1
  • v3.0.0-rc4
  • v3.0.0-rc3
  • v1.5.7
  • v1.5.7-rc2
  • v3.0.0-rc2
  • remove
  • v1.5.7-rc1
  • v3.0.0-rc1
  • v1.5.7-rc1-tmp
  • 1.5.6
  • v1.5.6
34 results

yaml_test.go

Blame
  • yaml_test.go 1.94 KiB
    /*
     * Licensed to the Apache Software Foundation (ASF) under one or more
     * contributor license agreements.  See the NOTICE file distributed with
     * this work for additional information regarding copyright ownership.
     * The ASF licenses this file to You under the Apache License, Version 2.0
     * (the "License"); you may not use this file except in compliance with
     * the License.  You may obtain a copy of the License at
     *
     *     http://www.apache.org/licenses/LICENSE-2.0
     *
     * Unless required by applicable law or agreed to in writing, software
     * distributed under the License is distributed on an "AS IS" BASIS,
     * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     * See the License for the specific language governing permissions and
     * limitations under the License.
     */
    
    package yaml
    
    import (
    	"path/filepath"
    	"testing"
    )
    
    import (
    	"github.com/stretchr/testify/assert"
    )
    
    func TestUnmarshalYMLConfig(t *testing.T) {
    	conPath, err := filepath.Abs("./testdata/config.yml")
    	assert.NoError(t, err)
    	c := &Config{}
    	_, err = UnmarshalYMLConfig(conPath, c)
    	assert.NoError(t, err)
    	assert.Equal(t, "strTest", c.StrTest)
    	assert.Equal(t, 11, c.IntTest)
    	assert.Equal(t, false, c.BooleanTest)
    	assert.Equal(t, "childStrTest", c.ChildConfig.StrTest)
    }
    
    func TestUnmarshalYMLConfig_Error(t *testing.T) {
    	c := &Config{}
    	_, err := UnmarshalYMLConfig("./testdata/config", c)
    	assert.Error(t, err)
    	_, err = UnmarshalYMLConfig("", c)
    	assert.Error(t, err)
    }
    
    type Config struct {
    	StrTest     string      `yaml:"strTest" default:"default" json:"strTest,omitempty" property:"strTest"`
    	IntTest     int         `default:"109"  yaml:"intTest" json:"intTest,omitempty" property:"intTest"`
    	BooleanTest bool        `yaml:"booleanTest" default:"true" json:"booleanTest,omitempty"`
    	ChildConfig ChildConfig `yaml:"child" json:"child,omitempty"`
    }
    
    type ChildConfig struct {
    	StrTest string `default:"strTest" default:"default" yaml:"strTest"  json:"strTest,omitempty"`
    }