UNPKG

smc-hub

Version:

CoCalc: Backend webserver component

50 lines (44 loc) 1.75 kB
// Generated by CoffeeScript 2.5.1 (function() { //######################################################################## // This file is part of CoCalc: Copyright © 2020 Sagemath, Inc. // License: AGPLv3 s.t. "Commons Clause" – see LICENSE.md for details //######################################################################## var expect, utils; expect = require('expect'); utils = require('../../utils'); describe('parse retention strings', function() { var EXTRAS, displayer, parser, retentions; ({EXTRAS} = require('smc-util/db-schema/site-settings-extras')); retentions = EXTRAS.pii_retention.valid; parser = EXTRAS.pii_retention.to_val; displayer = EXTRAS.pii_retention.to_display; it('all valid values work', function() { var cnt, i, len, s, secs; cnt = 0; for (i = 0, len = retentions.length; i < len; i++) { s = retentions[i]; if (s === 'never') { continue; } cnt += 1; secs = parser(s); expect(isNaN(secs)).toBe(false); expect(secs > 0).toBe(true); } // make sure there are at least some available return expect(cnt > 3).toBe(true); }); it('parses correctly', function() { expect(parser('30 days')).toBe(30 * 24 * 60 * 60); expect(parser('6 months')).toBe(6 * 30 * 24 * 60 * 60); expect(parser('1 year')).toBe(365 * 24 * 60 * 60); return expect(parser('10 years')).toBe(10 * 365 * 24 * 60 * 60); }); return it('displays them', function() { expect(displayer('never').indexOf('never expire') > 0).toBe(true); return expect(displayer('30 days').length > 10).toBe(true); }); }); }).call(this); //# sourceMappingURL=utils.js.map