Skip to content

Commit

Permalink
Auto-generated commit
Browse files Browse the repository at this point in the history
  • Loading branch information
stdlib-bot committed Nov 1, 2023
1 parent d041206 commit 22a2479
Show file tree
Hide file tree
Showing 4 changed files with 15 additions and 142 deletions.
1 change: 1 addition & 0 deletions .github/.keepalive
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
2023-11-01T00:32:34.514Z
12 changes: 10 additions & 2 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -182,7 +182,11 @@ jobs:
fi
# Trim leading and trailing whitespace:
dep=$(echo "$dep" | xargs)
version="^$(npm view $dep version)"
version="$(npm view $dep version)"
if [[ -z "$version" ]]; then
continue
fi
version="^$version"
jq -r --arg dep "$dep" --arg version "$version" '.dependencies[$dep] = $version' package.json > package.json.tmp
mv package.json.tmp package.json
done
Expand All @@ -192,7 +196,11 @@ jobs:
fi
# Trim leading and trailing whitespace:
dep=$(echo "$dep" | xargs)
version="^$(npm view $dep version)"
version="$(npm view $dep version)"
if [[ -z "$version" ]]; then
continue
fi
version="^$version"
jq -r --arg dep "$dep" --arg version "$version" '.devDependencies[$dep] = $version' package.json > package.json.tmp
mv package.json.tmp package.json
done
Expand Down
1 change: 1 addition & 0 deletions CONTRIBUTORS
Original file line number Diff line number Diff line change
Expand Up @@ -37,3 +37,4 @@ Stephannie Jiménez Gacha <[email protected]>
Yernar Yergaziyev <[email protected]>
orimiles5 <[email protected]>
rei2hu <[email protected]>
Robert Gislason <[email protected]>
143 changes: 3 additions & 140 deletions test/dist/test.js
Original file line number Diff line number Diff line change
Expand Up @@ -21,150 +21,13 @@
// MODULES //

var tape = require( 'tape' );
var noop = require( '@stdlib/utils-noop' );
var forEach = require( './../../dist' );
var main = require( './../../dist' );


// TESTS //

tape( 'main export is a function', function test( t ) {
tape( 'main export is defined', function test( t ) {
t.ok( true, __filename );
t.strictEqual( typeof forEach, 'function', 'main export is a function' );
t.strictEqual( main !== void 0, true, 'main export is defined' );
t.end();
});

tape( 'if provided an empty string, the function never invokes a provided function', function test( t ) {
var out = forEach( '', fcn );
t.strictEqual( out, '', 'returns expected value' );
t.end();

function fcn() {
t.fail( 'should not be invoked' );
}
});

tape( 'the function returns a provided string', function test( t ) {
var str;
var out;

str = 'Hello, world';

out = forEach( str, noop );
t.strictEqual( out, str, 'returns expected value' );

t.end();
});

tape( 'the function invokes a provided function for each UTF-16 code unit in a provided string', function test( t ) {
var expected;
var actual;
var str;

str = 'Hello, world';
expected = [
'H',
'e',
'l',
'l',
'o',
',',
' ',
'w',
'o',
'r',
'l',
'd'
];

actual = [];
forEach( str, copy );

t.deepEqual( actual, expected, 'returns expected value' );
t.end();

function copy( value ) {
actual.push( value );
}
});

tape( 'the function invokes a provided function for each UTF-16 code unit in a provided string (Unicode)', function test( t ) {
var expected;
var actual;
var str;

str = 'Hello, world \uD834\uDD1E';
expected = [
'H',
'e',
'l',
'l',
'o',
',',
' ',
'w',
'o',
'r',
'l',
'd',
' ',
'\uD834',
'\uDD1E'
];

actual = [];
forEach( str, copy );

t.deepEqual( actual, expected, 'returns expected value' );
t.end();

function copy( value ) {
actual.push( value );
}
});

tape( 'the function invokes a provided function for each UTF-16 code unit in a provided string (emoji)', function test( t ) {
var expected;
var actual;
var str;

str = '🌷🍕👉🏿';
expected = [
'\uD83C',
'\uDF37',
'\uD83C',
'\uDF55',
'\uD83D',
'\uDC49',
'\uD83C',
'\uDFFF'
];

actual = [];
forEach( str, copy );

t.deepEqual( actual, expected, 'returns expected value' );
t.end();

function copy( value ) {
actual.push( value );
}
});

tape( 'the function supports providing an execution context', function test( t ) {
var ctx;
var str;

str = 'Hello, world';
ctx = {
'count': 0
};

forEach( str, count, ctx );

t.strictEqual( ctx.count, 12, 'returns expected value' );
t.end();

function count() {
this.count += 1; // eslint-disable-line no-invalid-this
}
});

0 comments on commit 22a2479

Please sign in to comment.