> ## Documentation Index
> Fetch the complete documentation index at: https://cdktn.io/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# CSharp: Testing

> CDKTN Core API Reference for Testing in CSharp.

Testing utilities for cdktf applications.

## Initializers <a name="Initializers" id="cdktn.Testing.Initializer" />

```csharp theme={null}
using Io.Cdktn;

new Testing();
```

| **Name** | **Type** | **Description** |
| -------- | -------- | --------------- |

***

## Static Functions <a name="Static Functions" id="Static Functions" />

| **Name**                                                                                                | **Description**                                                                             |
| ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- |
| <code><a href="#cdktn.Testing.app">App</a></code>                                                       | Returns an app for testing with the following properties: - Output directory is a temp dir. |
| <code><a href="#cdktn.Testing.enableFutureFlags">EnableFutureFlags</a></code>                           | *No description.*                                                                           |
| <code><a href="#cdktn.Testing.fakeCdktfJsonPath">FakeCdktfJsonPath</a></code>                           | *No description.*                                                                           |
| <code><a href="#cdktn.Testing.fullSynth">FullSynth</a></code>                                           | *No description.*                                                                           |
| <code><a href="#cdktn.Testing.renderConstructTree">RenderConstructTree</a></code>                       | *No description.*                                                                           |
| <code><a href="#cdktn.Testing.setupJest">SetupJest</a></code>                                           | *No description.*                                                                           |
| <code><a href="#cdktn.Testing.stubVersion">StubVersion</a></code>                                       | *No description.*                                                                           |
| <code><a href="#cdktn.Testing.synth">Synth</a></code>                                                   | Returns the Terraform synthesized JSON.                                                     |
| <code><a href="#cdktn.Testing.synthHcl">SynthHcl</a></code>                                             | Returns the Terraform synthesized JSON.                                                     |
| <code><a href="#cdktn.Testing.synthScope">SynthScope</a></code>                                         | *No description.*                                                                           |
| <code><a href="#cdktn.Testing.toBeValidTerraform">ToBeValidTerraform</a></code>                         | *No description.*                                                                           |
| <code><a href="#cdktn.Testing.toHaveDataSource">ToHaveDataSource</a></code>                             | *No description.*                                                                           |
| <code><a href="#cdktn.Testing.toHaveDataSourceWithProperties">ToHaveDataSourceWithProperties</a></code> | *No description.*                                                                           |
| <code><a href="#cdktn.Testing.toHaveProvider">ToHaveProvider</a></code>                                 | *No description.*                                                                           |
| <code><a href="#cdktn.Testing.toHaveProviderWithProperties">ToHaveProviderWithProperties</a></code>     | *No description.*                                                                           |
| <code><a href="#cdktn.Testing.toHaveResource">ToHaveResource</a></code>                                 | *No description.*                                                                           |
| <code><a href="#cdktn.Testing.toHaveResourceWithProperties">ToHaveResourceWithProperties</a></code>     | *No description.*                                                                           |

***

### `App` <a name="App" id="cdktn.Testing.app" />

```csharp theme={null}
using Io.Cdktn;

Testing.App(TestingAppConfig Options = null);
```

Returns an app for testing with the following properties: - Output directory is a temp dir.

#### `Options`<sup>Optional</sup> <a name="Options" id="cdktn.Testing.app.parameter.options" />

* *Type:* <a href="#cdktn.TestingAppConfig">TestingAppConfig</a>

***

### `EnableFutureFlags` <a name="EnableFutureFlags" id="cdktn.Testing.enableFutureFlags" />

```csharp theme={null}
using Io.Cdktn;

Testing.EnableFutureFlags(App App);
```

#### `App`<sup>Required</sup> <a name="App" id="cdktn.Testing.enableFutureFlags.parameter.app" />

* *Type:* <a href="#cdktn.App">App</a>

***

### `FakeCdktfJsonPath` <a name="FakeCdktfJsonPath" id="cdktn.Testing.fakeCdktfJsonPath" />

```csharp theme={null}
using Io.Cdktn;

Testing.FakeCdktfJsonPath(App App);
```

#### `App`<sup>Required</sup> <a name="App" id="cdktn.Testing.fakeCdktfJsonPath.parameter.app" />

