Skip to content

Commit 8ffb322

Browse files
committed
updated unit tests
1 parent a267665 commit 8ffb322

File tree

2 files changed

+22
-1
lines changed

2 files changed

+22
-1
lines changed

src/file-uploader/file-uploader.component.spec.ts

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -120,5 +120,26 @@ describe("FileUploader", () => {
120120

121121
expect(element.nativeElement.querySelector(".bx--file__state-container .bx--file--invalid")).toBeTruthy();
122122
});
123+
124+
it("should correctly update this.files when onFilesAdded is called", () => {
125+
fixture = TestBed.createComponent(FileUploader);
126+
wrapper = fixture.componentInstance;
127+
fixture.detectChanges();
128+
129+
const fileAlreadyAdded = new File([""], "test-filename-added", {type: "text/html"});
130+
const currentFiles = new Set().add(wrapper.createFileItem(fileAlreadyAdded));
131+
wrapper.files = currentFiles;
132+
fixture.detectChanges();
133+
expect(wrapper.value).toBe(currentFiles);
134+
135+
const dataTransfer = new DataTransfer();
136+
const fileToAdd = new File(["test file"], "test-filename", {type: "text/html"});
137+
dataTransfer.items.add(fileToAdd);
138+
wrapper.fileInput.nativeElement.files = dataTransfer.files;
139+
fixture.detectChanges();
140+
wrapper.onFilesAdded();
141+
const filesArray: FileItem[] = Array.from(wrapper.files);
142+
expect(!!filesArray.find((fileItem: FileItem) => fileItem.file.name === fileToAdd.name)).toBe(true);
143+
});
123144
});
124145

src/file-uploader/file-uploader.component.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -222,7 +222,7 @@ export class FileUploader implements ControlValueAccessor {
222222
}
223223

224224
this.value = newFiles;
225-
this.filesChange.emit(this.files);
225+
this.filesChange.emit(newFiles);
226226
}
227227

228228
onDragOver(event) {

0 commit comments

Comments
 (0)