Quantcast
Channel: Ember.JS - Latest topics
Viewing all articles
Browse latest Browse all 4829

Unit test for input type = file

$
0
0

@GregWang wrote:

i have a component, it has a form control --> input[type=file]. Now, i need write unit test for the action, the action method in component is:

addFile(e) {
  set(this, 'file', e.target.files[0]);
  this._checkFileSize(e.target.files[0]);
  const fileSizeAvailable = get(this, 'fileSizeAvailable');

  if (!fileSizeAvailable) {
    set(this, 'ifEditing', false);
    set(this, 'errorMessage', get(this, 'i18n').t('individual.new.attachFile_file_size_error'));
    return;
  }
  this._checkFileType(e.target.files[0]);
  const fileTypeAvailable = get(this, 'fileTypeAvailable');

  if (!fileTypeAvailable) {
    set(this, 'ifEditing', false);
    set(this, 'errorMessage', get(this, 'i18n').t('individual.new.attachFile_file_type_error'));
    return;
  }
  set(this, 'errorMessage', null);
  set(this, 'attachFileData.fileName', e.target.files[0].name);
}

the action ‘addFile’ is trigger by ‘change’ event.

testing framework which i used is ‘ember-mocha’.

Does anybody has the experience for it?

the testing code that i have written down is:

describe(‘Unit | Component | attachfile organization’, () => { setupComponentTest(‘attachfile-organization’, { needs: [], unit: true }); it(‘should add the file meta data if user upload a file’, function () { const component = this.subject({ file: {}, fileSizeAvailable: true, fileTypeAvailable: true });

component.send('addFile', {
  target: {
    files: [
      {
        lastModified: 1500514945000,
        lastModifiedDate: 'Thu Jul 20 2017 09:42:25 GMT+0800 (CST)',
        name: 'hahaa.docx',
        size: 223678
      }
    ]
  }
});
expect(component.get('file')).to.be.ok;

});});

Posts: 5

Participants: 2

Read full topic


Viewing all articles
Browse latest Browse all 4829

Trending Articles