* *Type:* <a href="#cdktn.App">App</a>

***

### `FullSynth` <a name="FullSynth" id="cdktn.Testing.fullSynth" />

```csharp theme={null}
using Io.Cdktn;

Testing.FullSynth(TerraformStack Stack);
```

#### `Stack`<sup>Required</sup> <a name="Stack" id="cdktn.Testing.fullSynth.parameter.stack" />

* *Type:* <a href="#cdktn.TerraformStack">TerraformStack</a>

***

### `RenderConstructTree` <a name="RenderConstructTree" id="cdktn.Testing.renderConstructTree" />

```csharp theme={null}
using Io.Cdktn;

Testing.RenderConstructTree(IConstruct Construct);
```

#### `Construct`<sup>Required</sup> <a name="Construct" id="cdktn.Testing.renderConstructTree.parameter.construct" />

* *Type:* Constructs.IConstruct

***

### `SetupJest` <a name="SetupJest" id="cdktn.Testing.setupJest" />

```csharp theme={null}
using Io.Cdktn;

Testing.SetupJest();
```

### `StubVersion` <a name="StubVersion" id="cdktn.Testing.stubVersion" />

```csharp theme={null}
using Io.Cdktn;

Testing.StubVersion(App App);
```

#### `App`<sup>Required</sup> <a name="App" id="cdktn.Testing.stubVersion.parameter.app" />

* *Type:* <a href="#cdktn.App">App</a>

***

### `Synth` <a name="Synth" id="cdktn.Testing.synth" />

```csharp theme={null}
using Io.Cdktn;

Testing.Synth(TerraformStack Stack, bool RunValidations = null);
```

Returns the Terraform synthesized JSON.

#### `Stack`<sup>Required</sup> <a name="Stack" id="cdktn.Testing.synth.parameter.stack" />

* *Type:* <a href="#cdktn.TerraformStack">TerraformStack</a>

***

#### `RunValidations`<sup>Optional</sup> <a name="RunValidations" id="cdktn.Testing.synth.parameter.runValidations" />

* *Type:* bool

***

### `SynthHcl` <a name="SynthHcl" id="cdktn.Testing.synthHcl" />

```csharp theme={null}
using Io.Cdktn;

Testing.SynthHcl(TerraformStack Stack, bool RunValidations = null, bool ReturnMetadata = null);
```

Returns the Terraform synthesized JSON.

#### `Stack`<sup>Required</sup> <a name="Stack" id="cdktn.Testing.synthHcl.parameter.stack" />

* *Type:* <a href="#cdktn.TerraformStack">TerraformStack</a>

***

#### `RunValidations`<sup>Optional</sup> <a name="RunValidations" id="cdktn.Testing.synthHcl.parameter.runValidations" />

* *Type:* bool

***

#### `ReturnMetadata`<sup>Optional</sup> <a name="ReturnMetadata" id="cdktn.Testing.synthHcl.parameter.returnMetadata" />

* *Type:* bool

***

### `SynthScope` <a name="SynthScope" id="cdktn.Testing.synthScope" />

```csharp theme={null}
using Io.Cdktn;

Testing.SynthScope(IScopeCallback Fn);
```

#### `Fn`<sup>Required</sup> <a name="Fn" id="cdktn.Testing.synthScope.parameter.fn" />

* *Type:* <a href="#cdktn.IScopeCallback">IScopeCallback</a>

***

### `ToBeValidTerraform` <a name="ToBeValidTerraform" id="cdktn.Testing.toBeValidTerraform" />

```csharp theme={null}
using Io.Cdktn;

Testing.ToBeValidTerraform(string Received);
```

#### `Received`<sup>Required</sup> <a name="Received" id="cdktn.Testing.toBeValidTerraform.parameter.received" />

* *Type:* string

***

### `ToHaveDataSource` <a name="ToHaveDataSource" id="cdktn.Testing.toHaveDataSource" />

```csharp theme={null}
using Io.Cdktn;

Testing.ToHaveDataSource(string Received, string ResourceType);
```

#### `Received`<sup>Required</sup> <a name="Received" id="cdktn.Testing.toHaveDataSource.parameter.received" />

