< Summary - Syki

Information
Class: Syki.Front.Features.Student.CreateClassActivityWork.CreateClassActivityWorkDialog
Assembly: Front
File(s): /home/runner/work/syki/syki/Front/Features/Student/CreateClassActivityWork/CreateClassActivityWorkDialog.razor
Tag: 4_16869239191
Line coverage
0%
Covered lines: 0
Uncovered lines: 20
Coverable lines: 20
Total lines: 65
Line coverage: 0%
Branch coverage
0%
Covered branches: 0
Total branches: 6
Branch coverage: 0%
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
get_MudDialog()100%210%
get_ActivityId()100%210%
Submit()0%4260%
Cancel()100%210%

File(s)

/home/runner/work/syki/syki/Front/Features/Student/CreateClassActivityWork/CreateClassActivityWorkDialog.razor

#LineLine coverage
 1@namespace Syki.Front.Features.Student.CreateClassActivityWork
 2
 3<MudDialog Class="pb-2" DefaultFocus="DefaultFocus.None">
 4    <TitleContent>
 5        <SykiDialogTitle Icon="@Icons.Material.Filled.BookmarkAdded" Text="Entregar" />
 6    </TitleContent>
 7    <DialogContent>
 8        <MudGrid Spacing="3">
 9            <MudItem xs="12" sm="12" md="12" lg="12">
 10                <MudText>Adicione o link para o documento que contém a entrega da atividade.</MudText>
 11            </MudItem>
 12        </MudGrid>
 013        <MudForm @ref="@_form" Class="pt-4">
 014            <MudGrid Spacing="2">
 015                <MudItem xs="12" sm="12" md="12" lg="12">
 016                    <SykiTextField Label="Link" @bind-Value="@_link" AutoFocus="true" />
 017                </MudItem>
 018            </MudGrid>
 19        </MudForm>
 20    </DialogContent>
 21    <DialogActions>
 22        <DialogCancelButton OnClick="@Cancel" />
 23        <SykiProgressCircular Loading="@_loading" />
 24        <DialogSaveButton OnClick="@Submit" />
 25    </DialogActions>
 26</MudDialog>
 27
 28@inject ISnackbar Snackbar
 29@inject CreateClassActivityWorkClient CreateClassActivityWorkClient
 30
 31@code
 32{
 33    [CascadingParameter]
 034    IMudDialogInstance MudDialog { get; set; }
 35
 36    [Parameter]
 037    public Guid ActivityId { get; set; }
 38
 39    private MudForm _form;
 40    private bool _loading;
 41    private string _link;
 42
 43    private async Task Submit()
 44    {
 045        if (_loading) return;
 46
 047        await _form.Validate();
 048        if (!_form.IsValid) return;
 49
 050        _loading = true;
 051        var result = await CreateClassActivityWorkClient.Create(ActivityId, _link);
 052        if (result.IsSuccess)
 53        {
 054            MudDialog.Close(DialogResult.Ok(true));
 055            Snackbar.Add("Entrega realizada com sucesso!", Severity.Success);
 56        }
 57        else
 58        {
 059            Snackbar.Add(result.Error.Message, Severity.Error);
 60        }
 061        _loading = false;
 062    }
 63
 064    private void Cancel() => MudDialog.Cancel();
 65}