Explorar el Código

Update notebook tests

Steven Silvester hace 8 años
padre
commit
91b8e04582
Se han modificado 3 ficheros con 36 adiciones y 66 borrados
  1. 20 45
      test/src/notebook/model.spec.ts
  2. 5 8
      test/src/notebook/trust.spec.ts
  3. 11 13
      test/src/notebook/widget.spec.ts

+ 20 - 45
test/src/notebook/model.spec.ts

@@ -41,8 +41,7 @@ describe('notebook/notebook/model', () => {
 
       it('should accept an optional language preference', () => {
         let model = new NotebookModel({ languagePreference: 'python' });
-        let cursor = model.getMetadata('language_info');
-        let lang = cursor.getValue() as nbformat.ILanguageInfoMetadata;
+        let lang = model.metadata.get('language_info') as nbformat.ILanguageInfoMetadata;
         expect(lang.name).to.be('python');
       });
 
@@ -65,25 +64,23 @@ describe('notebook/notebook/model', () => {
       it('should be emitted when a metadata field changes', () => {
         let model = new NotebookModel();
         let called = false;
-        model.metadataChanged.connect((sender, args) => {
-          expect(sender).to.be(model);
-          expect(args.name).to.be('foo');
+        model.metadata.changed.connect((sender, args) => {
+          expect(sender).to.be(model.metadata);
+          expect(args.key).to.be('foo');
           expect(args.oldValue).to.be(void 0);
           expect(args.newValue).to.be(1);
           called = true;
         });
-        let foo = model.getMetadata('foo');
-        foo.setValue(1);
+        model.metadata.set('foo', 1);
         expect(called).to.be(true);
       });
 
       it('should not be emitted when the value does not change', () => {
         let model = new NotebookModel();
         let called = false;
-        let foo = model.getMetadata('foo');
-        foo.setValue(1);
-        model.metadataChanged.connect(() => { called = true; });
-        foo.setValue(1);
+        model.metadata.set('foo', 1);
+        model.metadata.changed.connect(() => { called = true; });
+        model.metadata.set('foo', 1);
         expect(called).to.be(false);
       });
 
@@ -171,8 +168,7 @@ describe('notebook/notebook/model', () => {
           model.cells.pushBack(cell);
           let called = false;
           model.contentChanged.connect(() => { called = true; });
-          let cursor = cell.getMetadata('foo');
-          cursor.setValue('bar');
+          model.metadata.set('foo', 'bar');
           expect(called).to.be(true);
         });
 
@@ -331,65 +327,44 @@ describe('notebook/notebook/model', () => {
 
     });
 
-    describe('#getMetadata()', () => {
-
-      it('should get a metadata cursor for the notebook', () => {
-        let model = new NotebookModel();
-        let cursor = model.getMetadata('foo');
-        expect(cursor.getValue()).to.be(void 0);
-      });
-
-      it('should get the value for all cursors', () => {
-        let model = new NotebookModel();
-        let cursor0 = model.getMetadata('foo');
-        let cursor1 = model.getMetadata('foo');
-        cursor0.setValue(1);
-        expect(cursor1.getValue()).to.be(1);
-      });
+    describe('#metadata', () => {
 
       it('should set the dirty flag', () => {
         let model = new NotebookModel();
-        let cursor = model.getMetadata('foo');
-        cursor.setValue('bar');
+        expect(model.dirty).to.be(false);
+        model.metadata.set('foo', 'bar');
         expect(model.dirty).to.be(true);
       });
 
       it('should emit the `contentChanged` signal', () => {
         let model = new NotebookModel();
-        let cursor = model.getMetadata('foo');
         let called = false;
         model.contentChanged.connect(() => { called = true; });
-        cursor.setValue('bar');
+        model.metadata.set('foo', 'bar');
         expect(called).to.be(true);
       });
 
       it('should emit the `metadataChanged` signal', () => {
         let model = new NotebookModel();
-        let cursor = model.getMetadata('foo');
         let called = false;
-        model.metadataChanged.connect((sender, args) => {
-          expect(sender).to.be(model);
-          expect(args.name).to.be('foo');
+        model.metadata.changed.connect((sender, args) => {
+          expect(sender).to.be(model.metadata);
+          expect(args.key).to.be('foo');
           expect(args.oldValue).to.be(void 0);
           expect(args.newValue).to.be('bar');
           called = true;
         });
-        cursor.setValue('bar');
+        model.metadata.set('foo', 'bar');
         expect(called).to.be(true);
       });
-    });
-
-    describe('#listMetadata()', () => {
 
       it('should list the metadata namespace keys for the notebook', () => {
         let model = new NotebookModel();
         let keys = ['kernelspec', 'language_info', 'orig_nbformat'];
-        expect(toArray(model.listMetadata())).to.eql(keys);
-        let cursor = model.getMetadata('foo');
-        expect(toArray(model.listMetadata())).to.eql(keys);
-        cursor.setValue(1);
+        expect(toArray(model.metadata.keys())).to.eql(keys);
+        model.metadata.set('foo', 'bar');
         keys.push('foo');
-        expect(toArray(model.listMetadata())).to.eql(keys);
+        expect(toArray(model.metadata.keys())).to.eql(keys);
       });
 
     });

+ 5 - 8
test/src/notebook/trust.spec.ts

@@ -28,10 +28,9 @@ describe('notebook/notebook/trust', () => {
       let model = new NotebookModel();
       model.fromJSON(DEFAULT_CONTENT);
       let cell = model.cells.at(0);
-      let cursor = cell.getMetadata('trusted');
-      expect(cursor.getValue()).to.not.be(true);
+      expect(cell.trusted).to.not.be(true);
       trustNotebook(model).then(() => {
-        expect(cursor.getValue()).to.be(true);
+        expect(cell.trusted).to.be(true);
         done();
       });
       acceptDialog();
@@ -41,10 +40,9 @@ describe('notebook/notebook/trust', () => {
       let model = new NotebookModel();
       model.fromJSON(DEFAULT_CONTENT);
       let cell = model.cells.at(0);
-      let cursor = cell.getMetadata('trusted');
-      expect(cursor.getValue()).to.not.be(true);
+      expect(cell.trusted).to.not.be(true);
       trustNotebook(model).then(() => {
-        expect(cursor.getValue()).to.not.be(true);
+        expect(cell.trusted).to.not.be(true);
         done();
       });
       dismissDialog();
@@ -59,8 +57,7 @@ describe('notebook/notebook/trust', () => {
       model.fromJSON(DEFAULT_CONTENT);
       for (let i = 0; i < model.cells.length; i++) {
         let cell = model.cells.at(i);
-        let cursor = cell.getMetadata('trusted');
-        cursor.setValue(true);
+        cell.trusted = true;
       }
       trustNotebook(model).then(() => { done(); });
       acceptDialog();

+ 11 - 13
test/src/notebook/widget.spec.ts

@@ -66,7 +66,7 @@ class LogStaticNotebook extends StaticNotebook {
     this.methods.push('onModelChanged');
   }
 
-  protected onMetadataChanged(model: INotebookModel, args: IChangedArgs<any>): void {
+  protected onMetadataChanged(model: any, args: any): void {
     super.onMetadataChanged(model, args);
     this.methods.push('onMetadataChanged');
   }
@@ -201,8 +201,7 @@ describe('notebook/notebook/widget', () => {
         widget.model = new NotebookModel();
         let called = false;
         widget.modelContentChanged.connect(() => { called = true; });
-        let cursor = widget.model.getMetadata('foo');
-        cursor.setValue(1);
+        let cursor = widget.model.metadata.set('foo', 1);
         expect(called).to.be(true);
       });
 
@@ -253,8 +252,8 @@ describe('notebook/notebook/widget', () => {
       it('should set the mime types of the cell widgets', () => {
         let widget = new LogStaticNotebook(options);
         let model = new NotebookModel();
-        let cursor = model.getMetadata('language_info');
-        cursor.setValue({ name: 'python', codemirror_mode: 'python' });
+        let value = { name: 'python', codemirror_mode: 'python' };
+        model.metadata.set('language_info', value);
         widget.model = model;
         let child = widget.widgets.at(0);
         expect(child.model.mimeType).to.be('text/x-python');
@@ -344,8 +343,8 @@ describe('notebook/notebook/widget', () => {
       it('should be set from language metadata', () => {
         let widget = new LogStaticNotebook(options);
         let model = new NotebookModel();
-        let cursor = model.getMetadata('language_info');
-        cursor.setValue({ name: 'python', codemirror_mode: 'python' });
+        let value = { name: 'python', codemirror_mode: 'python' };
+        model.metadata.set('language_info', value);
         widget.model = model;
         expect(widget.codeMimetype).to.be('text/x-python');
       });
@@ -413,23 +412,22 @@ describe('notebook/notebook/widget', () => {
 
       it('should be called when the metadata on the notebook changes', () => {
         let widget = createWidget();
-        let cursor = widget.model.getMetadata('foo');
-        cursor.setValue(1);
+        widget.model.metadata.set('foo', 1);
         expect(widget.methods).to.contain('onMetadataChanged');
       });
 
       it('should update the `codeMimetype`', () => {
         let widget = createWidget();
-        let cursor = widget.model.getMetadata('language_info');
-        cursor.setValue({ name: 'python', codemirror_mode: 'python' });
+        let value = { name: 'python', codemirror_mode: 'python' };
+        widget.model.metadata.set('language_info', value);
         expect(widget.methods).to.contain('onMetadataChanged');
         expect(widget.codeMimetype).to.be('text/x-python');
       });
 
       it('should update the cell widget mimetype', () => {
         let widget = createWidget();
-        let cursor = widget.model.getMetadata('language_info');
-        cursor.setValue({ name: 'python', mimetype: 'text/x-python' });
+        let value = { name: 'python', mimetype: 'text/x-python' };
+        widget.model.metadata.set('language_info', value);
         expect(widget.methods).to.contain('onMetadataChanged');
         let child = widget.widgets.at(0);
         expect(child.model.mimeType).to.be('text/x-python');