narqo / bem-pr

A set of bem-make extenstions to wrap common infrastructure's tasks
12 stars 22 forks source link

spec.js+browser.js+bemhtml.js: Fix depsByTech for js for specs #87

Closed dfilatov closed 10 years ago

dfilatov commented 10 years ago
Index: ../../prjs/bem-controls/libs/bem-pr/bem/techs/spec.js+browser.js+bemhtml.js
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
--- ../../prjs/bem-controls/libs/bem-pr/bem/techs/spec.js+browser.js+bemhtml.js (revision )
+++ ../../prjs/bem-controls/libs/bem-pr/bem/techs/spec.js+browser.js+bemhtml.js (revision )
@@ -20,11 +20,22 @@
         return ctxOpts.declaration
             .then(function(decl) {
                 var specJsResults = _this.getTechBuildResults('spec.js', decl, context, output, opts),
-                    browserJsResults = _this.getTechBuildResults('browser.js', decl, context, output, opts),
                     bemhtmlDecl = new DEPS.Deps(),
                     depsByTechs = decl.depsByTechs || {},
                     depsByTechsJs = depsByTechs.js || {},
-                    depsByTechsSpecJs = depsByTechs['spec.js'] || {};
+                    depsByTechsSpecJs = depsByTechs['spec.js'] || {},
+                    browserJsDecl = (new DEPS.Deps())
+                        .parse(decl.deps)
+                        .parse(depsByTechsSpecJs.js.map(function(i) {
+                            delete i.tech;
+                            return i;
+                        })),
+                    browserJsResults = _this.getTechBuildResults(
+                        'browser.js',
+                        { deps : (browserJsDecl.serialize()[''] || {})[''] || [] },
+                        context,
+                        output,
+                        opts);

                 bemhtmlDecl.parse(depsByTechsJs.bemhtml || []);
                 bemhtmlDecl.parse(depsByTechsSpecJs.bemhtml || []);