               (is (= expected (apply-events events)))
 
               (testing "> GIS user is present"
-                (let [events (conj events {:event/type :db-admin.event/gis-user-is-present
-                                           :event/version 1
-                                           :event/transient? true
-                                           :congregation/id cong-id
-                                           :user/id user-id
-                                           :gis-user/username "username123"})]
-                  (is (= expected (apply-events events))))))))))))
+                (let [events (conj events user-present-event)]
+                  (is (= expected (apply-events events))
+                      "no change"))))))))))

  (testing "congregation created"
    (let [cong-id (UUID. 0 1)
          user-id (UUID. 0 2)
          events [{:event/type :congregation.event/congregation-created
                   :event/version 1
                   :congregation/id cong-id
                   :congregation/name "Cong1 Name"
                   :congregation/schema-name "cong1_schema"}]
          expected {::db-admin/congregations {cong-id {:congregation/schema-name "cong1_schema"}}
                    ::db-admin/pending-tenants #{{:congregation/schema-name "cong1_schema"}}}]
      (is (= expected (apply-events events)))

      (testing "> GIS user created"
        (let [events (conj events {:event/type :congregation.event/gis-user-created
                                   :event/version 1
                                   :congregation/id cong-id
                                   :user/id user-id
                                   :gis-user/username "username123"
                                   :gis-user/password "password123"})
              expected (merge expected
                              {::db-admin/pending-gis-users
                               {[cong-id user-id] {::db-admin/desired-state :present

          (is (= expected (apply-events events)))

          (testing "> GIS user is present"
            (let [events (conj events user-present-event)
                  expected (merge expected {::db-admin/pending-gis-users {}})]
              (is (= expected (apply-events events)))))

          (testing "> GIS user deleted"
            (let [events (conj events user-deleted-event)
                  expected (merge expected
                                  {::db-admin/pending-gis-users
                                   {[cong-id user-id] {::db-admin/desired-state :absent
