howsmydriving-utils
Version:
Utilities used by howsmydriving package any howsmydriving-[region] plug-in modules.
47 lines (46 loc) • 2.02 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var media_1 = require("../src/util/media");
var assert = require('assert'), log4js = require('log4js'), mocha = require('mocha'), sinon = require('sinon');
describe('Media item parse from string', function () {
describe('Test empty string', function () {
it('returns empty array', function () {
var media_items = media_1.MediaItemsFromString('');
assert(media_items && media_items.length == 0);
});
});
describe('Test invalid string', function () {
it('throws exception', function () {
var invalid_media_str = 'fskfjds;fk';
assert.throws(function () {
media_1.MediaItemsFromString(invalid_media_str);
}, function (err) {
assert(err instanceof Error);
assert(/^Invalid media string.*/.test(err.message));
return true;
});
});
});
describe('Test single media item', function () {
it('returns one media item', function () {
var media_item = [new media_1.MediaItem({ url: 'http://my.com' })];
var single_media_item_json = JSON.stringify(media_item);
var media_items = media_1.MediaItemsFromString(single_media_item_json);
assert(media_items && media_items.length == 1);
});
});
describe('Test multiple media items', function () {
it('returns one media item', function () {
var media_items_str = [
new media_1.MediaItem({ url: 'http://my.com' }),
new media_1.MediaItem({
url: 'http://some.com/some/path',
twitter_media_id_str: '12345'
})
];
var media_items_json = JSON.stringify(media_items_str);
var media_items = media_1.MediaItemsFromString(media_items_json);
assert(media_items && media_items.length == 2);
});
});
});