< Summary

Information
Class: Elsa.Dsl.ElsaScript.Ast.WorkflowNode
Assembly: Elsa.Dsl.ElsaScript
File(s): /home/runner/work/elsa-core/elsa-core/src/modules/Elsa.Dsl.ElsaScript/Ast/WorkflowNode.cs
Line coverage
100%
Covered lines: 4
Uncovered lines: 0
Coverable lines: 4
Total lines: 29
Line coverage: 100%
Branch coverage
N/A
Covered branches: 0
Total branches: 0
Branch coverage: N/A
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
get_Id()100%11100%
get_Metadata()100%11100%
get_UseStatements()100%11100%
get_Body()100%11100%

File(s)

/home/runner/work/elsa-core/elsa-core/src/modules/Elsa.Dsl.ElsaScript/Ast/WorkflowNode.cs

#LineLine coverage
 1namespace Elsa.Dsl.ElsaScript.Ast;
 2
 3/// <summary>
 4/// Represents a workflow definition in ElsaScript.
 5/// </summary>
 6public class WorkflowNode : AstNode
 7{
 8    /// <summary>
 9    /// The workflow identifier used in the DSL (the string after "workflow" keyword).
 10    /// This also serves as the default DefinitionId if not explicitly specified in metadata.
 11    /// </summary>
 11312    public string Id { get; set; } = string.Empty;
 13
 14    /// <summary>
 15    /// Workflow metadata properties (DisplayName, Description, DefinitionId, Version, etc.)
 16    /// These are specified in the optional parenthesized argument list after the workflow id.
 17    /// </summary>
 16018    public Dictionary<string, object> Metadata { get; set; } = new();
 19
 20    /// <summary>
 21    /// The use statements (imports and expression language settings) at workflow scope.
 22    /// </summary>
 10123    public List<UseNode> UseStatements { get; set; } = [];
 24
 25    /// <summary>
 26    /// The body of the workflow (a sequence of statements).
 27    /// </summary>
 11828    public List<StatementNode> Body { get; set; } = [];
 29}