#!/usr/bin/perl -wT # vim: ft=xml ts=4 sw=4 et: #---------------------------------------------------------------------- # heading : Collaboration # description : GROUP_MEMBERS # navigation : 2000 2200 #---------------------------------------------------------------------- #---------------------------------------------------------------------- # copyright (C) 2002-2005 Mitel Networks Corporation # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # # Technical support for this program is available from Mitel Networks # Please visit our web site www.mitel.com/sme/ for details. #---------------------------------------------------------------------- use strict; use esmith::FormMagick::Panel::groupmembers; my $f = esmith::FormMagick::Panel::groupmembers->new(); $f->display(); =head1 TESTING =begin testing use esmith::FormMagick::Tester; use esmith::TestUtils; use esmith::AccountsDB; my $panel = 'groups'; my $panel_path = "/etc/e-smith/web/functions/".$panel; my $ua = esmith::FormMagick::Tester->new(); is (mode($panel_path), '4750', "Check permissions on script"); ok ($ua->get_panel($panel), "ABOUT TO RUN L10N TESTS"); is ($ua->{status}, 200, "200 OK"); like($ua->{content}, qr/FORM_TITLE/, "Saw untranslated form title"); ok ($ua->set_language("en"), "Set language to English"); ok ($ua->get_panel($panel), "Get panel"); is ($ua->{status}, 200, "200 OK"); like($ua->{content}, qr/Create, remove, or change/, "Saw translated form title"); # Testing changes ok ($ua->get_panel($panel), "Testing panel retrieval"); can_ok($ua, "field"); # Destructive testing: ok ($ua->follow('Click here to create a user group'), "Followed link to create group"); is ($ua->{status}, 200, "200 OK" ); can_ok($ua, "field"); ok($ua->field('groupName' => 'aaaaaeve') , "Set GroupName"); ok($ua->field('groupDesc' => 'sample'), "Set GroupDesc"); if (destruction_ok()) { ok ($ua->click('Create'), "Clicked create"); is ($ua->{status}, 200, "200 OK" ); like ($ua->{content}, qr/created user group/, "Saw create success message"); ok ($ua->get_panel($panel), "Get panel"); like ($ua->{content}, qr/aaaaaeve/, "Saw newly created everygroup link"); ok ($ua->follow('Modify'), "modifying aaaaaeve"); is ($ua->{status}, 200, "200 OK "); ok ($ua->field('groupDesc' => 'Everyone') , "Set group desc to 'Everyone'"); #putting this in a test fails. why? $ua->field('groupMembers' => 'admin'); ok ($ua->click('Modify')); is ($ua->{status}, 200, "200 OK"); like ($ua->{content}, qr/Successfully/, "Saw modification success message"); ok (my $acct = esmith::AccountsDB->open()); ok (my $everg = $acct->get('aaaaaeve'), "Got an aaaaaeveg out of the db"); ok ($everg->prop('Members') eq 'admin', "aaaaaeve has admin as its member"); ok ($ua->get_panel($panel), "Get panel"); like ($ua->{content}, qr/aaaaaeve/, "Saw modified everygroup link"); ok ($ua->follow('Remove'), "removing aaaaaeve"); is ($ua->{status}, 200, "200 OK"); ok ($ua->click('Remove')); is ($ua->{status}, 200, "200 OK"); like ($ua->{content}, qr/Successfully/, "Saw removal success message"); ok ($ua->get_panel($panel), "Get panel"); unlike ($ua->{content}, qr/aaaaaeve/, "Saw no everygroup"); } =end testing =cut __DATA__
CREATE_GROUP GROUP_NAMING GROUP_DESC_EXPL REMOVE_USER_GROUP