Google-RestApi
view release on metacpan or search on metacpan
t/unit/Test/Google/RestApi/DriveApi3/Drive.pm view on Meta::CPAN
'hide() without ID should throw';
throws_ok sub { $drive->unhide() },
qr/Drive ID required/i,
'unhide() without ID should throw';
return;
}
sub accessors : Tests(2) {
my $self = shift;
my $drive = Drive->new(drive_api => mock_drive_api(), id => 'drive123');
is $drive->drive_id(), 'drive123', 'drive_id returns correct ID';
isa_ok $drive->drive_api(), 'Google::RestApi::DriveApi3', 'drive_api returns DriveApi3';
return;
}
sub get_drive : Tests(2) {
my $self = shift;
SKIP: {
skip "No shared drives available", 2 if $self->{_skip_drive_tests};
my $drive = $self->_mock_drive();
ok my $result = $drive->get(), 'get() returns result';
ok $result->{id}, 'get() returns drive id';
}
return;
}
sub get_with_fields : Tests(1) {
my $self = shift;
SKIP: {
skip "No shared drives available", 1 if $self->{_skip_drive_tests};
my $drive = $self->_mock_drive();
ok my $result = $drive->get(fields => 'name,id'), 'get() with fields returns result';
}
return;
}
sub get_with_domain_admin : Tests(1) {
my $self = shift;
SKIP: {
skip "No shared drives available", 1 if $self->{_skip_drive_tests};
my $drive = $self->_mock_drive();
ok my $result = $drive->get(use_domain_admin_access => 1),
'get() with use_domain_admin_access returns result';
}
return;
}
sub update_drive : Tests(1) {
my $self = shift;
SKIP: {
skip "No shared drives available", 1 if $self->{_skip_drive_tests};
my $drive = $self->_mock_drive();
ok my $result = $drive->update(name => 'Renamed Drive'),
'update() with name returns result';
}
return;
}
sub update_with_options : Tests(1) {
my $self = shift;
SKIP: {
skip "No shared drives available", 1 if $self->{_skip_drive_tests};
my $drive = $self->_mock_drive();
ok my $result = $drive->update(
name => 'Styled Drive',
color_rgb => '#FF0000',
theme_id => 'theme1',
background_image_file => { id => 'img123' },
restrictions => { adminManagedRestrictions => JSON::MaybeXS::true() },
use_domain_admin_access => 1,
), 'update() with all options returns result';
}
return;
}
sub delete_drive : Tests(1) {
my $self = shift;
SKIP: {
skip "No shared drives available", 1 if $self->{_skip_drive_tests};
my $drive = $self->_mock_drive();
lives_ok sub { $drive->delete() }, 'delete() lives';
}
return;
}
sub delete_with_options : Tests(1) {
my $self = shift;
SKIP: {
skip "No shared drives available", 1 if $self->{_skip_drive_tests};
my $drive = $self->_mock_drive();
lives_ok sub {
$drive->delete(
use_domain_admin_access => 1,
allow_item_deletion => 1,
)
}, 'delete() with options lives';
}
return;
}
sub hide_drive : Tests(1) {
my $self = shift;
SKIP: {
skip "No shared drives available", 1 if $self->{_skip_drive_tests};
my $drive = $self->_mock_drive();
ok my $result = $drive->hide(), 'hide() returns result';
}
( run in 2.347 seconds using v1.01-cache-2.11-cpan-5735350b133 )