diff --git a/CHANGELOG.md b/CHANGELOG.md
index 90eb554..319dc2b 100755
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,10 @@
+
+# [2.0.0](https://github.com/faker-javascript/letter) (2022-01-09)
+
+### BREAKING CHANGES
+
+* New function `letter` istead of `fakeLetter`
+
# [1.1.0](https://github.com/faker-javascript/letter) (2022-01-08)
* Add locales support: ru_RU, en_US (default)
diff --git a/README.md b/README.md
index d601109..f4957de 100644
--- a/README.md
+++ b/README.md
@@ -15,15 +15,15 @@ $ npm install --save @fakerjs/letter
## Usage
```js
-import fakeLetter from '@fakerjs/letter';
+import letter from '@fakerjs/letter';
-fakeLetter();
+letter();
//=> z
-fakeLetter({'casing': 'upper'});
+letter({'casing': 'upper'});
//=> Z
-fakeLetter({'casing': 'upper', 'locale': 'ru_RU'});
+letter({'casing': 'upper', 'locale': 'ru_RU'});
//=> Я
```
diff --git a/index.js b/index.js
index 4aa70cd..45562c7 100644
--- a/index.js
+++ b/index.js
@@ -1,10 +1,10 @@
-export default function fakeLetter(options) {
+export default function letter(options) {
options = options || {};
let keyspace = {
"en_US": "abcdefghijklmnopqrstuvwxyz",
"ru_RU": "абвгдеёжзийклмнопрстуфхцчшщъыьэюя"
};
- let locale = ((options.locale === undefined) ? 'en_US' : options.locale);
+ let locale = options.locale || 'en_US';
let letter = keyspace[locale].charAt(Math.floor(Math.random() * keyspace[locale].length));
return (options.casing === 'upper' ? letter.toUpperCase() : letter);
};
\ No newline at end of file
diff --git a/package.json b/package.json
index 0a97037..843e45d 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "@fakerjs/letter",
- "version": "1.1.0",
+ "version": "2.0.0",
"description": "Letter package provides functionality to generate a fake letter value.",
"license": "MIT",
"repository": "faker-javascript/letter",
@@ -25,6 +25,7 @@
],
"keywords": [
"fakerjs",
+ "faker",
"fake",
"random",
"strings",
diff --git a/test.js b/test.js
index d803376..5edc316 100644
--- a/test.js
+++ b/test.js
@@ -1,18 +1,28 @@
-import fakeLetter from './index.js';
+import letter from './index.js';
import test from 'ava';
-test('fakeLetter return type to be string', t => {
- t.is(typeof fakeLetter(), 'string');
+test('letter return type to be string', t => {
+ t.is(typeof letter(), 'string');
});
-test('fakeLetter length casing eq 1', t => {
- t.is(fakeLetter().length, 1);
- t.is(fakeLetter({ casing: 'upper' }).length, 1);
- t.is(fakeLetter({ casing: 'lower' }).length, 1);
+test('letter length casing eq 1', t => {
+ t.is(letter().length, 1);
+ t.is(letter({ casing: 'upper' }).length, 1);
+ t.is(letter({ casing: 'lower' }).length, 1);
});
-test('fakeLetter with casing and locale ru_RU length eq 1', t => {
- t.is(fakeLetter().length, 1);
- t.is(fakeLetter({ casing: 'upper', locale: 'ru_RU' }).length, 1);
- t.is(fakeLetter({ casing: 'lower', locale: 'ru_RU' }).length, 1);
+test('letter with locale ru_RU includes', t => {
+ t.true('абвгдеёжзийклмнопрстуфхцчшщъыьэюя'.includes(letter({ locale: 'ru_RU' })));
+ t.false('абвгдеёжзийклмнопрстуфхцчшщъыьэюя'.includes('z'));
+});
+
+test('letter with locale en_US includes', t => {
+ t.true('abcdefghijklmnopqrstuvwxyz'.includes(letter({ locale: 'en_US' })));
+ t.false('abcdefghijklmnopqrstuvwxyz'.includes('я'));
+});
+
+test('letter with casing and locale ru_RU length eq 1', t => {
+ t.is(letter().length, 1);
+ t.is(letter({ casing: 'upper', locale: 'ru_RU' }).length, 1);
+ t.is(letter({ casing: 'lower', locale: 'ru_RU' }).length, 1);
});
\ No newline at end of file