Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/npm/cli.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/libnpmsearch/test/index.js')
-rw-r--r--node_modules/libnpmsearch/test/index.js36
1 files changed, 34 insertions, 2 deletions
diff --git a/node_modules/libnpmsearch/test/index.js b/node_modules/libnpmsearch/test/index.js
index f926af6da..bec5c70e4 100644
--- a/node_modules/libnpmsearch/test/index.js
+++ b/node_modules/libnpmsearch/test/index.js
@@ -6,7 +6,7 @@ const qs = require('querystring')
const test = require('tap').test
const tnock = require('./util/tnock.js')
-const OPTS = figgyPudding({registry: {}})({
+const OPTS = figgyPudding({ registry: {} })({
registry: 'https://mock.reg/'
})
@@ -17,6 +17,7 @@ test('basic test', t => {
const query = qs.stringify({
text: 'oo',
size: 20,
+ from: 0,
quality: 0.65,
popularity: 0.98,
maintenance: 0.5
@@ -42,6 +43,7 @@ test('search.stream', t => {
const query = qs.stringify({
text: 'oo',
size: 20,
+ from: 0,
quality: 0.65,
popularity: 0.98,
maintenance: 0.5
@@ -69,6 +71,7 @@ test('accepts a limit option', t => {
const query = qs.stringify({
text: 'oo',
size: 3,
+ from: 0,
quality: 0.65,
popularity: 0.98,
maintenance: 0.5
@@ -81,7 +84,29 @@ test('accepts a limit option', t => {
{ package: { name: 'cool', version: '1.0.0' } }
]
})
- return search('oo', OPTS.concat({limit: 3})).then(results => {
+ return search('oo', OPTS.concat({ limit: 3 })).then(results => {
+ t.equal(results.length, 4, 'returns more results if endpoint does so')
+ })
+})
+
+test('accepts a from option', t => {
+ const query = qs.stringify({
+ text: 'oo',
+ size: 20,
+ from: 1,
+ quality: 0.65,
+ popularity: 0.98,
+ maintenance: 0.5
+ })
+ tnock(t, REG).get(`/-/v1/search?${query}`).once().reply(200, {
+ objects: [
+ { package: { name: 'cool', version: '1.0.0' } },
+ { package: { name: 'cool', version: '1.1.0' } },
+ { package: { name: 'cool', version: '1.0.0' } },
+ { package: { name: 'cool', version: '1.0.0' } }
+ ]
+ })
+ return search('oo', OPTS.concat({ from: 1 })).then(results => {
t.equal(results.length, 4, 'returns more results if endpoint does so')
})
})
@@ -90,6 +115,7 @@ test('accepts quality/mainenance/popularity options', t => {
const query = qs.stringify({
text: 'oo',
size: 20,
+ from: 0,
quality: 1,
popularity: 2,
maintenance: 3
@@ -115,6 +141,7 @@ test('sortBy: quality', t => {
const query = qs.stringify({
text: 'oo',
size: 20,
+ from: 0,
quality: 1,
popularity: 0,
maintenance: 0
@@ -138,6 +165,7 @@ test('sortBy: popularity', t => {
const query = qs.stringify({
text: 'oo',
size: 20,
+ from: 0,
quality: 0,
popularity: 1,
maintenance: 0
@@ -161,6 +189,7 @@ test('sortBy: maintenance', t => {
const query = qs.stringify({
text: 'oo',
size: 20,
+ from: 0,
quality: 0,
popularity: 0,
maintenance: 1
@@ -184,6 +213,7 @@ test('sortBy: optimal', t => {
const query = qs.stringify({
text: 'oo',
size: 20,
+ from: 0,
quality: 0.65,
popularity: 0.98,
maintenance: 0.5
@@ -207,6 +237,7 @@ test('detailed format', t => {
const query = qs.stringify({
text: 'oo',
size: 20,
+ from: 0,
quality: 0,
popularity: 0,
maintenance: 1
@@ -252,6 +283,7 @@ test('space-separates and URI-encodes multiple search params', t => {
const query = qs.stringify({
text: 'foo bar:baz quux?=',
size: 1,
+ from: 0,
quality: 1,
popularity: 2,
maintenance: 3