Main Content

matlab.unittest.constraints.HasSize Class

Namespace: matlab.unittest.constraints
Superclasses: matlab.unittest.constraints.BooleanConstraint

Test if array has specified size

Description

The matlab.unittest.constraints.HasSize class provides a constraint to test if an array has the specified size.

Creation

Description

c = matlab.unittest.constraints.HasSize(size) creates a constraint to test if an array has the specified size and sets the Size property. The constraint is satisfied if the array size is equal to size.

example

Properties

expand all

Expected array size, returned as a row vector of nonnegative integers. Specify the value of this property during creation of the constraint.

Attributes:

GetAccess
public
SetAccess
private

Data Types: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Examples

collapse all

Test for array sizes using the HasSize constraint.

First, import the classes used in this example.

import matlab.unittest.TestCase
import matlab.unittest.constraints.HasSize

Create a test case for interactive testing.

testCase = TestCase.forInteractiveUse;

Verify that the size of the row vector [1 3 5] is [1 3].

testCase.verifyThat([1 3 5],HasSize([1 3]))
Verification passed.

Test the size of a 2-by-5-by-3 array. The test passes.

testCase.verifyThat(rand(2,5,3),HasSize([2 5 3]))
Verification passed.

Test if the size of a 2-by-2 matrix is not [2 2]. The test fails.

testCase.verifyThat(eye(2),~HasSize([2 2]))
Verification failed.
    ---------------------
    Framework Diagnostic:
    ---------------------
    Negated HasSize failed.
    --> The value must not have the size specified.
    
    Actual Value:
         1     0
         0     1
    Prohibited Size:
         2     2

Test the size of a cell array of character vectors. The test passes.

C = {'Mercury','Gemini','Apollo'};
testCase.verifyThat(C,HasSize([1 3]))
Verification passed.

Version History

Introduced in R2013a