< Summary

Information
Class: Utility.Components.HTMLEncodeDecode.HTMLEncodeDecode
Assembly: Utility
File(s): /home/runner/work/Utility-Blazor/Utility-Blazor/src/Utility/Components/HTMLEncodeDecode/HTMLEncodeDecode.razor
Tag: 231_14069517506
Line coverage
64%
Covered lines: 11
Uncovered lines: 6
Coverable lines: 17
Total lines: 75
Line coverage: 64.7%
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_Decoded()100%11100%
get_Encoded()100%11100%
OnInitializedAsync()100%11100%
Encode()100%11100%
Decode()100%210%
Copy()100%210%

File(s)

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

#LineLine coverage
 1@using System.IO;
 2@using System.Net;
 3
 4@inject IJSRuntime JSRuntime
 5
 6<div class="container">
 7
 8    <div class="row">
 9        <div class="col">
 10            <h2>HTML Encode / Decode</h2>
 11        </div>
 12    </div>
 13
 14    <div class="row">
 15        <div class="col">
 16            <textarea id="decoded" class="form-control" rows="5" @bind="Decoded"></textarea>
 17        </div>
 18    </div>
 19    <div class="row">
 20        <div class="col">
 21            <button id="btnEncode" name="btnEncode" class="btn btn-success float-right" @onclick="Encode">Encode</button
 22       </div>
 23    </div>
 24    <div class="row">
 25        <div class="col">
 26            <div class="input-group">
 27                <textarea id="encoded" class="form-control" rows="5" @bind="Encoded"></textarea>
 28                <span class="input-group-btn">
 29                    <button id="btnCopySQLBuilder" name="btnCopySQLBuilder" class="btn btn-info" @onclick="Copy"><i clas
 30                </span>
 31            </div>
 32        </div>
 33    </div>
 34    <div class="row">
 35        <div class="col">
 36            <button id="btnDecode" name="btnDecode" class="btn btn-success float-right" @onclick="Decode">Decode</button
 37        </div>
 38    </div>
 39    <div class="row">
 40        <div class="col">
 41            <div>@((MarkupString)Encoded)</div>
 42        </div>
 43    </div>
 44</div>
 45
 46@code {
 47    [Parameter]
 748    public string Decoded { get; set; }
 49
 50    [Parameter]
 1051    public string Encoded { get; set; }
 52
 53    protected override async Task OnInitializedAsync()
 154    {
 155        Decoded = "&lt;html&gt;&lt;body&gt;&lt;h1&gt;Hello&lt;/h1&gt;&lt;/body&gt;&lt;/html&gt;";
 156        Encoded = string.Empty;
 157    }
 58
 59    private void Encode()
 160    {
 161        var writer = new StringWriter();
 162        WebUtility.HtmlDecode(Decoded, writer);
 163        Encoded = writer.ToString();
 164    }
 65
 66    private void Decode()
 067    {
 068        Decoded = WebUtility.HtmlEncode(Encoded);
 069    }
 70
 71    async Task Copy()
 072    {
 073        await JSRuntime.InvokeVoidAsync("navigator.clipboard.writeText", Encoded);
 074    }
 75}