# CopierTester&lt;TValue, TCopier&gt; Properties

[Type overview](/orleans/docs/api/csharp/microsoft.orleans.serialization.testkit/orleans.serialization.testkit.copiertester-2/)

## IsImmutable {#isimmutable-663ee4a2}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.serialization.testkit/orleans.serialization.testkit.copiertester-2/properties/isimmutable-663ee4a2/)

[Source](https://github.com/dotnet/orleans/blob/b7a9e3e1c9c54b3cec3a467c5734bf7744541bcf/src/Orleans.Serialization.TestKit/CopierTester.cs#L65)

```csharp
protected virtual bool CopierTester<TValue, IsImmutable
```

Gets a value indicating whether the type copied by this codec is immutable.

## IsPooled {#ispooled-d2adc955}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.serialization.testkit/orleans.serialization.testkit.copiertester-2/properties/ispooled-d2adc955/)

[Source](https://github.com/dotnet/orleans/blob/b7a9e3e1c9c54b3cec3a467c5734bf7744541bcf/src/Orleans.Serialization.TestKit/CopierTester.cs#L70)

```csharp
protected virtual bool CopierTester<TValue, IsPooled
```

Gets a value indicating whether the type copied by this codec is pooled.

## TestValues {#testvalues-eaecdfc4}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.serialization.testkit/orleans.serialization.testkit.copiertester-2/properties/testvalues-eaecdfc4/)

```csharp
protected abstract TValue[] CopierTester<TValue, TestValues
```

Gets an array of test values.

## ValueProvider {#valueprovider-e9afcc74}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.serialization.testkit/orleans.serialization.testkit.copiertester-2/properties/valueprovider-e9afcc74/)

[Source](https://github.com/dotnet/orleans/blob/b7a9e3e1c9c54b3cec3a467c5734bf7744541bcf/src/Orleans.Serialization.TestKit/CopierTester.cs#L102)

```csharp
protected virtual Action<Action<TValue>>? CopierTester<TValue, ValueProvider
```

Gets a value provider delegate.
