diff --git a/techs/deps-by-tech-to-bemdecl.js b/techs/deps-by-tech-to-bemdecl.js index e5928b6..7302066 100644 --- a/techs/deps-by-tech-to-bemdecl.js +++ b/techs/deps-by-tech-to-bemdecl.js @@ -104,6 +104,7 @@ module.exports = inherit(BaseTech, { if (dep[depType]) { deps.flattenDeps(dep[depType]).forEach(function (singleDep) { singleDep.block || (singleDep.block = notation.block); + singleDep.val || singleDep.mod && (singleDep.val = true); if (!destTech || singleDep.tech === destTech) { var key = depKey(singleDep); diff --git a/test/techs/deps-by-tech-to-bemdecl.test.js b/test/techs/deps-by-tech-to-bemdecl.test.js index 2732640..8ab7816 100644 --- a/test/techs/deps-by-tech-to-bemdecl.test.js +++ b/test/techs/deps-by-tech-to-bemdecl.test.js @@ -251,6 +251,23 @@ describe('techs: deps', function () { return assert(scheme, bemdecl, exepted); }); + it('must add must dep of block boolean mod with short record', function () { + var scheme = { + blocks: { + block: { + 'block.deps.js': stringifyDepsJs({ + tech: 'sourceTech', + mustDeps: [{ block: 'other-block', mod: 'mod' }] + }) + } + } + }, + bemdecl = [{ name: 'block' }], + exepted = [{ name: 'other-block', mods: [{ name: 'mod', vals: [{ name: true }] }] }]; + + return assert(scheme, bemdecl, exepted); + }); + it('must add must dep of block mod', function () { var scheme = { blocks: { @@ -330,6 +347,28 @@ describe('techs: deps', function () { return assert(scheme, bemdecl, exepted); }); + it('must add must dep of elem bool mod with short record', function () { + var scheme = { + blocks: { + block: { + 'block.deps.js': stringifyDepsJs({ + tech: 'sourceTech', + mustDeps: [ + { block: 'other-block', elem: 'elem', mod: 'mod' } + ] + }) + } + } + }, + bemdecl = [{ name: 'block' }], + exepted = [{ + name: 'other-block', + elems: [{ name: 'elem', mods: [{ name: 'mod', vals: [{ name: true }] }] }] + }]; + + return assert(scheme, bemdecl, exepted); + }); + it('must add must dep of elem mod', function () { var scheme = { blocks: {