ck_calls = 0;
local *WebGPU::Direct::Limits::unpack = sub { $unpack_calls++; $rl_unpack->(@_) };
isnt( refaddr $h, refaddr %$obj, 'Original hash does not share an address' );
ok( explain($h), 'The
ed once with a hash' );
is( $unpack_calls, 0, 'Limits unpack was never called with a hash' );
isnt( refaddr $h, refaddr $a->limits->%*, 'Original hash does not share an address from set_obj' );
since it is copying' );
is( $unpack_calls, 1, 'Limits unpack was never called with a hash' );
isnt( refaddr $obj, refaddr $a->limits->%*, 'Original hash does not share an address from set_obj' );
aceCapabilities object is still blessed' );
# PresentMode must include at least 1 item: Fifo
isnt( $sc->presentModeCount, 0, 'Present Mode Count is at least one' );
isa_ok( $sc->presentModes,
oreach my $pm ( $sc->presentModes->@* )
{
is( ref $pm, '', "Enum $pm is not blessed" );
isnt( 0 + $pm, "$pm", "Enum $pm is dualvar" );
is( WebGPU::Direct::PresentMode->new($pm), $pm, "En
Limits($supported_limits);
# Select a few known to not be "0"
foreach my $k (@nonempty_keys)
{
isnt( $supported_limits->limits->$k, $limits{$k}, "$k differs like it should" );
}
# What happens whe
f !$fn;
next
if $bypass{$name};
local $@;
my $obj = eval { WebGPU::Direct->$fn };
isnt( $obj, undef, "Was able to get a new $name object" ) || diag( explain $@);
#diag(explain $obj)
,
}
);
};
my $error = $@;
is( $buffer, undef, 'Creating the buffer failed' );
isnt( $error, undef, 'There was an error' ) and diag( explain "$error" );
is( ref $error, 'WebGPU::D