- test "create new user" do
- Thread.current[:user] = @admin_user # set admin user as the current user
-
- user = User.new
- user.first_name = "first_name_for_newly_created_user"
- user.save
-
- # verify there is one extra user in the db now
- assert (User.find(:all).size == @all_users.size+1)
-
- user = User.find(user.id) # get the user back
- assert_equal(user.first_name, 'first_name_for_newly_created_user')
- assert_not_nil user.uuid, 'uuid should be set for newly created user'
- assert_nil user.email, 'email should be null for newly created user, because it was not passed in'
- assert_nil user.identity_url, 'identity_url should be null for newly created user, because it was not passed in'
-
- user.first_name = 'first_name_for_newly_created_user_updated'
- user.save
- user = User.find(user.id) # get the user back
- assert_equal(user.first_name, 'first_name_for_newly_created_user_updated')
- end
-
- test "update existing user" do
- Thread.current[:user] = @active_user # set active user as current user
- @active_user.first_name = "first_name_changed"
- @active_user.save
-
- @active_user = User.find(@active_user.id) # get the user back
- assert_equal(@active_user.first_name, 'first_name_changed')
-
- # admin user also should be able to update the "active" user info
- Thread.current[:user] = @admin_user # set admin user as current user
- @active_user.first_name = "first_name_changed_by_admin_for_active_user"
- @active_user.save
-
- @active_user = User.find(@active_user.id) # get the user back
- assert_equal(@active_user.first_name, 'first_name_changed_by_admin_for_active_user')
- end
-
- test "delete a user and verify" do
- active_user_uuid = @active_user.uuid
-
- Thread.current[:user] = @admin_user
- @active_user.delete
-
- found_deleted_user = false
- User.find(:all).each do |user|
- if user.uuid == active_user_uuid
- found_deleted_user = true
- break
- end
- end
- assert !found_deleted_user, "found deleted user: "+active_user_uuid
-
- end