New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@kev_nz/async-tools

Package Overview
Dependencies
Maintainers
1
Versions
11
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@kev_nz/async-tools - npm Package Compare versions

Comparing version

to
1.0.2

14

package.json
{
"name": "@kev_nz/async-tools",
"version": "1.0.1",
"description": "Async tools",
"version": "1.0.2",
"description": "Async tools - a collection of utility functions for working with async/await code.",
"main": "src/index.js",
"files": [
"/src"
],
"scripts": {
"test": "jest"
"test": "jest",
"cover": "jest --coverage",
"coverage": "jest --coverage --coverageReporters=text-lcov | coveralls",
"predocs": " jest --coverage --coverageDirectory=./dist/coverage ",
"docs": "publisher"
},

@@ -34,2 +41,3 @@ "repository": {

"@kev_nz/publisher": "^3.0.1",
"coveralls": "^3.0.3",
"eslint": "^5.16.0",

@@ -36,0 +44,0 @@ "jest": "^24.6.0"

# Async Tools
[![npm version](https://badge.fury.io/js/%40kev_nz%2Fasync-tools.svg)](https://badge.fury.io/js/%40kev_nz%2Fasync-tools) ![Build Status](https://img.shields.io/circleci/project/github/Kevnz/async-tools/master.svg) [![Coverage Status](https://coveralls.io/repos/github/Kevnz/async-tools/badge.svg?branch=master)](https://coveralls.io/github/Kevnz/async-tools?branch=master)
This is a collection of utility functions for working with async/await code.

@@ -132,1 +134,6 @@

```
### Test Coverage
* [Coveralls](https://coveralls.io/github/Kevnz/async-tools?branch=master)
* [Coverage Results](https://kevinisom.info/async-tools/coverage)

@@ -22,3 +22,3 @@ const mapper = require('../mapper')

const end = Date.now()
expect(end - start).toBeLessThan(20)
expect(end - start).toBeLessThan(50)
expect(chain[0]).toBe(100)

@@ -69,3 +69,5 @@ expect(chain[1]).toBe(200)

if (executing > 3) {
throw new Error(`Currently ${executing} functions running`)
return Promise.reject(
new Error(`Currently ${executing} functions running`)
)
}

@@ -83,2 +85,20 @@ executing++

})
it('should throw an error', async () => {
const items = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
const limiter = async (item, index) => {
if (index > 3) {
return Promise.reject(new Error(`Over 3`))
}
await delay(10)
return item * 100
}
expect(mapper(items, limiter, 1)).rejects.toThrow('Over 3')
try {
await mapper(items, limiter, 1)
expect(true).toBe(false)
} catch (err) {
expect(err.message).toBe('Over 3')
}
})
})

@@ -31,14 +31,16 @@ const mapper = (iterable, mappingFunction, concurrency = Infinity) =>

return Promise.resolve(nextItem.value)
.then(element => mappingFunction(element, i))
.then(
value => {
results[i] = value
resolvingCount--
return next()
},
error => {
.then(async element => {
try {
return await mappingFunction(element, i)
} catch (err) {
isRejected = true
return reject(error)
return reject(err)
}
)
})
.then(value => {
results[i] = value
resolvingCount--
return next()
})
}

@@ -45,0 +47,0 @@