You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
68 lines
1.6 KiB
68 lines
1.6 KiB
/* global describe,it */ |
|
|
|
var getSlug = require('../lib/speakingurl'); |
|
|
|
describe('getSlug smart truncate', function () { |
|
'use strict'; |
|
|
|
it('should maintain case characters, with smart truncate', function (done) { |
|
|
|
getSlug('Foobarbaz, Bar Baz', { |
|
truncate: 12 |
|
}) |
|
.should.eql('foobarbaz'); |
|
|
|
getSlug('Foobarbaz, Bar Baz', { |
|
truncate: 15 |
|
}) |
|
.should.eql('foobarbaz-bar'); |
|
|
|
getSlug(' Foobarbaz, Bar Baz', { |
|
truncate: 15 |
|
}) |
|
.should.eql('foobarbaz-bar'); |
|
|
|
getSlug(' Foobarbaz, Bar Baz', { |
|
truncate: 15 |
|
}) |
|
.should.eql('foobarbaz-bar'); |
|
|
|
getSlug('Foo Foo bar Zoo Bar Baz', { |
|
truncate: 15 |
|
}) |
|
.should.eql('foo-foo-bar-zoo'); |
|
|
|
getSlug('Foo Foo bar ZooBar Baz', { |
|
truncate: 15 |
|
}) |
|
.should.eql('foo-foo-bar'); |
|
|
|
getSlug('Foo Foo bar ZooBar Baz', { |
|
truncate: 15 |
|
}) |
|
.should.eql('foo-foo-bar'); |
|
|
|
getSlug('Foo Foo Bar Bar', { |
|
truncate: "foo" |
|
}) |
|
.should.eql('foo-foo-bar-bar'); |
|
|
|
getSlug('Foo Foo Bar Bar', { |
|
truncate: false |
|
}) |
|
.should.eql('foo-foo-bar-bar'); |
|
|
|
getSlug('Foo Foo Bar Bar', { |
|
truncate: true |
|
}) |
|
.should.eql('foo-foo-bar-bar'); |
|
|
|
getSlug('a Foo', { |
|
truncate: true |
|
}) |
|
.should.eql('a-foo'); |
|
|
|
done(); |
|
|
|
}); |
|
}); |