#!perl
use BTDT::Test::WWW::Declare tests => 9;
use strict;
use warnings;
session "gooduser" => run {
flow "create task" => check {
login as 'gooduser';
fill form 'tasklist-new_item_create' => {
summary => "bouncy task",
};
click button 'Create';
content should contain "bouncy task";
};
flow "assign task to otheruser" => check {
click href qr{bouncy task};
fill form mech->moniker_for("BTDT::Action::UpdateTask", id => 3) => {
owner_id => 'otheruser@example.com',
};
click button 'Save';
content should contain 'something or other';
};
session "otheruser" => run {
flow "accept gooduser's task" => check {
login as 'otheruser';
click href qr{unaccepted task(s)?};
content should contain 'bouncy task';
click href qr{bouncy task};
fill form mech->moniker_for('BTDT::Action::AcceptTask') => {
accepted => 1,
};
click button 'Save';
content should contain 'Task accepted';
};
};
flow "comment on the task I gave" => check {
click href qr{bouncy task};
content should contain 'bouncy task';
fill form mech->moniker_for('BTDT::Action::UpdateTask', id => 3) => {
comment => "first comment",
};
click button 'Save';
session "otheruser" => run {
flow "check that we got the comment" => check {
reload;
content should contain 'first comment';
};
};
};
flow "add another comment" => check {
fill form mech->moniker_for('BTDT::Action::UpdateTask', id => 3) => {
comment => "second comment",
};
click button 'Save';
};
};