Browse Source

Fix CSS compare

pull/3411/head
Artur Arseniev 6 years ago
parent
commit
c4c5ffa041
  1. 7
      src/css_composer/model/CssRule.js
  2. 20
      test/specs/css_composer/index.js

7
src/css_composer/model/CssRule.js

@ -178,13 +178,10 @@ export default Backbone.Model.extend(Styleable).extend({
var wd = width || ''; var wd = width || '';
var selectorsAdd = ruleProps.selectorsAdd || ''; var selectorsAdd = ruleProps.selectorsAdd || '';
var atRuleType = ruleProps.atRuleType || ''; var atRuleType = ruleProps.atRuleType || '';
var cId = 'cid';
//var a1 = _.pluck(selectors.models || selectors, cId);
//var a2 = _.pluck(this.get('selectors').models, cId);
if (!(selectors instanceof Array) && !selectors.models) if (!(selectors instanceof Array) && !selectors.models)
selectors = [selectors]; selectors = [selectors];
var a1 = map(selectors.models || selectors, model => model.get('name')); var a1 = map(selectors.models || selectors, model => model.getFullName());
var a2 = map(this.get('selectors').models, model => model.get('name')); var a2 = map(this.get('selectors').models, model => model.getFullName());
var f = false; var f = false;
if (a1.length !== a2.length) return f; if (a1.length !== a2.length) return f;

20
test/specs/css_composer/index.js

@ -321,5 +321,25 @@ describe('Css Composer', () => {
}); });
expect(obj.getAll().length).toEqual(toTest.length); expect(obj.getAll().length).toEqual(toTest.length);
}); });
test('Get the right rule, containg similar selector names', () => {
const all = obj.getAll();
const name = 'rule-test';
const selClass = `.${name}`;
const selId = `#${name}`;
const decl = `{colore:red;}`;
all.add(`${selClass}${decl} ${selId}${decl}`);
expect(all.length).toBe(2);
const ruleClass = all.at(0);
const ruleId = all.at(1);
// Pre-check
expect(ruleClass.selectorsToString()).toBe(selClass);
expect(ruleId.selectorsToString()).toBe(selId);
expect(ruleClass.toCSS()).toBe(`${selClass}${decl}`);
expect(ruleId.toCSS()).toBe(`${selId}${decl}`);
// Check the get with the right rule
expect(obj.get(ruleClass.getSelectors())).toBe(ruleClass);
expect(obj.get(ruleId.getSelectors())).toBe(ruleId);
});
}); });
}); });

Loading…
Cancel
Save