note description: "[ Eiffel tests that can be executed by testing tool. ]" author: "EiffelStudio test wizard" date: "$Date: 2015-01-27 19:15:02 +0100 (mar., 27 janv. 2015) $" revision: "$Revision: 96542 $" testing: "type/manual" class TRANSACTION_TEST_SET inherit EQA_TEST_SET redefine on_prepare, on_clean select default_create end ABSTRACT_DB_TEST rename default_create as default_db_test end feature {NONE} -- Events on_prepare -- do (create {CLEAN_DB}).clean_db (connection) end on_clean -- do end feature -- Test routines test_user_rollback note testing: "execution/isolated" local u: detachable CMS_USER do u := storage.user_by_name ("test") if u = Void then u := custom_user ("test", "test","test@admin.com") storage.new_user (u) end assert ("Has user:", storage.has_user) u.set_email ("test@example.com") storage.sql_begin_transaction storage.update_user (u) assert ("Has user:", storage.user_by_email ("test@example.com") /= Void) storage.sql_rollback_transaction assert ("Not has user:", storage.user_by_email ("test@example.com") = Void) end test_user_node_rollback note testing: "execution/isolated" local u: detachable CMS_USER do u := storage.user_by_name ("test") if u = Void then u := custom_user ("test", "test","test@admin.com") storage.new_user (u) end connection.begin_transaction u.set_email ("test@example.com") assert ("Has user:", storage.user_by_email ("test@example.com") /= Void) -- storage.new_node (default_node) -- assert ("Has one node:", storage.nodes_count = 1) connection.rollback assert ("Not has user:", storage.user_by_email ("test@example.com") = Void) -- assert ("Has no node:", storage.nodes_count = 0) end end