mirror of
https://github.com/mikefarah/yq.git
synced 2026-07-07 22:35:37 +00:00
Merge ecc87a4081 into e2f1d5ccf7
This commit is contained in:
commit
ec17d706f6
@ -166,7 +166,12 @@ func (a sortableNodeArray) compare(lhs *CandidateNode, rhs *CandidateNode, dateT
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
return int(lhsNum - rhsNum)
|
||||
if lhsNum < rhsNum {
|
||||
return -1
|
||||
} else if lhsNum > rhsNum {
|
||||
return 1
|
||||
}
|
||||
return 0
|
||||
} else if (lhsTag == "!!int" || lhsTag == "!!float") && (rhsTag == "!!int" || rhsTag == "!!float") {
|
||||
lhsNum, err := strconv.ParseFloat(lhs.Value, 64)
|
||||
if err != nil {
|
||||
|
||||
@ -171,6 +171,15 @@ var sortByOperatorScenarios = []expressionScenario{
|
||||
"D0, P[], (!!seq)::# abc\n- def\n# ghi\n",
|
||||
},
|
||||
},
|
||||
{
|
||||
skipDoc: true,
|
||||
description: "Sort large integers (no int64 subtraction overflow)",
|
||||
document: "[5000000000000000000, -5000000000000000000]",
|
||||
expression: `sort`,
|
||||
expected: []string{
|
||||
"D0, P[], (!!seq)::[-5000000000000000000, 5000000000000000000]\n",
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
func TestSortByOperatorScenarios(t *testing.T) {
|
||||
|
||||
Loading…
Reference in New Issue
Block a user