root/branches/boomer/t/22-author.t @ 1100

Revision 1100, 3.4 kB (checked in by hachi, 2 years ago)

Merging release-20 to boomer branch: svn merge -r62323:63659 http://svn.sixapart.com/repos/eng/movabletype/branches/release-20 .

  • Property svn:mime-type set to text/plain
  • Property svn:keywords set to Author Date Id Revision
Line 
1#!/usr/bin/perl
2# $Id$
3use strict;
4use warnings;
5
6use lib 't/lib';
7use lib 'lib';
8use lib 'extlib';
9
10use Test::More tests => 54;
11
12use MT;
13use MT::Author;
14use vars qw( $DB_DIR $T_CFG );
15
16use lib 't/lib', 'extlib', 'lib', '../lib', '../extlib';
17
18use MT::Test qw(:db :data);
19
20my $mt = MT->new( Config => $T_CFG ) or die MT->errstr;
21isa_ok($mt, 'MT');
22
23{
24my $author = MT::Author->load({ name => 'Chuck D' });
25isa_ok($author, 'MT::Author');
26ok($author->is_valid_password('bass'), 'bass is valid');
27ok(!$author->is_valid_password('wrong'), 'wrong is invalid');
28
29ok($author->can_create_blog, 'can create blog');
30ok($author->can_view_log, 'can view log');
31ok($author->can_manage_plugins, 'can manage plugins');
32
33# Superuser Chuck D should have permission to do anything, on any blog
34my $perm = $author->blog_perm(1);
35ok($perm, "$author->blog_perm(1)") || die;
36ok($author->can_edit_entry(1), 'can_edit_entry(1)');
37ok($author->can_edit_entry(2), 'can_edit_entry(2)');
38ok($perm->can_comment, 'can_comment');
39ok($perm->can_post, 'can_post');
40ok($perm->can_create_post, 'can_create_post');
41ok($perm->can_publish_post, 'can_publish_post');
42ok($perm->can_upload, 'can_upload');
43ok($perm->can_edit_all_posts, 'can_edit_all_posts');
44ok($perm->can_manage_pages, 'can_manage_pages');
45ok($perm->can_edit_templates, 'can_edit_templates');
46ok($perm->can_edit_tags, 'can_edit_tags');
47ok($perm->can_edit_config, 'can_edit_config');
48ok($perm->can_set_publish_paths, 'can_set_publish_paths');
49ok($perm->can_rebuild, 'can_rebuild');
50ok($perm->can_send_notifications, 'can_send_notifications');
51ok($perm->can_edit_categories, 'can_edit_categories');
52ok($perm->can_edit_notifications, 'can_edit_notifications');
53ok($perm->can_administer_blog, 'can_administer_blog');
54ok($perm->can_edit_assets, 'can_edit_assets');
55ok($perm->can_save_image_defaults, 'can_save_image_defaults');
56ok($perm->can_manage_feedback, 'can_manage_feedback');
57}
58
59{
60my $author = MT::Author->load({ name => 'Bob D' });
61$author = MT::Author->load($author->id);  # silly ruse to force caching....
62isa_ok($author, 'MT::Author');
63
64# Non-superuser Bob D should only have selected permissions
65my $perm = $author->blog_perm(1);
66ok($perm, "$author->blog_perm(1)") || die;
67ok( ! $author->can_create_blog, 'can_create_blog' );
68ok( ! $author->can_view_log, 'can_view_log' );
69ok( ! $author->can_manage_plugins, 'can manage plugins');
70ok( ! $author->can_edit_entry(1), 'can_edit_entry(1)' );
71ok(   $author->can_edit_entry(2), 'can_edit_entry(2)' );
72ok(   $perm->can_post, 'can_post' );
73ok(   $perm->can_create_post, 'can_create_post');
74ok(   $perm->can_publish_post, 'can_publish_post');
75ok( ! $perm->can_upload, 'can_upload' );
76ok( ! $perm->can_edit_all_posts, 'can_edit_all_posts' );
77ok( ! $perm->can_manage_pages, 'can_manage_pages');
78ok(   $perm->can_edit_templates, 'can_edit_templates' );
79ok( ! $perm->can_edit_tags, 'can_edit_tags');
80ok( ! $perm->can_edit_config, 'can_edit_config' );
81ok( ! $perm->can_set_publish_paths, 'can_set_publish_paths');
82ok( ! $perm->can_rebuild, 'can_rebuild' );
83ok( ! $perm->can_send_notifications, 'can_send_notifications' );
84ok( ! $perm->can_edit_categories, 'can_edit_categories' );
85ok( ! $perm->can_edit_notifications, 'can_edit_notifications' );
86ok( ! $perm->can_administer_blog, 'can_administer_blog' );
87ok( ! $perm->can_edit_assets, 'can_edit_assets');
88ok( ! $perm->can_save_image_defaults, 'can_save_image_defaults');
89ok( ! $perm->can_manage_feedback, 'can_manage_feedback');
90}
Note: See TracBrowser for help on using the browser.