# TestUtils

## Interface Tests

### Note on PredictInputTrait Interface Tests

In the case where the PredictInputTrait is PointOrDistributionPredictInput the the Models API requires only that the distribution in question is Sampleable. When using Models.TestUtils.test_interface to test a model where distributions can be passed to predict, the user should provide inputs of the distribution type appropriate to their model. In the example below the CustomModel accepts MvNormal distributions to predict.

using CustomModels
using Distributions
using Models.TestUtils

test_interface(
CustomModelTemplate();
distribution_inputs=[MvNormal(5, 1) for _ in 1:5],
)

## Test Fakes

Models.TestUtils.FakeTemplateType
FakeTemplate{E <: EstimateTrait, O <: OutputTrait} <: Template

This template is a test double for testing purposes. It should be defined (before fitting) with a predictor, which can be changed by mutating the field.

Fields

• predictor::Function: predicts the outputs of the FakeModel. It is (num_variates, inputs) -> outputs, where the num_variates will be memorized during fit.

Methods

source