执行npm run test报错,lib文件里缺少style、scripter、parse

Signed-off-by: lixinnan <lixinnan1@huawei.com>
Change-Id: I2f8514eb10af97803a0f8c92b9ea7c6e64232f29
This commit is contained in:
lixinnan 2024-04-10 20:53:49 +08:00
parent 797726d6f6
commit fdc652c4b8
4 changed files with 71 additions and 4 deletions

View File

@ -0,0 +1,66 @@
/*
* Copyright (c) 2024 Huawei Device Co., Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
const fs = require('fs');
const path = require('path');
const moduleSource = require('./module-source');
const exists = function(src, dst, callback) {
if (src.match(/\/test$/)) {
return;
}
fs.exists(dst, function(exists) {
if(exists){
callback(src, dst);
} else{
fs.mkdir(dst, function() {
callback(src, dst);
});
}
});
}
stat = fs.stat;
const copy = function(src, dst){
fs.readdir(src, function(err, paths){
if(err){
throw err;
}
paths.forEach(function(_path){
var _src = src + '/' + _path,
_dst = dst + '/' + _path,
readable, writable;
stat(_src, function(err, st){
if(err){
throw err;
}
if(st.isFile()){
const pathInfo = path.parse(_src);
if (pathInfo.name === 'gulpfile' || pathInfo.ext !== '.js') {
return;
}
readable = fs.createReadStream(_src);
writable = fs.createWriteStream(_dst);
readable.pipe(writable);
} else if(st.isDirectory()){
exists(_src, _dst, copy);
}
});
});
});
};
moduleSource.copyResource(path.resolve(__dirname, './third_party/weex-loader/deps/weex-scripter'), process.argv[2] + '/scripter');
moduleSource.copyResource(path.resolve(__dirname, './third_party/weex-loader/deps/weex-styler'), process.argv[2] + '/styler');
moduleSource.copyResource(path.resolve(__dirname, './third_party/parse5/packages/parse5/dist/cjs'), process.argv[2] + '/parse');

View File

@ -68,3 +68,7 @@ function copyResource(src, dist) {
copyResource(path.resolve(__dirname, './plugin/templater'), process.argv[2] + '/templater');
copyResource(path.resolve(__dirname, './plugin/theme'), process.argv[2] + '/theme');
copyResource(path.resolve(__dirname, './plugin/codegen'), process.argv[2] + '/codegen');
module.exports = {
copyResource
}

View File

@ -13,7 +13,7 @@
],
"scripts": {
"buildparse5": "cd ./third_party/parse5/packages/parse5 && ./node_modules/typescript/bin/tsc --module CommonJS --target ES6 --outDir dist/cjs && cd ../../../../",
"build": "./node_modules/.bin/babel ./third_party/weex-loader/src ./src --out-dir lib && npm run buildparse5 && node ./module-source.js ./lib && node ./uglify-source.js ./lib",
"build": "./node_modules/.bin/babel ./third_party/weex-loader/src ./src --out-dir lib && npm run buildparse5 && node ./module-source.js ./lib && node ./uglify-source.js ./lib && node ./copy_deps_source.js ./lib",
"rich": "cd sample/rich && webpack --config ../../webpack.rich.config.js",
"lite": "cd sample/lite && webpack --config ../../webpack.lite.config.js",
"card": "cd sample/card && webpack --config ../../webpack.rich.config.js",

View File

@ -108,9 +108,6 @@ describe('build', () => {
it('ifDirective', () => {
expectActual('ifDirective');
});
it('importJS', () => {
expectActual('importJS');
});
it('inlineStyle', () => {
expectActual('inlineStyle');
});