|
|
@ -5,15 +5,17 @@ import EditorModel from '../../../../src/editor/model/Editor'; |
|
|
import Editor from '../../../../src/editor'; |
|
|
import Editor from '../../../../src/editor'; |
|
|
|
|
|
|
|
|
describe('TraitView', () => { |
|
|
describe('TraitView', () => { |
|
|
var obj: TraitView; |
|
|
let obj: TraitView; |
|
|
var trait: Trait; |
|
|
let trait: Trait; |
|
|
var modelName = 'title'; |
|
|
let modelName = 'title'; |
|
|
var target: Component; |
|
|
let target: Component; |
|
|
var em: EditorModel; |
|
|
let em: EditorModel; |
|
|
|
|
|
let config: { em: EditorModel }; |
|
|
|
|
|
|
|
|
beforeEach(() => { |
|
|
beforeEach(() => { |
|
|
em = new Editor().getModel(); |
|
|
em = new Editor().getModel(); |
|
|
target = new Component(); |
|
|
config = { em }; |
|
|
|
|
|
target = new Component({}, config); |
|
|
trait = new Trait( |
|
|
trait = new Trait( |
|
|
{ |
|
|
{ |
|
|
name: modelName, |
|
|
name: modelName, |
|
|
@ -23,6 +25,7 @@ describe('TraitView', () => { |
|
|
); |
|
|
); |
|
|
obj = new TraitView({ |
|
|
obj = new TraitView({ |
|
|
model: trait, |
|
|
model: trait, |
|
|
|
|
|
config, |
|
|
}); |
|
|
}); |
|
|
}); |
|
|
}); |
|
|
|
|
|
|
|
|
@ -34,34 +37,34 @@ describe('TraitView', () => { |
|
|
|
|
|
|
|
|
test('On update of the value updates the target attributes', () => { |
|
|
test('On update of the value updates the target attributes', () => { |
|
|
trait.set('value', 'test'); |
|
|
trait.set('value', 'test'); |
|
|
var eq = { [modelName]: 'test' }; |
|
|
const eq = { [modelName]: 'test' }; |
|
|
expect(target.get('attributes')).toEqual(eq); |
|
|
expect(target.get('attributes')).toEqual(eq); |
|
|
}); |
|
|
}); |
|
|
|
|
|
|
|
|
test('Updates on different models do not alter other targets', () => { |
|
|
test('Updates on different models do not alter other targets', () => { |
|
|
var target1 = new Component(); |
|
|
const target1 = new Component({}, config); |
|
|
var target2 = new Component(); |
|
|
const target2 = new Component({}, config); |
|
|
var trait1 = new Trait( |
|
|
const trait1 = new Trait( |
|
|
{ |
|
|
{ |
|
|
name: modelName, |
|
|
name: modelName, |
|
|
target: target1, |
|
|
target: target1, |
|
|
}, |
|
|
}, |
|
|
em |
|
|
em |
|
|
); |
|
|
); |
|
|
var trait2 = new Trait( |
|
|
const trait2 = new Trait( |
|
|
{ |
|
|
{ |
|
|
name: modelName, |
|
|
name: modelName, |
|
|
target: target2, |
|
|
target: target2, |
|
|
}, |
|
|
}, |
|
|
em |
|
|
em |
|
|
); |
|
|
); |
|
|
var obj1 = new TraitView({ model: trait1 }); |
|
|
const obj1 = new TraitView({ model: trait1 }); |
|
|
var obj2 = new TraitView({ model: trait2 }); |
|
|
const obj2 = new TraitView({ model: trait2 }); |
|
|
|
|
|
|
|
|
trait1.set('value', 'test1'); |
|
|
trait1.set('value', 'test1'); |
|
|
trait2.set('value', 'test2'); |
|
|
trait2.set('value', 'test2'); |
|
|
var eq1 = { [modelName]: 'test1' }; |
|
|
const eq1 = { [modelName]: 'test1' }; |
|
|
var eq2 = { [modelName]: 'test2' }; |
|
|
const eq2 = { [modelName]: 'test2' }; |
|
|
expect(target1.get('attributes')).toEqual(eq1); |
|
|
expect(target1.get('attributes')).toEqual(eq1); |
|
|
expect(target2.get('attributes')).toEqual(eq2); |
|
|
expect(target2.get('attributes')).toEqual(eq2); |
|
|
}); |
|
|
}); |
|
|
|