File tree 5 files changed +33
-6
lines changed
5 files changed +33
-6
lines changed Original file line number Diff line number Diff line change @@ -15,7 +15,7 @@ require (
15
15
github.com/cespare/xxhash/v2 v2.2.0 // indirect
16
16
github.com/davecgh/go-spew v1.1.1 // indirect
17
17
github.com/emicklei/go-restful/v3 v3.11.0 // indirect
18
- github.com/evanphx/json-patch/v5 v5.7 .0 // indirect
18
+ github.com/evanphx/json-patch/v5 v5.8 .0 // indirect
19
19
github.com/fsnotify/fsnotify v1.7.0 // indirect
20
20
github.com/go-logr/logr v1.4.1 // indirect
21
21
github.com/go-logr/zapr v1.3.0 // indirect
Original file line number Diff line number Diff line change @@ -10,8 +10,8 @@ github.com/emicklei/go-restful/v3 v3.11.0 h1:rAQeMHw1c7zTmncogyy8VvRZwtkmkZ4FxER
10
10
github.com/emicklei/go-restful/v3 v3.11.0 /go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc =
11
11
github.com/evanphx/json-patch v4.12.0+incompatible h1:4onqiflcdA9EOZ4RxV643DvftH5pOlLGNtQ5lPWQu84 =
12
12
github.com/evanphx/json-patch v4.12.0+incompatible /go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk =
13
- github.com/evanphx/json-patch/v5 v5.7 .0 h1:nJqP7uwL84RJInrohHfW0Fx3awjbm8qZeFv0nW9SYGc =
14
- github.com/evanphx/json-patch/v5 v5.7 .0 /go.mod h1:VNkHZ/282BpEyt/tObQO8s5CMPmYYq14uClGH4abBuQ =
13
+ github.com/evanphx/json-patch/v5 v5.8 .0 h1:lRj6N9Nci7MvzrXuX6HFzU8XjmhPiXPlsKEy1u0KQro =
14
+ github.com/evanphx/json-patch/v5 v5.8 .0 /go.mod h1:VNkHZ/282BpEyt/tObQO8s5CMPmYYq14uClGH4abBuQ =
15
15
github.com/fsnotify/fsnotify v1.7.0 h1:8JEhPFa5W2WU7YfeZzPNqzMP6Lwt7L2715Ggo0nosvA =
16
16
github.com/fsnotify/fsnotify v1.7.0 /go.mod h1:40Bi/Hjc2AVfZrqy+aj+yEI+/bRxZnMJyTJwOpGvigM =
17
17
github.com/go-logr/logr v1.3.0 /go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY =
Original file line number Diff line number Diff line change @@ -6,7 +6,7 @@ toolchain go1.21.0
6
6
7
7
require (
8
8
github.com/evanphx/json-patch v4.12.0+incompatible // Using v4 to match upstream
9
- github.com/evanphx/json-patch/v5 v5.7 .0
9
+ github.com/evanphx/json-patch/v5 v5.8 .0
10
10
github.com/fsnotify/fsnotify v1.7.0
11
11
github.com/go-logr/logr v1.4.1
12
12
github.com/go-logr/zapr v1.3.0
Original file line number Diff line number Diff line change @@ -19,8 +19,8 @@ github.com/emicklei/go-restful/v3 v3.11.0 h1:rAQeMHw1c7zTmncogyy8VvRZwtkmkZ4FxER
19
19
github.com/emicklei/go-restful/v3 v3.11.0 /go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc =
20
20
github.com/evanphx/json-patch v4.12.0+incompatible h1:4onqiflcdA9EOZ4RxV643DvftH5pOlLGNtQ5lPWQu84 =
21
21
github.com/evanphx/json-patch v4.12.0+incompatible /go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk =
22
- github.com/evanphx/json-patch/v5 v5.7 .0 h1:nJqP7uwL84RJInrohHfW0Fx3awjbm8qZeFv0nW9SYGc =
23
- github.com/evanphx/json-patch/v5 v5.7 .0 /go.mod h1:VNkHZ/282BpEyt/tObQO8s5CMPmYYq14uClGH4abBuQ =
22
+ github.com/evanphx/json-patch/v5 v5.8 .0 h1:lRj6N9Nci7MvzrXuX6HFzU8XjmhPiXPlsKEy1u0KQro =
23
+ github.com/evanphx/json-patch/v5 v5.8 .0 /go.mod h1:VNkHZ/282BpEyt/tObQO8s5CMPmYYq14uClGH4abBuQ =
24
24
github.com/felixge/httpsnoop v1.0.3 h1:s/nj+GCswXYzN5v2DpNMuMQYe+0DDwt5WVCU6CWBdXk =
25
25
github.com/felixge/httpsnoop v1.0.3 /go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U =
26
26
github.com/fsnotify/fsnotify v1.7.0 h1:8JEhPFa5W2WU7YfeZzPNqzMP6Lwt7L2715Ggo0nosvA =
Original file line number Diff line number Diff line change @@ -19,9 +19,13 @@ package client
19
19
import (
20
20
"testing"
21
21
22
+ . "github.com/onsi/ginkgo/v2"
23
+ . "github.com/onsi/gomega"
22
24
appsv1 "k8s.io/api/apps/v1"
25
+ batchv1 "k8s.io/api/batch/v1"
23
26
corev1 "k8s.io/api/core/v1"
24
27
"k8s.io/apimachinery/pkg/api/resource"
28
+ metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
25
29
)
26
30
27
31
func BenchmarkMergeFrom (b * testing.B ) {
@@ -93,3 +97,26 @@ func BenchmarkMergeFrom(b *testing.B) {
93
97
}
94
98
})
95
99
}
100
+
101
+ var _ = Describe ("MergeFrom" , func () {
102
+ It ("should successfully create a patch for two large and similar in64s" , func () {
103
+ var largeInt64 int64 = 9223372036854775807
104
+ var similarLargeInt64 int64 = 9223372036854775800
105
+ j := batchv1.Job {
106
+ ObjectMeta : metav1.ObjectMeta {
107
+ Namespace : "test" ,
108
+ Name : "test" ,
109
+ },
110
+ Spec : batchv1.JobSpec {
111
+ ActiveDeadlineSeconds : & largeInt64 ,
112
+ },
113
+ }
114
+ patch := MergeFrom (j .DeepCopy ())
115
+
116
+ j .Spec .ActiveDeadlineSeconds = & similarLargeInt64
117
+
118
+ data , err := patch .Data (& j )
119
+ Expect (err ).NotTo (HaveOccurred ())
120
+ Expect (data ).To (Equal ([]byte (`{"spec":{"activeDeadlineSeconds":9223372036854775800}}` )))
121
+ })
122
+ })
You can’t perform that action at this time.
0 commit comments