Skip to content

Commit

Permalink
Convert Trait test into TS
Browse files Browse the repository at this point in the history
  • Loading branch information
xQwexx committed Feb 17, 2023
1 parent a83847b commit 8e7cf82
Show file tree
Hide file tree
Showing 3 changed files with 41 additions and 54 deletions.
24 changes: 0 additions & 24 deletions test/specs/trait_manager/model/TraitsModel.js

This file was deleted.

22 changes: 22 additions & 0 deletions test/specs/trait_manager/model/TraitsModel.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
import Trait from '../../../../src/trait_manager/model/Trait';
import Component from '../../../../src/dom_components/model/Component';

describe('TraitModels', () => {
var trait: Trait;
var target: Component;
var modelName = 'title';

beforeEach(() => {
target = new Component();
trait = new Trait({
name: modelName,
target,
});
});

afterEach(() => {});

test('Object exists', () => {
expect(trait).toBeTruthy();
});
});
Original file line number Diff line number Diff line change
@@ -1,65 +1,54 @@
import Trait from 'trait_manager/model/Trait';
import TraitView from 'trait_manager/view/TraitView';
import Component from 'dom_components/model/Component';
import Trait from '../../../../src/trait_manager/model/Trait';
import TraitView from '../../../../src/trait_manager/view/TraitView';
import Component from '../../../../src/dom_components/model/Component';

describe('TraitView', () => {
var obj;
var model;
var obj: TraitView;
var trait: Trait;
var modelName = 'title';
var target;
var target: Component;

beforeEach(() => {
target = new Component();
model = new Trait({
trait = new Trait({
name: modelName,
target,
});
obj = new TraitView({
model,
model: trait,
});
});

afterEach(() => {
obj = null;
model = null;
target = null;
});

test('Object exists', () => {
expect(Trait).toBeTruthy();
});
afterEach(() => {});

test('Target has no attributes on init', () => {
expect(target.get('attributes')).toEqual({});
});

test('On update of the value updates the target attributes', () => {
model.set('value', 'test');
var eq = {};
eq[modelName] = 'test';
trait.set('value', 'test');
var eq = { [modelName]: 'test' };
expect(target.get('attributes')).toEqual(eq);
});

test('Updates on different models do not alter other targets', () => {
var target1 = new Component();
var target2 = new Component();
var model1 = new Trait({
var trait1 = new Trait({
name: modelName,
target: target1,
});
var model2 = new Trait({
var trait2 = new Trait({
name: modelName,
target: target2,
});
var obj1 = new TraitView({ model: model1 });
var obj2 = new TraitView({ model: model2 });
var obj1 = new TraitView({ model: trait1 });
var obj2 = new TraitView({ model: trait2 });

model1.set('value', 'test1');
model2.set('value', 'test2');
var eq1 = {};
eq1[modelName] = 'test1';
var eq2 = {};
eq2[modelName] = 'test2';
trait1.set('value', 'test1');
trait2.set('value', 'test2');
var eq1 = { [modelName]: 'test1' };
var eq2 = { [modelName]: 'test2' };
expect(target1.get('attributes')).toEqual(eq1);
expect(target2.get('attributes')).toEqual(eq2);
});
Expand Down

0 comments on commit 8e7cf82

Please sign in to comment.