% ===============
% Test ipdouble
% ===============
% test constructor
try
ipd = ipdouble(int32(cumsum(ones(5,1))));
ipd = ipdouble(ones(5,5,5));
warning('failed ipdouble constructor');
catch
end;
ipd = ipdouble(cumsum(ones(5,1)));
% test display
ipd
% test double
d = double(ipd)
d(2) = 10
if (ipd(2) == d(2))
warning('failed ipint32/double test');
end
% test end
v = ipd(3:end);
% test size
size(ipd)
% test subsasgn
test_inplace_func1(ipd);
if (ipd(1) ~= 100)
warning('failed ipdouble/subsasgn test');
end;
% make a copy
ipd2 = ipdouble(ipd);
ipd2(:) = 5;
if (any(double(ipd2) ~= 5))
warning('failed ipdouble/subsasgn test');
end
ipd3 = ipdouble(ones(3,3));
ipd3(1,:) = 2;
if (any(double(ipd3) ~= [2 2 2; 1 1 1; 1 1 1]))
warning('failed ipdouble/subsasgn test');
end
ipd3(2,:) = [1 2 3];
if (any(double(ipd3) ~= [2 2 2; 1 2 3; 1 1 1]))
warning('failed ipdouble/subsasgn test');
end
ipd3(:,3) = [4 5 6]';
if (any(double(ipd3) ~= [2 2 4; 1 2 5; 1 1 6]))
warning('failed ipdouble/subsasgn test');
end
ipd3([2 3],[2 3]) = [ 9 9; 9 9];
if (any(double(ipd3) ~= [2 2 4; 1 9 9; 1 9 9]))
warning('failed ipdouble/subsasgn test');
end
ipd3(:,:) = ones(3,3);
if (any(double(ipd3) ~= [1 1 1; 1 1 1; 1 1 1]))
warning('failed ipdouble/subsasgn test');
end
% test subsref
ipd([2 4])
clear
% ===============
% Test ipint32
% ===============
% test constructor
try
ipi = ipint32(ones(5,1));
ipi = ipint32(int32(ones(5,5,5)));
warning('failed ipint32 constructor');
catch
end;
ipi = ipint32(int32(cumsum(ones(5,1))));
% test display
ipi
% test double
d = double(ipi)
d(2) = 10
if (ipi(2) == d(2))
warning('failed ipint32/double test');
end
% test end
v = ipi(3:end);
% test size
size(ipi)
% test subsasgn
test_inplace_func2(ipi);
if (ipi(1) ~= 100)
warning('failed ipint32/subsasgn test');
end;
% make a copy
ipi2 = ipint32(ipi);
ipi2(:) = int32(5);
if (any(double(ipi2) ~= 5))
warning('failed ipint32/subsasgn test');
end
ipi3 = ipint32(int32(ones(3,3)));
ipi3(1,:) = int32(2);
if (any(double(ipi3) ~= [2 2 2; 1 1 1; 1 1 1]))
warning('failed ipint32/subsasgn test');
end
ipi3(2,:) = int32([1 2 3]);
if (any(double(ipi3) ~= [2 2 2; 1 2 3; 1 1 1]))
warning('failed ipint32/subsasgn test');
end
ipi3(:,3) = int32([4 5 6]');
if (any(double(ipi3) ~= [2 2 4; 1 2 5; 1 1 6]))
warning('failed ipint32/subsasgn test');
end
ipi3([2 3],[2 3]) = int32([ 9 9; 9 9]);
if (any(double(ipi3) ~= [2 2 4; 1 9 9; 1 9 9]))
warning('failed ipint32/subsasgn test');
end
ipi3(:,:) = int32(ones(3,3));
if (any(double(ipi3) ~= [1 1 1; 1 1 1; 1 1 1]))
warning('failed ipint32/subsasgn test');
end
% test subsref
ipi([2 4])
clear