浏览代码

Fix completer tests.

Afshin Darian 8 年之前
父节点
当前提交
1a2255d7eb
共有 2 个文件被更改,包括 13 次插入11 次删除
  1. 4 2
      src/completer/model.ts
  2. 9 9
      test/src/completer/model.spec.ts

+ 4 - 2
src/completer/model.ts

@@ -45,7 +45,8 @@ class CompleterModel implements CompleterWidget.IModel {
     return this._original;
     return this._original;
   }
   }
   set original(newValue: CompleterWidget.ITextState) {
   set original(newValue: CompleterWidget.ITextState) {
-    let unchanged = this._original && newValue &&
+    let unchanged = this._original === newValue ||
+      this._original && newValue &&
       JSONExt.deepEqual(newValue, this._original);
       JSONExt.deepEqual(newValue, this._original);
     if (unchanged) {
     if (unchanged) {
       return;
       return;
@@ -63,7 +64,8 @@ class CompleterModel implements CompleterWidget.IModel {
     return this._current;
     return this._current;
   }
   }
   set current(newValue: CompleterWidget.ITextState) {
   set current(newValue: CompleterWidget.ITextState) {
-    let unchanged = this._current && newValue &&
+    let unchanged = this._current === newValue ||
+      this._current && newValue &&
       JSONExt.deepEqual(newValue, this._current);
       JSONExt.deepEqual(newValue, this._current);
     if (unchanged) {
     if (unchanged) {
       return;
       return;

+ 9 - 9
test/src/completer/model.spec.ts

@@ -111,7 +111,7 @@ describe('completer/model', () => {
         expect(called).to.be(3);
         expect(called).to.be(3);
       });
       });
 
 
-      it('should not signal when current text has not change', () => {
+      it('should not signal when current text is unchanged', () => {
         let model = new CompleterModel();
         let model = new CompleterModel();
         let called = 0;
         let called = 0;
         let currentValue = 'foo';
         let currentValue = 'foo';
@@ -140,9 +140,9 @@ describe('completer/model', () => {
       it('should return an unfiltered list of items if query is blank', () => {
       it('should return an unfiltered list of items if query is blank', () => {
         let model = new CompleterModel();
         let model = new CompleterModel();
         let want: CompleterWidget.IItem[] = [
         let want: CompleterWidget.IItem[] = [
-          { raw: 'foo', child: 'foo' },
-          { raw: 'bar', child: 'bar' },
-          { raw: 'baz', child: 'baz' }
+          { raw: 'foo', text: 'foo' },
+          { raw: 'bar', text: 'bar' },
+          { raw: 'baz', text: 'baz' }
         ];
         ];
         model.setOptions(['foo', 'bar', 'baz']);
         model.setOptions(['foo', 'bar', 'baz']);
         expect(toArray(model.items())).to.eql(want);
         expect(toArray(model.items())).to.eql(want);
@@ -151,7 +151,7 @@ describe('completer/model', () => {
       it('should return a filtered list of items if query is set', () => {
       it('should return a filtered list of items if query is set', () => {
         let model = new CompleterModel();
         let model = new CompleterModel();
         let want: CompleterWidget.IItem[] = [
         let want: CompleterWidget.IItem[] = [
-          { raw: 'foo', child: '<mark>f</mark>oo' }
+          { raw: 'foo', text: '<mark>f</mark>oo' }
         ];
         ];
         model.setOptions(['foo', 'bar', 'baz']);
         model.setOptions(['foo', 'bar', 'baz']);
         model.query = 'f';
         model.query = 'f';
@@ -161,8 +161,8 @@ describe('completer/model', () => {
       it('should order list based on score', () => {
       it('should order list based on score', () => {
         let model = new CompleterModel();
         let model = new CompleterModel();
         let want: CompleterWidget.IItem[] = [
         let want: CompleterWidget.IItem[] = [
-          { raw: 'qux', child: '<mark>qux</mark>' },
-          { raw: 'quux', child: '<mark>qu</mark>u<mark>x</mark>' }
+          { raw: 'qux', text: '<mark>qux</mark>' },
+          { raw: 'quux', text: '<mark>qu</mark>u<mark>x</mark>' }
         ];
         ];
         model.setOptions(['foo', 'bar', 'baz', 'quux', 'qux']);
         model.setOptions(['foo', 'bar', 'baz', 'quux', 'qux']);
         model.query = 'qux';
         model.query = 'qux';
@@ -172,8 +172,8 @@ describe('completer/model', () => {
       it('should break ties in score by locale sort', () => {
       it('should break ties in score by locale sort', () => {
         let model = new CompleterModel();
         let model = new CompleterModel();
         let want: CompleterWidget.IItem[] = [
         let want: CompleterWidget.IItem[] = [
-          { raw: 'quux', child: '<mark>qu</mark>ux' },
-          { raw: 'qux', child: '<mark>qu</mark>x' }
+          { raw: 'quux', text: '<mark>qu</mark>ux' },
+          { raw: 'qux', text: '<mark>qu</mark>x' }
         ];
         ];
         model.setOptions(['foo', 'bar', 'baz', 'qux', 'quux']);
         model.setOptions(['foo', 'bar', 'baz', 'qux', 'quux']);
         model.query = 'qu';
         model.query = 'qu';