_acs-admin__acs_admin_merge_MergeUserInfo (private)

 _acs-admin__acs_admin_merge_MergeUserInfo

Defined in packages/acs-admin/tcl/test/acs-admin-procs.tcl

Partial Call Graph (max 5 caller/called nodes):
%3 aa_false aa_false (public) aa_log aa_log (public) aa_log_result aa_log_result (public) aa_run_with_teardown aa_run_with_teardown (public) aa_true aa_true (public) _acs-admin__acs_admin_merge_MergeUserInfo _acs-admin__acs_admin_merge_MergeUserInfo _acs-admin__acs_admin_merge_MergeUserInfo->aa_false _acs-admin__acs_admin_merge_MergeUserInfo->aa_log _acs-admin__acs_admin_merge_MergeUserInfo->aa_log_result _acs-admin__acs_admin_merge_MergeUserInfo->aa_run_with_teardown _acs-admin__acs_admin_merge_MergeUserInfo->aa_true

Testcases:
No testcase defined.
Source code:
        
        set _aa_export {}
        set body_count 1
        foreach testcase_body {{
    aa_run_with_teardown  -rollback  -test_code {
            # Create 2 dummy users
            set user_id_1 [dict get [acs::test::user::create] user_id]
            set user_id_2 [dict get [acs::test::user::create] user_id]

            # Fake non-image just to have a file to save
            set wfd [file tempfile tmpnam [ad_tmpdir]/test-XXXXXX.png]
            puts $wfd [string repeat a 1000]
            close $wfd
            # Give a fake portrait to user_1
            set portrait_id [acs_user::create_portrait  -user_id $user_id_1  -file $tmpnam]
            file delete -- $tmpnam

            # Get a random object none of the two users has write
            # privilege for
            set random_object [db_string get_object {
                select min(object_id) from acs_objects
                where not acs_permission.permission_p(object_id, :user_id_1, 'write')
                  and not acs_permission.permission_p(object_id, :user_id_2, 'write')
            }]
            # Set user_1 as fake creation user
            db_dml update_object {
                update acs_objects set
                creation_user = :user_id_1
                where object_id = :random_object
            }
            # Give user_1 the privilege
            permission::grant -party_id $user_id_1 -object_id $random_object  -privilege write

            # Merge them
            merge::MergeUserInfo  -from_user_id $user_id_1  -to_user_id $user_id_2

            set portrait_id_2 [acs_user::get_portrait_id -user_id $user_id_2]
            aa_true "Users have now the same portrait ($portrait_id == $portrait_id_2)"  {$portrait_id == $portrait_id_2}

            set creation_user_2 [db_string get_creator {
                select creation_user from acs_objects where object_id = :random_object
            }]
            aa_true "Creator of object '$random_object' is now user '$user_id_2'"  {$creation_user_2 == $user_id_2}

            aa_true "User '$user_id_2' has now write permission on object '$random_object'"  [permission::permission_p  -party_id $user_id_2  -object_id $random_object  -privilege "write"]
            aa_false "User '$user_id_1' was revoked write permission on object '$random_object'"  [permission::permission_p  -party_id $user_id_1  -object_id $random_object  -privilege "write"]
        }
}} {
          aa_log "Running testcase body $body_count"
          set ::__aa_test_indent [info level]
          set catch_val [catch $testcase_body msg]
          if {$catch_val != 0 && $catch_val != 2} {
              aa_log_result "fail" "acs_admin_merge_MergeUserInfo (body $body_count): Error during execution: $msg, stack trace: \n$::errorInfo"
          }
          incr body_count
        }
XQL Not present:
Generic, PostgreSQL, Oracle
[ hide source ] | [ make this the default ]
Show another procedure: