Skip to content

Commit 95e9dc9

Browse files
committed
✅ Add unit tests for helper functions
1 parent e881c2c commit 95e9dc9

File tree

2 files changed

+193
-1
lines changed

2 files changed

+193
-1
lines changed

lib/helpers.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@ helpers.isSnakeCase = function (str) {
139139
};
140140

141141
helpers.isStrictBEM = function (str) {
142-
return /^[a-z]([-]?[a-z0-9]+)*(__[a-z0-9]([-]?[a-z0-9]+)*)?((_[a-z0-9]([-]?[a-z0-9]+)*){2})?$/.test(str);
142+
return /^[a-z](\-?[a-z0-9]+)*(__[a-z0-9](\-?[a-z0-9]+)*)?((_[a-z0-9](\-?[a-z0-9]+)*){2})?$/.test(str);
143143
};
144144

145145
helpers.isHyphenatedBEM = function (str) {

tests/helpers.js

+192
Original file line numberDiff line numberDiff line change
@@ -615,6 +615,198 @@ describe('helpers', function () {
615615
done();
616616
});
617617

618+
//////////////////////////////
619+
// isHyphenatedBEM
620+
//////////////////////////////
621+
622+
it('isHyphenatedBEM - [\'TEST\' - false]', function (done) {
623+
624+
var result = helpers.isHyphenatedBEM('TEST');
625+
626+
assert.equal(false, result);
627+
done();
628+
});
629+
630+
it('isHyphenatedBEM - [\'test\' - true]', function (done) {
631+
632+
var result = helpers.isHyphenatedBEM('test');
633+
634+
assert.equal(true, result);
635+
done();
636+
});
637+
638+
it('isHyphenatedBEM - [abcDEF - false]', function (done) {
639+
640+
var result = helpers.isHyphenatedBEM('abcDEF');
641+
642+
assert.equal(false, result);
643+
done();
644+
});
645+
646+
it('isHyphenatedBEM - [\'abc---def\' - false]', function (done) {
647+
648+
var result = helpers.isHyphenatedBEM('abc---def');
649+
650+
assert.equal(false, result);
651+
done();
652+
});
653+
654+
it('isHyphenatedBEM - [\'abc___def\' - false]', function (done) {
655+
656+
var result = helpers.isHyphenatedBEM('abc___def');
657+
658+
assert.equal(false, result);
659+
done();
660+
});
661+
662+
it('isHyphenatedBEM - [\'ab__cd__ef\' - true]', function (done) {
663+
664+
var result = helpers.isHyphenatedBEM('ab__cd__ef');
665+
666+
assert.equal(true, result);
667+
done();
668+
});
669+
670+
it('isHyphenatedBEM - [\'ab__cd--ef\' - true]', function (done) {
671+
672+
var result = helpers.isHyphenatedBEM('ab__cd--ef');
673+
674+
assert.equal(true, result);
675+
done();
676+
});
677+
678+
it('isHyphenatedBEM - [\'abc_def\' - false]', function (done) {
679+
680+
var result = helpers.isHyphenatedBEM('abc_def');
681+
682+
assert.equal(false, result);
683+
done();
684+
});
685+
686+
it('isHyphenatedBEM - [\'abc-def\' - true]', function (done) {
687+
688+
var result = helpers.isHyphenatedBEM('abc-def');
689+
690+
assert.equal(true, result);
691+
done();
692+
});
693+
694+
it('isHyphenatedBEM - [\'ab-cd__ef\' - true]', function (done) {
695+
696+
var result = helpers.isHyphenatedBEM('ab-cd__ef');
697+
698+
assert.equal(true, result);
699+
done();
700+
});
701+
702+
//////////////////////////////
703+
// isStrictBEM
704+
//////////////////////////////
705+
706+
it('isStrictBEM - [\'TEST\' - false]', function (done) {
707+
708+
var result = helpers.isStrictBEM('TEST');
709+
710+
assert.equal(false, result);
711+
done();
712+
});
713+
714+
it('isStrictBEM - [\'test\' - true]', function (done) {
715+
716+
var result = helpers.isStrictBEM('test');
717+
718+
assert.equal(true, result);
719+
done();
720+
});
721+
722+
it('isStrictBEM - [abcDEF - false]', function (done) {
723+
724+
var result = helpers.isStrictBEM('abcDEF');
725+
726+
assert.equal(false, result);
727+
done();
728+
});
729+
730+
it('isStrictBEM - [\'abc---def\' - false]', function (done) {
731+
732+
var result = helpers.isStrictBEM('abc---def');
733+
734+
assert.equal(false, result);
735+
done();
736+
});
737+
738+
it('isStrictBEM - [\'abc___def\' - false]', function (done) {
739+
740+
var result = helpers.isStrictBEM('abc___def');
741+
742+
assert.equal(false, result);
743+
done();
744+
});
745+
746+
it('isStrictBEM - [\'ab__cd__ef\' - false]', function (done) {
747+
748+
var result = helpers.isStrictBEM('ab__cd__ef');
749+
750+
assert.equal(false, result);
751+
done();
752+
});
753+
754+
it('isStrictBEM - [\'ab__cd--ef\' - false]', function (done) {
755+
756+
var result = helpers.isStrictBEM('ab__cd--ef');
757+
758+
assert.equal(false, result);
759+
done();
760+
});
761+
762+
it('isStrictBEM - [\'ab__cd_ef_gh\' - true]', function (done) {
763+
764+
var result = helpers.isStrictBEM('ab__cd_ef_gh');
765+
766+
assert.equal(true, result);
767+
done();
768+
});
769+
770+
it('isStrictBEM - [\'ab-cd-ef__gh-ij-kl_mn-op-qr_st-uv-wx\' - true]', function (done) {
771+
772+
var result = helpers.isStrictBEM('ab-cd-ef__gh-ij-kl_mn-op-qr_st-uv-wx');
773+
774+
assert.equal(true, result);
775+
done();
776+
});
777+
778+
it('isStrictBEM - [\'ab__cd_ef_gh_ij\' - false]', function (done) {
779+
780+
var result = helpers.isStrictBEM('ab__cd_ef_gh_ij');
781+
782+
assert.equal(false, result);
783+
done();
784+
});
785+
786+
it('isStrictBEM - [\'abc_def\' - false]', function (done) {
787+
788+
var result = helpers.isStrictBEM('abc_def');
789+
790+
assert.equal(false, result);
791+
done();
792+
});
793+
794+
it('isStrictBEM - [\'abc-def\' - true]', function (done) {
795+
796+
var result = helpers.isStrictBEM('abc-def');
797+
798+
assert.equal(true, result);
799+
done();
800+
});
801+
802+
it('isStrictBEM - [\'ab-cd__ef\' - true]', function (done) {
803+
804+
var result = helpers.isStrictBEM('ab-cd__ef');
805+
806+
assert.equal(true, result);
807+
done();
808+
});
809+
618810
//////////////////////////////
619811
// isValidHex
620812
//////////////////////////////

0 commit comments

Comments
 (0)