< Summary

Information
Class: MyNet.UI.Dialogs.MessageBox.MessageBoxBuilder
Assembly: MyNet.UI
File(s): https://raw.githubusercontent.com/sandre58/MyNet/85372080fe102cd9ee155ceab49ae000e7f66103/src/MyNet.UI/Dialogs/MessageBox/MessageBoxBuilder.cs
Tag: 323_28699572109
Line coverage
0%
Covered lines: 0
Uncovered lines: 12
Coverable lines: 12
Total lines: 58
Line coverage: 0%
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
.ctor(...)100%210%
WithMessage(...)100%210%
WithTitle(...)100%210%
WithSeverity(...)100%210%
WithButtons(...)100%210%
WithDefaultResult(...)100%210%
ShowAsync(...)100%210%

File(s)

https://raw.githubusercontent.com/sandre58/MyNet/85372080fe102cd9ee155ceab49ae000e7f66103/src/MyNet.UI/Dialogs/MessageBox/MessageBoxBuilder.cs

#LineLine coverage
 1// -----------------------------------------------------------------------
 2// <copyright file="MessageBoxBuilder.cs" company="Stéphane ANDRE">
 3// Copyright (c) Stéphane ANDRE. All rights reserved.
 4// </copyright>
 5// -----------------------------------------------------------------------
 6
 7using System.Threading;
 8using System.Threading.Tasks;
 9
 10namespace MyNet.UI.Dialogs.MessageBox;
 11
 12/// <summary>
 13/// Builder for constructing and displaying message boxes with customizable options.
 14/// </summary>
 15/// <param name="service">The message box service used to display the message box.</param>
 16public sealed class MessageBoxBuilder(IMessageBoxService service) : IMessageBoxBuilder
 17{
 018    private readonly MessageBoxOptions _options = new();
 19
 20    /// <inheritdoc />
 21    public IMessageBoxBuilder WithMessage(string message)
 22    {
 023        _options.Message = message;
 024        return this;
 25    }
 26
 27    /// <inheritdoc />
 28    public IMessageBoxBuilder WithTitle(string title)
 29    {
 030        _options.Title = title;
 031        return this;
 32    }
 33
 34    /// <inheritdoc />
 35    public IMessageBoxBuilder WithSeverity(MessageSeverity severity)
 36    {
 037        _options.Severity = severity;
 038        return this;
 39    }
 40
 41    /// <inheritdoc />
 42    public IMessageBoxBuilder WithButtons(MessageBoxResultOption buttons)
 43    {
 044        _options.Buttons = buttons;
 045        return this;
 46    }
 47
 48    /// <inheritdoc />
 49    public IMessageBoxBuilder WithDefaultResult(MessageBoxResult result)
 50    {
 051        _options.DefaultResult = result;
 052        return this;
 53    }
 54
 55    /// <inheritdoc />
 056    public Task<MessageBoxResult> ShowAsync(CancellationToken cancellationToken = default) => service.ShowAsync(_options
 57}
 58