### Configure AddInId for RevitTest Addin via AssemblyMetadata
Source: https://github.com/ricaun-io/ricaun.revittest/wiki/Configurations
Set a unique AddInId using AssemblyMetadata to ensure the RevitTest application loads correctly within Revit. Support for version 1.11.0+. Note: Duplicate Guids can cause Revit to break.
```csharp
// The AddInId need to be unique inside Revit, two addin with the same Guid makes Revit to break.
[assembly: AssemblyMetadata("ricaun.RevitTest.Application.AddInId", "11111111-2222-3333-4444-555555555555")]
```
--------------------------------
### Configure NUnit Settings in .csproj for Release
Source: https://github.com/ricaun-io/ricaun.revittest/wiki/Configurations
Configure NUnit settings like 'Open' and 'Close' within the .csproj file for release builds using AssemblyMetadata attributes.
```xml
<_Parameter1>NUnit.Open
<_Parameter2>true
<_Parameter1>NUnit.Close
<_Parameter2>true
```
--------------------------------
### Configure NUnit Settings via .runsettings File
Source: https://github.com/ricaun-io/ricaun.revittest/wiki/Configurations
Define NUnit configuration parameters such as Version, Language, Open, Close, Verbosity, Application, and Metadata within a .runsettings XML file.
```xml
2024
pt
true
true
1
false
```
--------------------------------
### Configure .runsettings File Path in .csproj
Source: https://github.com/ricaun-io/ricaun.revittest/wiki/Configurations
Specify the path to the .runsettings file within the .csproj file to enable its use for test configuration.
```xml
$(MSBuildProjectDirectory)\.runsettings
PreserveNewest
```
--------------------------------
### Configure Async Task Timeout via AssemblyMetadata
Source: https://github.com/ricaun-io/ricaun.revittest/wiki/Configurations
Specify the timeout in minutes for asynchronous 'Tasks' tests using AssemblyMetadata.
```csharp
[assembly: AssemblyMetadata("ricaun.RevitTest.Application.Tasks.Timeout", "1.0")]
```
--------------------------------
### ricaun.RevitTest Workflow Diagram
Source: https://github.com/ricaun-io/ricaun.revittest/wiki/Home
Visual representation of the ricaun.RevitTest framework's execution flow, showing the interaction between TestAdapter, Console, Application, and Revit.
```mermaid
---
title: ricaun.RevitTest
---
flowchart LR
dll(dll)
TestAdapter[TestAdapter]
Console[Console]
Application[Application]
dll--dotnet test-->TestAdapter
TestAdapter--Start-->Console
Console--Run Tests-->Application
Console-.Open/Close.-Revit
subgraph Revit [Revit]
Application
end
```
--------------------------------
### Configure NUnit Settings via AssemblyMetadata
Source: https://github.com/ricaun-io/ricaun.revittest/wiki/Configurations
Use AssemblyMetadata attributes in C# to configure NUnit settings like Revit version, language, and process behavior for tests.
```csharp
[assembly: AssemblyMetadata("NUnit.Version", "2024")]
[assembly: AssemblyMetadata("NUnit.Language", "ENU")]
[assembly: AssemblyMetadata("NUnit.Open", "true")]
[assembly: AssemblyMetadata("NUnit.Close", "true")]
[assembly: AssemblyMetadata("NUnit.Verbosity", "1")]
[assembly: AssemblyMetadata("NUnit.Application", "")]
```
--------------------------------
### Configure Async Task Name via AssemblyMetadata
Source: https://github.com/ricaun-io/ricaun.revittest/wiki/Configurations
Set a custom name for asynchronous tasks using AssemblyMetadata to ensure tests run outside the RevitAPI context and can receive Revit Idling events.
```csharp
[assembly: AssemblyMetadata("ricaun.RevitTest.Application.Tasks.Name", "RevitTask")]
```
--------------------------------
### Configure VendorId for RevitTest Addin via AssemblyMetadata
Source: https://github.com/ricaun-io/ricaun.revittest/wiki/Configurations
Set a custom VendorId using AssemblyMetadata to force the RevitTest application within Revit to load using the specified VendorId. Support for version 1.11.0+.
```csharp
[assembly: AssemblyMetadata("ricaun.RevitTest.Application.VendorId", "VendorId")]
```
=== COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.