8000 Auto-generated commit · stdlib-js/utils-map-keys@e662b73 · GitHub
[go: up one dir, main page]

Skip to content

Commit e662b73

Browse files
committed
Auto-generated commit
1 parent 387af3a commit e662b73

File tree

4 files changed

+16
-265
lines changed

4 files changed

+16
-265
lines changed

.github/.keepalive

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
2023-11-01T01:09:19.353Z

.github/workflows/publish.yml

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -182,7 +182,11 @@ jobs:
182182
fi
183183
# Trim leading and trailing whitespace:
184184
dep=$(echo "$dep" | xargs)
185-
version="^$(npm view $dep version)"
185+
version="$(npm view $dep version)"
186+
if [[ -z "$version" ]]; then
187+
continue
188+
fi
189+
version="^$version"
186190
jq -r --arg dep "$dep" --arg version "$version" '.dependencies[$dep] = $version' package.json > package.json.tmp
187191
mv package.json.tmp package.json
188192
done
@@ -192,7 +196,11 @@ jobs:
192196
fi
193197
# Trim leading and trailing whitespace:
194198
dep=$(echo "$dep" | xargs)
195-
version="^$(npm view $dep version)"
199+
version="$(npm view $dep version)"
200+
if [[ -z "$version" ]]; then
201+
continue
202+
fi
203+
version="^$version"
196204
jq -r --arg dep "$dep" --arg version "$version" '.devDependencies[$dep] = $version' package.json > package.json.tmp
197205
mv package.json.tmp package.json
198206
done

CONTRIBUTORS

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,3 +37,4 @@ Stephannie Jiménez Gacha <steff456@hotmail.com>
3737
Yernar Yergaziyev <yernar.yergaziyev@erg.kz>
3838
orimiles5 <97595296+orimiles5@users.noreply.github.com>
3939
rei2hu <reimu@reimu.ws>
40+
Robert Gislason <gztown2216@yahoo.com>

test/dist/test.js