* *Type:* string

***

#### `ResourceType`<sup>Required</sup> <a name="ResourceType" id="cdktn.Testing.toHaveDataSource.parameter.resourceType" />

* *Type:* string

***

### `ToHaveDataSourceWithProperties` <a name="ToHaveDataSourceWithProperties" id="cdktn.Testing.toHaveDataSourceWithProperties" />

```csharp theme={null}
using Io.Cdktn;

Testing.ToHaveDataSourceWithProperties(string Received, string ResourceType, System.Collections.Generic.IDictionary<string, object> Properties = null);
```

#### `Received`<sup>Required</sup> <a name="Received" id="cdktn.Testing.toHaveDataSourceWithProperties.parameter.received" />

* *Type:* string

***

#### `ResourceType`<sup>Required</sup> <a name="ResourceType" id="cdktn.Testing.toHaveDataSourceWithProperties.parameter.resourceType" />

* *Type:* string

***

#### `Properties`<sup>Optional</sup> <a name="Properties" id="cdktn.Testing.toHaveDataSourceWithProperties.parameter.properties" />

* *Type:* System.Collections.Generic.IDictionary\< string, object >

***

### `ToHaveProvider` <a name="ToHaveProvider" id="cdktn.Testing.toHaveProvider" />

```csharp theme={null}
using Io.Cdktn;

Testing.ToHaveProvider(string Received, string ResourceType);
```

#### `Received`<sup>Required</sup> <a name="Received" id="cdktn.Testing.toHaveProvider.parameter.received" />

* *Type:* string

***

#### `ResourceType`<sup>Required</sup> <a name="ResourceType" id="cdktn.Testing.toHaveProvider.parameter.resourceType" />

* *Type:* string

***

### `ToHaveProviderWithProperties` <a name="ToHaveProviderWithProperties" id="cdktn.Testing.toHaveProviderWithProperties" />

```csharp theme={null}
using Io.Cdktn;

Testing.ToHaveProviderWithProperties(string Received, string ResourceType, System.Collections.Generic.IDictionary<string, object> Properties = null);
```

#### `Received`<sup>Required</sup> <a name="Received" id="cdktn.Testing.toHaveProviderWithProperties.parameter.received" />

* *Type:* string

***

#### `ResourceType`<sup>Required</sup> <a name="ResourceType" id="cdktn.Testing.toHaveProviderWithProperties.parameter.resourceType" />

* *Type:* string

***

#### `Properties`<sup>Optional</sup> <a name="Properties" id="cdktn.Testing.toHaveProviderWithProperties.parameter.properties" />

* *Type:* System.Collections.Generic.IDictionary\< string, object >

***

### `ToHaveResource` <a name="ToHaveResource" id="cdktn.Testing.toHaveResource" />

```csharp theme={null}
using Io.Cdktn;

Testing.ToHaveResource(string Received, string ResourceType);
```

#### `Received`<sup>Required</sup> <a name="Received" id="cdktn.Testing.toHaveResource.parameter.received" />

* *Type:* string

***

#### `ResourceType`<sup>Required</sup> <a name="ResourceType" id="cdktn.Testing.toHaveResource.parameter.resourceType" />

* *Type:* string

***

### `ToHaveResourceWithProperties` <a name="ToHaveResourceWithProperties" id="cdktn.Testing.toHaveResourceWithProperties" />

```csharp theme={null}
using Io.Cdktn;

Testing.ToHaveResourceWithProperties(string Received, string ResourceType, System.Collections.Generic.IDictionary<string, object> Properties = null);
```

#### `Received`<sup>Required</sup> <a name="Received" id="cdktn.Testing.toHaveResourceWithProperties.parameter.received" />

* *Type:* string

***

#### `ResourceType`<sup>Required</sup> <a name="ResourceType" id="cdktn.Testing.toHaveResourceWithProperties.parameter.resourceType" />

* *Type:* string

***

#### `Properties`<sup>Optional</sup> <a name="Properties" id="cdktn.Testing.toHaveResourceWithProperties.parameter.properties" />

* *Type:* System.Collections.Generic.IDictionary\< string, object >

***
