File tree Expand file tree Collapse file tree 2 files changed +49
-1
lines changed Expand file tree Collapse file tree 2 files changed +49
-1
lines changed Original file line number Diff line number Diff line change @@ -122,6 +122,31 @@ def update(
122122 )
123123 validate_consistency_level! ( consistency_level ) unless consistency_level . nil?
124124
125+ response = client . connection . patch ( "#{ PATH } /#{ class_name } /#{ id } " ) do |req |
126+ req . params [ "consistency_level" ] = consistency_level . to_s . upcase unless consistency_level . nil?
127+
128+ req . body = { }
129+ req . body [ "id" ] = id
130+ req . body [ "class" ] = class_name
131+ req . body [ "properties" ] = properties
132+ req . body [ "vector" ] = vector unless vector . nil?
133+ req . body [ "tenant" ] = tenant unless tenant . nil?
134+ end
135+
136+ response . body
137+ end
138+
139+ # Replace an individual data object based on its uuid.
140+ def replace (
141+ class_name :,
142+ id :,
143+ properties :,
144+ vector : nil ,
145+ tenant : nil ,
146+ consistency_level : nil
147+ )
148+ validate_consistency_level! ( consistency_level ) unless consistency_level . nil?
149+
125150 response = client . connection . put ( "#{ PATH } /#{ class_name } /#{ id } " ) do |req |
126151 req . params [ "consistency_level" ] = consistency_level . to_s . upcase unless consistency_level . nil?
127152
Original file line number Diff line number Diff line change 132132 let ( :response ) { OpenStruct . new ( success? : true , body : object_fixture ) }
133133
134134 before do
135- allow_any_instance_of ( Faraday ::Connection ) . to receive ( :put )
135+ allow_any_instance_of ( Faraday ::Connection ) . to receive ( :patch )
136136 . with ( "objects/Question/123" )
137137 . and_return ( response )
138138 end
151151 end
152152 end
153153
154+ describe "#replace" do
155+ let ( :response ) { OpenStruct . new ( success? : true , body : object_fixture ) }
156+
157+ before do
158+ allow_any_instance_of ( Faraday ::Connection ) . to receive ( :put )
159+ . with ( "objects/Question/123" )
160+ . and_return ( response )
161+ end
162+
163+ it "returns the schema" do
164+ response = objects . replace (
165+ class_name : "Question" ,
166+ id : "123" ,
167+ properties : {
168+ question : "What does 6 times 7 equal to?" ,
169+ category : "math" ,
170+ answer : "42"
171+ }
172+ )
173+ expect ( response . dig ( "class" ) ) . to eq ( "Question" )
174+ end
175+ end
176+
154177 describe "#batch_create" do
155178 let ( :response ) { OpenStruct . new ( success? : true , body : objects_fixture ) }
156179
You can’t perform that action at this time.
0 commit comments