# -*-perl-*- use strict; use Test::More 'no_plan'; use lib "$ENV{LJHOME}/cgi-bin"; require 'ljlib.pl'; use LJ::Console; use LJ::Test qw (temp_user); local $LJ::T_NO_COMMAND_PRINT = 1; my $remote = temp_user(); LJ::set_remote($remote); my $from = temp_user(); my $to = temp_user(); my $run = sub { my $cmd = shift; return LJ::Console->run_commands_text($cmd); }; # RENAME RESET $from->add_friend($to); $to->add_friend($from); ok($from->is_friend($to), "One friend set up correctly."); ok($to->is_friend($from), "Second friend set up correctly."); is($run->("rename_reset friends " . $from->user), "error: You are not authorized to run this command."); $remote->grant_priv("moneyenter"); is($run->("rename_reset friends " . $from->user), "success: Friends for '" . $from->user . "' removed."); ok(!$from->is_friend($to), "Friend successfully removed."); is($run->("rename_reset friendofs " . $from->user), "success: Friend-ofs for '" . $from->user . "' removed."); ok(!$to->is_friend($from), "Friend-of is removed."); # RENAME SHOW my $fromuser = $from->user; my $touser = $to->user; # no risk of usernames accidentally being tokens is($run->("rename_show $fromuser"), "error: Could not find a matching rename."); is($run->("rename_show $touser"), "error: Could not find a matching rename."); is($run->("rename_redir add $fromuser $touser"), "error: '$fromuser' was never renamed to '$touser'."); is($run->("rename_redir add $touser $fromuser"), "error: '$touser' was never renamed to '$fromuser'."); my $dbh = LJ::get_db_writer(); my $token = "banananana"; $dbh->do("INSERT INTO renames (fromuser, touser, token) VALUES (?, ?, ?)", undef, $fromuser, $touser, $token); my $renid = $dbh->{'mysql_insertid'}; ok($run->("rename_show $fromuser") =~ /fromuser: $fromuser/, "got a rename record from original username."); ok($run->("rename_show $touser") =~ /touser: $touser/, "got rename record from new username"); ok($run->("rename_show $token") =~ /fromuser: $fromuser/, "got a rename record from token"); ok($run->("rename_show $renid") =~ /fromuser: $fromuser/, "got a rename record from rename id"); # RENAME REDIRECTIONS is($run->("rename_redir add $fromuser $touser"), "success: Redirection added from '$fromuser' to '$touser'"); $from = LJ::load_user($from->user); ok($from->is_renamed, "User marked as renamed"); ok($from->prop("renamedto") eq $touser, "Redirection to new username set up."); is($run->("rename_redir remove $fromuser $touser"), "success: Redirection from '$fromuser' to '$touser' removed."); $from = LJ::load_user($from->user); ok($from->is_deleted, "User marked as deleted"); ok(!$from->prop("renamedto"), "Redirection to new username removed.");