This is an automated email from the ASF dual-hosted git repository.

danhaywood pushed a commit to branch CAUSEWAY-3676
in repository https://gitbox.apache.org/repos/asf/causeway.git


The following commit(s) were added to refs/heads/CAUSEWAY-3676 by this push:
     new cdad459fca CAUSEWAY-3676: refactors integ test to use scenario
cdad459fca is described below

commit cdad459fca08fca7690f6dde95e52114fc59ce7a
Author: danhaywood <[email protected]>
AuthorDate: Tue Feb 13 18:22:02 2024 +0000

    CAUSEWAY-3676: refactors integ test to use scenario
---
 ...gTest.create_staff_member_with_department._.gql | 46 +++++++++++++-------
 ...eate_staff_member_with_department.approved.json | 50 ++++++++++++++--------
 .../e2e/queryandmutations/Staff_IntegTest.java     | 14 +-----
 3 files changed, 65 insertions(+), 45 deletions(-)

diff --git 
a/viewers/graphql/test/src/test/java/org/apache/causeway/viewer/graphql/viewer/test/e2e/queryandmutations/Staff_IntegTest.create_staff_member_with_department._.gql
 
b/viewers/graphql/test/src/test/java/org/apache/causeway/viewer/graphql/viewer/test/e2e/queryandmutations/Staff_IntegTest.create_staff_member_with_department._.gql
index b9a967239a..0a7147f775 100644
--- 
a/viewers/graphql/test/src/test/java/org/apache/causeway/viewer/graphql/viewer/test/e2e/queryandmutations/Staff_IntegTest.create_staff_member_with_department._.gql
+++ 
b/viewers/graphql/test/src/test/java/org/apache/causeway/viewer/graphql/viewer/test/e2e/queryandmutations/Staff_IntegTest.create_staff_member_with_department._.gql
@@ -1,25 +1,41 @@
 {
-  university_dept_Staff {
-    createStaffMember {
-      invokeNonIdempotent(name: "Dr. Georgina McGovern", department: { id: 
"$departmentId"}) {
-        name {
-          get
+  Scenario(name: "New member of staff") {
+    Name
+    Given {
+      university_dept_Departments {
+        findDepartmentByName {
+          invoke(name: "Classics") {
+            _gqlv_meta {
+              saveAs(ref: "classics")
+            }
+          }
         }
-        department {
-          get {
+      }
+    }
+    When {
+      university_dept_Staff {
+        createStaffMember {
+          invokeNonIdempotent(name: "Dr. Georgina McGovern", department: { 
ref: "classics"}) {
             name {
               get
             }
+            department {
+              get {
+                name {
+                  get
+                }
+              }
+            }
+            _gqlv_meta {
+              title
+              logicalTypeName
+              version
+              cssClass
+              iconName
+              grid
+            }
           }
         }
-        _gqlv_meta {
-          title
-          logicalTypeName
-          version
-          cssClass
-          iconName
-          grid
-        }
       }
     }
   }
diff --git 
a/viewers/graphql/test/src/test/java/org/apache/causeway/viewer/graphql/viewer/test/e2e/queryandmutations/Staff_IntegTest.create_staff_member_with_department.approved.json
 
b/viewers/graphql/test/src/test/java/org/apache/causeway/viewer/graphql/viewer/test/e2e/queryandmutations/Staff_IntegTest.create_staff_member_with_department.approved.json
index 40da6db68b..0bbcc6c085 100644
--- 
a/viewers/graphql/test/src/test/java/org/apache/causeway/viewer/graphql/viewer/test/e2e/queryandmutations/Staff_IntegTest.create_staff_member_with_department.approved.json
+++ 
b/viewers/graphql/test/src/test/java/org/apache/causeway/viewer/graphql/viewer/test/e2e/queryandmutations/Staff_IntegTest.create_staff_member_with_department.approved.json
@@ -1,25 +1,41 @@
 {
   "data" : {
-    "university_dept_Staff" : {
-      "createStaffMember" : {
-        "invokeNonIdempotent" : {
-          "name" : {
-            "get" : "Dr. Georgina McGovern"
-          },
-          "department" : {
-            "get" : {
+    "Scenario" : {
+      "Name" : "New member of staff",
+      "Given" : {
+        "university_dept_Departments" : {
+          "findDepartmentByName" : {
+            "invoke" : {
+              "_gqlv_meta" : {
+                "saveAs" : "classics"
+              }
+            }
+          }
+        }
+      },
+      "When" : {
+        "university_dept_Staff" : {
+          "createStaffMember" : {
+            "invokeNonIdempotent" : {
               "name" : {
-                "get" : "Classics"
+                "get" : "Dr. Georgina McGovern"
+              },
+              "department" : {
+                "get" : {
+                  "name" : {
+                    "get" : "Classics"
+                  }
+                }
+              },
+              "_gqlv_meta" : {
+                "title" : "Untitled Staff Member",
+                "logicalTypeName" : "university.dept.StaffMember",
+                "version" : null,
+                "cssClass" : null,
+                "iconName" : null,
+                "grid" : "<?xml version=\"1.0\" encoding=\"UTF-8\"?><bs:grid 
xmlns:bs=\"https://causeway.apache.org/applib/layout/grid/bootstrap3\"; 
xmlns:lnk=\"https://causeway.apache.org/applib/layout/links\"; 
xmlns:cpt=\"https://causeway.apache.org/applib/layout/component\";>\r\n    
<bs:row>\r\n        <bs:col span=\"12\" unreferencedActions=\"true\">\r\n       
     <cpt:domainObject bookmarking=\"AS_ROOT\"/>\r\n        </bs:col>\r\n    
</bs:row>\r\n    <bs:row>\r\n        <bs:col span=\ [...]
               }
             }
-          },
-          "_gqlv_meta" : {
-            "title" : "Untitled Staff Member",
-            "logicalTypeName" : "university.dept.StaffMember",
-            "version" : null,
-            "cssClass" : null,
-            "iconName" : null,
-            "grid" : "<?xml version=\"1.0\" encoding=\"UTF-8\"?><bs:grid 
xmlns:bs=\"https://causeway.apache.org/applib/layout/grid/bootstrap3\"; 
xmlns:lnk=\"https://causeway.apache.org/applib/layout/links\"; 
xmlns:cpt=\"https://causeway.apache.org/applib/layout/component\";>\r\n    
<bs:row>\r\n        <bs:col span=\"12\" unreferencedActions=\"true\">\r\n       
     <cpt:domainObject bookmarking=\"AS_ROOT\"/>\r\n        </bs:col>\r\n    
</bs:row>\r\n    <bs:row>\r\n        <bs:col span=\"4\" [...]
           }
         }
       }
diff --git 
a/viewers/graphql/test/src/test/java/org/apache/causeway/viewer/graphql/viewer/test/e2e/queryandmutations/Staff_IntegTest.java
 
b/viewers/graphql/test/src/test/java/org/apache/causeway/viewer/graphql/viewer/test/e2e/queryandmutations/Staff_IntegTest.java
index eb8f36e955..d0c59e25a8 100644
--- 
a/viewers/graphql/test/src/test/java/org/apache/causeway/viewer/graphql/viewer/test/e2e/queryandmutations/Staff_IntegTest.java
+++ 
b/viewers/graphql/test/src/test/java/org/apache/causeway/viewer/graphql/viewer/test/e2e/queryandmutations/Staff_IntegTest.java
@@ -113,19 +113,7 @@ public class Staff_IntegTest extends Abstract_IntegTest {
     @UseReporter(DiffReporter.class)
     void create_staff_member_with_department() throws Exception {
 
-        final Bookmark bookmark =
-                transactionService.callTransactional(
-                        Propagation.REQUIRED,
-                        () -> {
-                            Department department = 
departmentRepository.findByName("Classics");
-                            return 
bookmarkService.bookmarkFor(department).orElseThrow();
-                        }
-                ).valueAsNonNullElseFail();
-
-        val response = submit(_Maps.unmodifiable("$departmentId", 
bookmark.getIdentifier()));
-
-        // then payload
-        Approvals.verify(response, jsonOptions());
+        Approvals.verify(submit(), jsonOptions());
 
     }
 }

Reply via email to