diff --git a/.gitignore b/.gitignore index e69de29..c6c1781 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1 @@ +/camelcase-3.0.0.tgz diff --git a/nodejs-camelcase.spec b/nodejs-camelcase.spec new file mode 100644 index 0000000..c391ebe --- /dev/null +++ b/nodejs-camelcase.spec @@ -0,0 +1,80 @@ +%{?nodejs_find_provides_and_requires} + +%global packagename camelcase +%global enable_tests 0 +# tests disabled until we get 'ava' packaged into Fedora + +Name: nodejs-camelcase +Version: 3.0.0 +Release: 3%{?dist} +Summary: Convert a dash/dot/underscore/space separated string to camelCase + +License: MIT +URL: https://github.com/sindresorhus/camelcase +Source0: https://registry.npmjs.org/%{packagename}/-/%{packagename}-%{version}.tgz +Source1: https://raw.githubusercontent.com/sindresorhus/camelcase/v%{version}/test.js + + +ExclusiveArch: %{nodejs_arches} noarch +BuildArch: noarch + +BuildRequires: nodejs-packaging +%if 0%{?enable_tests} +BuildRequires: mocha +BuildRequires: npm(ava) +%endif + +Requires: nodejs + +%description +Convert a dash/dot/underscore/space separated string to camelCase: +foo-bar → fooBar + + +%prep +%setup -q -n package +# setup the tests +cp -r %{SOURCE1} . + + +%build +# nothing to do! + +%install +mkdir -p %{buildroot}%{nodejs_sitelib}/%{packagename} +cp -pr package.json index.js \ + %{buildroot}%{nodejs_sitelib}/%{packagename} + +%nodejs_symlink_deps + +%check +%nodejs_symlink_deps --check +%{__nodejs} -e 'require("./")' +%if 0%{?enable_tests} +%{_bindir}/mocha -R spec +/usr/bin/mocha -R spec +%else +%{_bindir}/echo -e "\e[101m -=#=- Tests disabled -=#=- \e[0m" +%endif + + +%files +%{!?_licensedir:%global license %doc} +%doc *.md +%license license +%{nodejs_sitelib}/%{packagename} + + + +%changelog +* Thu Aug 04 2016 Jared Smith - 3.0.0-3 +- Update test.js to latest version + +* Thu Aug 04 2016 Jared Smith - 3.0.0-2 +- Fix test.js + +* Wed Jul 13 2016 Jared Smith - 3.0.0-1 +- Update to upstream 3.0.0 release + +* Fri Oct 23 2015 Jared Smith - 1.2.1-1 +- Initial packaging diff --git a/sources b/sources index e69de29..55b76e1 100644 --- a/sources +++ b/sources @@ -0,0 +1 @@ +d9d2d730959290cbbb9ef3900cd6126c camelcase-3.0.0.tgz diff --git a/test.js b/test.js new file mode 100644 index 0000000..258e6aa --- /dev/null +++ b/test.js @@ -0,0 +1,47 @@ +import test from 'ava'; +import fn from './'; + +test('camelCase', t => { + t.is(fn('foo'), 'foo'); + t.is(fn('foo-bar'), 'fooBar'); + t.is(fn('foo-bar-baz'), 'fooBarBaz'); + t.is(fn('foo--bar'), 'fooBar'); + t.is(fn('--foo-bar'), 'fooBar'); + t.is(fn('--foo--bar'), 'fooBar'); + t.is(fn('FOO-BAR'), 'fooBar'); + t.is(fn('FOÈ-BAR'), 'foèBar'); + t.is(fn('-foo-bar-'), 'fooBar'); + t.is(fn('--foo--bar--'), 'fooBar'); + t.is(fn('foo.bar'), 'fooBar'); + t.is(fn('foo..bar'), 'fooBar'); + t.is(fn('..foo..bar..'), 'fooBar'); + t.is(fn('foo_bar'), 'fooBar'); + t.is(fn('__foo__bar__'), 'fooBar'); + t.is(fn('__foo__bar__'), 'fooBar'); + t.is(fn('foo bar'), 'fooBar'); + t.is(fn(' foo bar '), 'fooBar'); + t.is(fn('-'), '-'); + t.is(fn(' - '), '-'); + t.is(fn('fooBar'), 'fooBar'); + t.is(fn('fooBar-baz'), 'fooBarBaz'); + t.is(fn('foìBar-baz'), 'foìBarBaz'); + t.is(fn('fooBarBaz-bazzy'), 'fooBarBazBazzy'); + t.is(fn('FBBazzy'), 'fBBazzy'); + t.is(fn('F'), 'f'); + t.is(fn('FBBÈzzy'), 'fBBÈzzy'); + t.is(fn('FooBar'), 'fooBar'); + t.is(fn('Foo'), 'foo'); + t.is(fn('FOO'), 'foo'); + t.is(fn('foo', 'bar'), 'fooBar'); + t.is(fn('foo', '-bar'), 'fooBar'); + t.is(fn('foo', '-bar', 'baz'), 'fooBarBaz'); + t.is(fn('', ''), ''); + t.is(fn('--'), ''); + t.is(fn(''), ''); + t.is(fn('--__--_--_'), ''); + t.is(fn('---_', '--', '', '-_- '), ''); + t.is(fn('foo bar?'), 'fooBar?'); + t.is(fn('foo bar!'), 'fooBar!'); + t.is(fn('foo bar$'), 'fooBar$'); + t.is(fn('foo-bar#'), 'fooBar#'); +});