Lines changed: 4 additions & 263 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
/**
22
* @license Apache-2.0
33
*
4-
* Copyright (c) 2018 The Stdlib Authors.
4+
* Copyright (c) 2023 The Stdlib Authors.
55
*
66
* Licensed under the Apache License, Version 2.0 (the "License");
77
* you may not use this file except in compliance with the License.
@@ -21,272 +21,13 @@
2121
// MODULES //
2222

2323
var tape = require( 'tape' );
24-
var noop = require( '@stdlib/utils-noop' );
25-
var mapKeys = require( './../../dist' );
24+
var main = require( './../../dist' );
2625

2726

2827
// TESTS //
2928

30-
tape( 'main export is a function', function test( t ) {
29+
tape( 'main export is defined', function test( t ) {
3130
t.ok( true, __filename );
32-
t.strictEqual( typeof mapKeys, 'function', 'main export is a function' );
33-
t.end();
34-
});
35-
36-
tape( 'the function throws an error if provided a source object argument which is not an object', function test( t ) {
37-
var values;
38-
var i;
39-
40-
values = [
41-
'5',
42-
5,
43-
NaN,
44-
null,
45-
void 0,
46-
true
47-
];
48-
49-
for ( i = 0; i < values.length; i++ ) {
50-
t.throws( badValue( values[i] ), TypeError, 'throws a type error when provided '+values[i] );
51-
}
52-
t.end();
53-
54-
function badValue( value ) {
55-
return function badValue() {
56-
mapKeys( value, noop );
57-
};
58-
}
59-
});
60-
61-
tape( 'the function throws an error if provided a second argument which is not a function', function test( t ) {
62-
var values;
63-
var i;
64-
65-
values = [
66-
'5',
67-
5,
68-
NaN,
69-
null,
70-
void 0,
71-
true,
72-
{},
73-
[]
74-
];
75-
76-
for ( i = 0; i < values.length; i++ ) {
77-
t.throws( badValue( values[i] ), TypeError, 'throws a type error when provided '+values[i] );
78-
}
79-
t.end();
80-
81-
function badValue( value ) {
82-
return function badValue() {
83-
mapKeys( {}, value );
84-
};
85-
}
86-
});
87-
88-
tape( 'the function maps keys from a source object to keys on a destination object', function test( t ) {
89-
var expected;
90-
var obj1;
91-
var obj2;
92-
93-
function transform( key, value ) {
94-
return key + value;
95-
}
96-
97-
obj1 = {
98-
'a': 1,
99-
'b': 2,
100-
'c': 3,
101-
'd': 4,
102-
'e': 5
103-
};
104-
105-
obj2 = mapKeys( obj1, transform );
106-
107-
expected = {
108-
'a1': 1,
109-
'b2': 2,
110-
'c3': 3,
111-
'd4': 4,
112-
'e5': 5
113-
};
114-
115-
t.deepEqual( obj2, expected, 'returns expected object' );
116-
t.end();
117-
});
118-
119-
tape( 'the function maps keys from a source object to keys on a destination object', function test( t ) {
120-
var expected;
121-
var obj1;
122-
var obj2;
123-
124-
function transform( key ) {
125-
return 'beep:' + key;
126-
}
127-
128-
obj1 = {
129-
'a': 1,
130-
'b': 2,
131-
'c': 3,
132-
'd': 4,
133-
'e': 5
134-
};
135-
136-
obj2 = mapKeys( obj1, transform );
137-
138-
expected = {
139-
'beep:a': 1,
140-
'beep:b': 2,
141-
'beep:c': 3,
142-
'beep:d': 4,
143-
'beep:e': 5
144-
};
145-
146-
t.deepEqual( obj2, expected, 'returns expected object' );
147-
t.end();
148-
});
149-
150-
tape( 'the function ignores inherited properties', function test( t ) {
151-
var expected;
152-
var obj1;
153-
var obj2;
154-
155-
function transform( key ) {
156-
if ( key === 'f' || key === 'g' ) {
157-
t.ok( false, 'returns an inherited property' );
158-
}
159-
return key;
160-
}
161-
162-
function Foo() {
163-
this.a = 1;
164-
this.b = 2;
165-
this.c = 3;
166-
this.d = 4;
167-
this.e = 5;
168-
return this;
169-
}
170-
171-
Foo.prototype.f = 6;
172-
Foo.prototype.g = 7;
173-
174-
obj1 = new Foo();
175-
176-
obj2 = mapKeys( obj1, transform );
177-
178-
expected = {
179-
'a': 1,
180-
'b': 2,
181-
'c': 3,
182-
'd': 4,
183-
'e': 5
184-
};
185-
186-
t.deepEqual( obj2, expected, 'returns expected object' );
187-
t.end();
188-
});
189-
190-
tape( 'the function accepts non-plain objects', function test( t ) {
191-
var expected;
192-
var obj1;
193-
var obj2;
194-
195-
function transform( key, value ) {
196-
return key + value;
197-
}
198-
199-
obj1 = [ 0, 1, 2, 3, 4, 5 ];
200-
201-
obj2 = mapKeys( obj1, transform );
202-
203-
expected = {
204-
'00': 0,
205-
'11': 1,
206-
'22': 2,
207-
'33': 3,
208-
'44': 4,
209-
'55': 5
210-
};
211-
212-
t.deepEqual( obj2, expected, 'returns expected object' );
213-
t.end();
214-
});
215-
216-
tape( 'the function returns a shallow copy', function test( t ) {
217-
var expected;
218-
var obj1;
219-
var obj2;
220-
221-
function transform( key ) {
222-
return key;
223-
}
224-
225-
obj1 = {
226-
'a': [ 1 ],
227-
'b': [ 2 ],
228-
'c': [ 3 ],
229-
'd': [ 4 ],
230-
'e': [ 5 ]
231-
};
232-
233-
obj2 = mapKeys( obj1, transform );
234-
235-
expected = {
236-
'a': obj1.a,
237-
'b': obj1.b,
238-
'c': obj1.c,
239-
'd': obj1.d,
240-
'e': obj1.e
241-
};
242-
243-
t.deepEqual( obj2, expected, 'returns expected object' );
244-
t.strictEqual( obj2.a, obj1.a, 'returns shallow copy' );
245-
t.strictEqual( obj2.b, obj1.b, 'returns shallow copy' );
246-
t.strictEqual( obj2.c, obj1.c, 'returns shallow copy' );
247-
t.strictEqual( obj2.d, obj1.d, 'returns shallow copy' );
248-
t.strictEqual( obj2.e, obj1.e, 'returns shallow copy' );
249-
250-
t.end();
251-
});
252-
253-
tape( 'if provided an empty object, the function returns an empty object', function test( t ) {
254-
var expected;
255-
var obj1;
256-
var obj2;
257-
258-
function transform( key, value ) {
259-
t.fail( 'should never be called' );
260-
return key + value;
261-
}
262-
263-
obj1 = {};
264-
expected = {};
265-
266-
obj2 = mapKeys( obj1, transform );
267-
268-
t.deepEqual( obj2, expected, 'returns expected object' );
269-
t.end();
270-
});
271-
272-
tape( 'the function serializes transform function return values as object keys', function test( t ) {
273-
var expected;
274-
var obj1;
275-
var obj2;
276-
277-
function transform( key, value ) {
278-
return value;
279-
}
280-
281-
obj1 = {
282-
'a': {}
283-
};
284-
expected = {
285-
'[object Object]': obj1.a
286-
};
287-
288-
obj2 = mapKeys( obj1, transform );
289-
290-
t.deepEqual( obj2, expected, 'returns expected object' );
31+
t.strictEqual( main !== void 0, true, 'main export is defined' );
29132
t.end();
29233
});

0 commit comments

Comments
 (0)
0