< Summary

Information
Class: Utility.Components.TimeConverter.TimeConverter
Assembly: Utility
File(s): /home/runner/work/Utility-Blazor/Utility-Blazor/src/Utility/Components/TimeConverter/TimeConverter.razor
Tag: 231_14069517506
Line coverage
0%
Covered lines: 0
Uncovered lines: 16
Coverable lines: 16
Total lines: 76
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%
Convert()100%210%
Clear()100%210%
Copy()100%210%
ConvertTime(...)100%210%

File(s)

/home/runner/work/Utility-Blazor/Utility-Blazor/src/Utility/Components/TimeConverter/TimeConverter.razor

#LineLine coverage
 1@using System.Text
 2@inject IJSRuntime JSRuntime
 3
 4<div class="container">
 5
 6    <div class="row">
 7        <div class="col">
 8            <h2>⏱️ Time Converter</h2>
 9        </div>
 10    </div>
 11
 12    <div class="row">
 13        <div class="col">
 14            <div class="input-group">
 15                <div class="input-group-prepend">
 16                    <span class="input-group-text">Seconds:</span>
 17                </div>
 18                <input type="number" id="input" class="form-control" @bind="Input" placeholder="60" />
 19                <span class="input-group-btn">
 20                    <button id="btnClear" name="btnBinaryClear" class="btn btn-danger float-right" @onclick="Clear"><i c
 21                </span>
 22            </div>
 23        </div>
 24    </div>
 25
 26    <div class="row">
 27        <div class="col">
 28            <button id="btnConvert" name="btnConvert" class="btn btn-success float-right" @onclick="Convert">Convert</bu
 29        </div>
 30    </div>
 31
 32    <div class="row">
 33        <div class="col">
 34            <div class="input-group">
 35                <div class="input-group-prepend">
 36                    <span class="input-group-text">hh:mm:ss:fff</span>
 37                </div>
 38                <input id="output" class="form-control" @bind="Output" placeholder="hh:mm:ss:fff" readonly="readonly" />
 39                <span class="input-group-btn">
 40                    <button id="btnCopy" name="btnCopy" class="btn btn-info float-right" @onclick="Copy"><i class="far f
 41                </span>
 42            </div>
 43
 44        </div>
 45    </div>
 46
 47</div>
 48
 49@code {
 050    long Input = 60;
 051    string Output = string.Empty;
 52
 53    void Convert()
 054    {
 055        var data = ConvertTime(Input);
 056        Output = data;
 057    }
 58
 59    private void Clear()
 060    {
 061        Input = 0;
 062    }
 63
 64    async Task Copy()
 065    {
 066        await JSRuntime.InvokeVoidAsync("navigator.clipboard.writeText", Output);
 067    }
 68
 69    #region Convert
 70    static string ConvertTime(long seconds)
 071    {
 072        TimeSpan time = TimeSpan.FromSeconds(seconds);
 073        return time.ToString(@"hh\:mm\:ss\:fff");
 074    }
 75    #endregion Convert
 76}