UNPKG

smc-hub

Version:

CoCalc: Backend webserver component

113 lines (105 loc) 3.23 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 //######################################################################## /* Testing API functions relating to text files */ var api, expect, misc, setup, teardown; api = require('./apitest'); ({setup, teardown} = api); misc = require('smc-util/misc'); expect = require('expect'); describe('testing text file operations -- ', function() { var content, project_id; before(setup); after(teardown); project_id = void 0; content = 'hello\nworld'; it("creates target project", function(done) { return api.call({ event: 'create_project', body: { title: 'TFTEST', description: 'Testing text file operations' }, cb: function(err, resp) { expect(resp != null ? resp.event : void 0).toBe('project_created'); project_id = resp.project_id; return done(err); } }); }); it("creates a text file in a project", function(done) { this.timeout(20000); return api.call({ event: 'write_text_file_to_project', body: { project_id: project_id, content: content, path: 'A1/doc1.txt' }, cb: function(err, resp) { expect(err).toEqual(null); expect(resp != null ? resp.event : void 0).toBe('file_written_to_project'); return done(err); } }); }); it("reads a text file in a project", function(done) { this.timeout(20000); return api.call({ event: 'read_text_file_from_project', body: { project_id: project_id, path: 'A1/doc1.txt' }, cb: function(err, resp) { expect(err).toEqual(null); expect(resp != null ? resp.event : void 0).toBe('text_file_read_from_project'); expect(resp != null ? resp.content : void 0).toBe(content); return done(err); } }); }); it("uses API query to make a file public", function(done) { return api.call({ event: 'query', body: { query: { public_paths: { project_id: project_id, path: 'A1/doc1.txt', description: 'Handout #1' } } }, cb: function(err, resp) { expect(resp != null ? resp.event : void 0).toBe('query'); return done(err); } }); }); return it("uses API query to make a folder public", function(done) { return api.call({ event: 'query', body: { query: { public_paths: { project_id: project_id, path: 'A1/', description: 'public folder A1' } } }, cb: function(err, resp) { expect(resp != null ? resp.event : void 0).toBe('query'); return done(err); } }); }); }); }).call(this); //# sourceMappingURL=text_files.js.map