mirror of
https://github.com/LukeHagar/libopenapi.git
synced 2025-12-07 12:37:48 +00:00
Fix compare different node tag
This commit is contained in:
committed by
Dave Shanley
parent
fc7da1d38d
commit
d6031b5440
50
what-changed/model/comparison_functions_test.go
Normal file
50
what-changed/model/comparison_functions_test.go
Normal file
@@ -0,0 +1,50 @@
|
||||
// Copyright 2022 Hugo Stijns
|
||||
// SPDX-License-Identifier: MIT
|
||||
|
||||
package model
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
"gopkg.in/yaml.v3"
|
||||
)
|
||||
|
||||
func Test_CheckForModification(t *testing.T) {
|
||||
tests := []struct {
|
||||
name string
|
||||
left string
|
||||
right string
|
||||
differ bool
|
||||
}{
|
||||
{"Same string quoted", `value`, `"value"`, false},
|
||||
{"Same string", `value`, `value`, false},
|
||||
{"Same boolean", `true`, `true`, false},
|
||||
{"Different boolean", `true`, `false`, true},
|
||||
{"Different string", `value_a`, `value_b`, true},
|
||||
{"Different int", `123`, `"123"`, true},
|
||||
{"Different float", `123.456`, `"123.456"`, true},
|
||||
{"Different boolean quoted", `true`, `"true"`, true},
|
||||
{"Different date", `2022-12-29`, `"2022-12-29"`, true},
|
||||
{"Different value and tag", `2.0`, `2.0.0`, true},
|
||||
{"From null to empty value", `null`, `""`, false},
|
||||
{"From empty value to null", `""`, `null`, false},
|
||||
}
|
||||
|
||||
for _, tt := range tests {
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
var lNode, rNode yaml.Node
|
||||
_ = yaml.Unmarshal([]byte(tt.left), &lNode)
|
||||
_ = yaml.Unmarshal([]byte(tt.right), &rNode)
|
||||
|
||||
changes := []*Change{}
|
||||
CheckForModification(lNode.Content[0], rNode.Content[0], "test", &changes, false, "old", "new")
|
||||
|
||||
if tt.differ {
|
||||
assert.Len(t, changes, 1)
|
||||
} else {
|
||||
assert.Empty(t, changes)
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user