# cypress-downloadfile-alt-fr
 
Ceci est une **Command** pour **Cypress**, permettant de télécharger des fichiers (.pdf, .jpg,...) depuis une URL.

Cette version alternative supprime toutes utilisations des cookies (*cy.getCookies()*,...), et les remplace par celle de window (*cy.window()*). Cette dernière n'entrainant plus d'éventuels *failed* dans l'exécution des scripts de test.

Ce repo Github est un fork du repo original **[cypress-download](https://github.com/Xvier/cypress-downloadfile)**. 

## Installation

Intaller le module.

```shell
npm install cypress-downloadfile-alt-fr
```

Ajouter cette ligne dans le fichier `cypress/support/commands.js`.

```javascript
require('cypress-downloadfile-alt-fr/lib/downloadFileCommand')
```

Et le code suivant, dans le fichier `cypress/plugins/index.js`.

```javascript
const {downloadFile} = require('cypress-downloadfile-alt-fr/lib/addPlugin')
module.exports = (on, config) => {
  on('task', {downloadFile})
}
```

Si l’*autocompletion* ne fonctionne pas directement, vous pouvez ajouter cette ligne de code à la première ligne de votre fichier de test ex. *montest.spec.js*

```javascript
/// <reference types="cypress-downloadfile"/>
```

## Exemple pour un fichier PDF 
```javascript
cy.downloadFile('https://library.concordia.ca/help/technology/recovering_saved_files.pdf','cypress/fixtures','demo.pdf')
```

## Exemple pour un fichier image JPG 
```javascript
cy.downloadFile('https://dummyimage.com/600x400/000/fff.jpg&text=hello+world+-+600+x+400','cypress/fixtures','hello_world.jpg')
```

## Depuis la Version 1.5 (??) vous pouvez également ajouter un User-Agent. Si aucun User-Agent est passé en params, ce sera celui par défaut qui sera utilisé.
```javascript
cy.downloadFile('https://library.concordia.ca/help/technology/recovering_saved_files.pdf','cypress/fixtures','demo.pdf','MyCustomAgentName')
```

