Skip to content

Commit b482895

Browse files
committed
test: 更新 ButtonUpload 单元测试
1 parent 37a2168 commit b482895

File tree

4 files changed

+46
-42
lines changed

4 files changed

+46
-42
lines changed

src/BootstrapBlazor/Components/Upload/ButtonUpload.razor

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
<BootstrapLabel required="@Required" ShowLabelTooltip="ShowLabelTooltip" Value="@DisplayText" />
88
}
99
<div @attributes="@AdditionalAttributes" class="@ClassString" id="@Id">
10-
<Button class="@BrowserButtonClassString" IsDisabled="@CheckStatus()" Size="Size" Icon="@BrowserButtonIcon" Text="@BrowserButtonText" Color="@BrowserButtonColor">
10+
<Button class="@BrowserButtonClassString" IsDisabled="@(!CheckCanUpload())" Size="Size" Icon="@BrowserButtonIcon" Text="@BrowserButtonText" Color="@BrowserButtonColor">
1111
@ChildContent
1212
</Button>
1313
@if (ShowUploadFileList)

src/BootstrapBlazor/Components/Upload/ButtonUpload.razor.cs

Lines changed: 12 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,18 @@ public partial class ButtonUpload<TValue>
104104
[Parameter]
105105
public Func<UploadFile, Task>? OnDownload { get; set; }
106106

107+
/// <summary>
108+
/// 获得/设置 取消图标
109+
/// </summary>
110+
[Parameter]
111+
public string? CancelIcon { get; set; }
112+
113+
/// <summary>
114+
/// 获得/设置 点击取消按钮回调此方法 默认 null
115+
/// </summary>
116+
[Parameter]
117+
public Func<UploadFile, Task>? OnCancel { get; set; }
118+
107119
/// <summary>
108120
/// 获得/设置 Excel 类型文件图标
109121
/// </summary>
@@ -170,18 +182,6 @@ public partial class ButtonUpload<TValue>
170182
[Parameter]
171183
public string? FileIconFile { get; set; }
172184

173-
/// <summary>
174-
/// 获得/设置 取消图标
175-
/// </summary>
176-
[Parameter]
177-
public string? CancelIcon { get; set; }
178-
179-
/// <summary>
180-
/// 获得/设置 点击取消按钮回调此方法 默认 null
181-
/// </summary>
182-
[Parameter]
183-
public Func<UploadFile, Task>? OnCancel { get; set; }
184-
185185
[Inject]
186186
[NotNull]
187187
private IStringLocalizer<UploadBase<TValue>>? Localizer { get; set; }
@@ -208,21 +208,4 @@ protected override void OnParametersSet()
208208
BrowserButtonText ??= Localizer[nameof(BrowserButtonText)];
209209
BrowserButtonIcon ??= IconTheme.GetIconByKey(ComponentIcons.ButtonUploadBrowserButtonIcon);
210210
}
211-
212-
private bool CheckStatus()
213-
{
214-
if (IsDisabled)
215-
{
216-
return true;
217-
}
218-
219-
// 允许多上传
220-
if (IsMultiple)
221-
{
222-
return MaxFileCount.HasValue && Files.Count >= MaxFileCount;
223-
}
224-
225-
// 只允许单个上传
226-
return Files.Count > 0;
227-
}
228211
}

src/BootstrapBlazor/Components/Upload/UploadBase.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -262,7 +262,7 @@ protected List<UploadFile> GetUploadFiles()
262262
/// <returns></returns>
263263
protected bool CheckCanUpload()
264264
{
265-
if(IsDisabled)
265+
if (IsDisabled)
266266
{
267267
return false;
268268
}

test/UnitTest/Components/UploadButtonTest.cs

Lines changed: 32 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -156,6 +156,7 @@ public async Task ButtonUpload_Validate_Ok()
156156
pb.Add(a => a.Accept, "Image");
157157
pb.Add(a => a.Value, foo.Name);
158158
pb.Add(a => a.ValueExpression, foo.GenerateValueExpression());
159+
pb.Add(a => a.ShowUploadFileList, true);
159160
});
160161
pb.Add(a => a.OnValidSubmit, context =>
161162
{
@@ -311,6 +312,24 @@ public void ButtonUpload_OnGetFileFormat_Ok()
311312
{
312313
var cut = Context.RenderComponent<ButtonUpload<string>>(pb =>
313314
{
315+
pb.Add(a => a.LoadingIcon, "fa-loading");
316+
pb.Add(a => a.DeleteIcon, "fa-delte");
317+
pb.Add(a => a.CancelIcon, "fa-cancel");
318+
pb.Add(a => a.DownloadIcon, "fa-download");
319+
pb.Add(a => a.InvalidStatusIcon, "fa-invalid");
320+
pb.Add(a => a.ValidStatusIcon, "fa-valid");
321+
322+
pb.Add(a => a.FileIconArchive, "fa-file-text");
323+
pb.Add(a => a.FileIconExcel, "fa-file-excel");
324+
pb.Add(a => a.FileIconFile, "fa-file");
325+
pb.Add(a => a.FileIconDocx, "fa-file-word");
326+
pb.Add(a => a.FileIconPPT, "fa-file-powerpoint");
327+
pb.Add(a => a.FileIconAudio, "fa-file-audio");
328+
pb.Add(a => a.FileIconVideo, "fa-file-video");
329+
pb.Add(a => a.FileIconCode, "fa-file-code");
330+
pb.Add(a => a.FileIconPdf, "fa-file-pdf");
331+
pb.Add(a => a.FileIconImage, "fa-file-image");
332+
pb.Add(a => a.FileIconZip, "fa-file-archive");
314333
pb.Add(a => a.DefaultFileList,
315334
[
316335
new() { FileName = "1.csv" },
@@ -343,18 +362,20 @@ public void ButtonUpload_OnGetFileFormat_Ok()
343362
new() { FileName = "1.test" },
344363
new() { FileName = "1" }
345364
]);
365+
346366
});
347-
cut.Contains("fa-regular fa-file-excel");
348-
cut.Contains("fa-regular fa-file-word");
349-
cut.Contains("fa-regular fa-file-powerpoint");
350-
cut.Contains("fa-regular fa-file-audio");
351-
cut.Contains("fa-regular fa-file-video");
352-
cut.Contains("fa-regular fa-file-code");
353-
cut.Contains("fa-regular fa-file-pdf");
354-
cut.Contains("fa-regular fa-file-archive");
355-
cut.Contains("fa-regular fa-file-text");
356-
cut.Contains("fa-regular fa-file-image");
357-
cut.Contains("fa-regular fa-file");
367+
cut.Contains("fa-file-excel");
368+
cut.Contains("fa-file-word");
369+
cut.Contains("fa-file-powerpoint");
370+
cut.Contains("fa-file-audio");
371+
cut.Contains("fa-file-video");
372+
cut.Contains("fa-file-code");
373+
cut.Contains("fa-file-pdf");
374+
cut.Contains("fa-file-archive");
375+
cut.Contains("fa-file-text");
376+
cut.Contains("fa-file-image");
377+
cut.Contains("fa-file-archive");
378+
cut.Contains("fa-file");
358379

359380
cut.SetParametersAndRender(pb =>
360381
{

0 commit comments

Comments
 (0)