feature: update input with response if input and output is the same object

This commit is contained in:
2019-07-31 12:59:48 +02:00
parent 6f73b6683e
commit bb3b0d7e34
4 changed files with 39 additions and 2 deletions

View File

@@ -68,6 +68,19 @@ class RequesterTest: TestAbstract() {
assertEquals("myName", obj.name)
}
@Test
fun `call selectOne on function with object`() {
val resources = File(this::class.java.getResource("/sql/function").toURI())
val obj2 = ObjTest("original")
val obj: ObjTest = Requester(getConnextion())
.addFunction(resources)
.getFunction("test_function_object")
.selectOne("resource" to obj2)!!
assertEquals("changedName", obj.name)
assertEquals("changedName", obj2.name)
}
@Test
fun `call selectOne on query`() {
val resources = File(this::class.java.getResource("/sql/query").toURI())

View File

@@ -63,4 +63,13 @@ BEGIN
INTO result, total
LIMIT "limit" OFFSET "offset";
END;
$$
$$;
CREATE OR REPLACE FUNCTION test_function_object (inout resource json)
LANGUAGE plpgsql
AS
$$
BEGIN
resource = json_build_object('id', 1, 'name', 'changedName');
END;
$$;

View File

@@ -0,0 +1,8 @@
CREATE OR REPLACE FUNCTION test_function_object (inout resource json)
LANGUAGE plpgsql
AS
$$
BEGIN
resource = json_build_object('id', 1, 'name', 'changedName');
END;
$$