open source

This commit is contained in:
lvfulong
2020-11-11 16:17:13 +08:00
parent 4d989f3ecb
commit bc4ca748de
2441 changed files with 623057 additions and 2 deletions
+295
View File
@@ -0,0 +1,295 @@
/*
var canv = document.createElement('canvas');
var ctx = canv.getContext('2d');
ctx.save();
ctx.fillStyle = '#ff0000';
var img = new Image();
img.src = 'http://10.10.20.19:7777/a.jpg';
var bload = false;
img.onload = function(e) {
bload = true;
}
img.addEventListener('load', function() {
})
setInterval(() => {
if (bload) {
console.log('kkk');
ctx.drawImage(img._nativeObj, 0, 0, 100, 100, 0, 0, 100, 100);
}
}, 100);
*/
//require('websocket.js');
// downloadGetHeader('http://s0.tx.zxyh5.com/api/zxy/register.php',(buf)=>{
// alert('ok ' +buf);
// },(e,httprec)=>{
// alert('error');
// },100,100);
// class MyWebSocket{
// constructor(url:string){
// ConchWebSocket.call(this,url);
// }
// }
//var w1 = new MyWebSocket('aaa');
//alert(JSON.stringify(w1));
/*
var ws = new WebSocket('ws://10.10.20.241:7060');
ws.onopen=function(ev){
alert('kkk')
}
function md(e){
console.log('--------------');
}
document.body.addEventListener('mousedown',md);
document.body.addEventListener('mousedown',md);
*/
import test = require('./unitTest');
type Test = test.Test;
class AllTest {
/**
* 1. cloneNode 能正确clone
*/
test_clone(test: Test) {
try {
var b = document.createElement('audio');
var c = b.cloneNode(false);
c.addEventListener('', null);
} catch (e) {
alert('111')
test.err(`
cloneNode之后,应该有 addEventListener 函数。
`);
}
}
/**
* 测试event事件的派发
*/
testEventDispatch(test: Test) {
var called = false;
var canv = document.createElement('canvas');
document.body.appendChild(canv);
canv.addEventListener('mmousemove', (evt) => {
called = true;
});
var evt = new MouseEvent('mmousemove');
evt.clientX = 100;
evt.clientY = 100;
canv.dispatchEvent(evt);
test.eq(called, true, '事件应该能正确发送给canvas');
document.removeChild(canv);
test.neq(window.document._topElement, canv, 'removeChild之后,应该维护_topElement');
}
testEvent_phase(test: Test) {
var canv = document.createElement('canvas');
var result: number[] = [];
document.body.appendChild(canv);
document.addEventListener('mousedown', (evt) => {
result.push(1);
//alert('document capture event');
}, true);
document.body.addEventListener('mousedown', (evt) => {
//alert('body capture event');
result.push(2);
}, true);
canv.addEventListener('mousedown', (evt) => {
//alert('on mousedown');
result.push(3);
});
document.body.addEventListener('mousedown', (evt) => {
//alert('event bubble to body');
result.push(4);
});
document.addEventListener('mousedown', (evt) => {
//alert('event bubble to document');
result.push(5);
});
window.addEventListener('mousedown', (evt) => {
//alert('event bubble to window');
result.push(6);
});
var evt = new MouseEvent('mousedown');
evt.clientX = 100;
evt.clientY = 100;
canv.dispatchEvent(evt);
document.removeChild(canv);
}
testRuntimeVersion(test: Test) {
var rv = conchConfig.getRuntimeVersion();
var b = rv.indexOf('conch');
}
//测试ArrayBuffer的传递和管理
testABToC(test: Test) {
/*
while (true) {
var ab = new ArrayBuffer(1000);
var cp = conch.byteCompress(ab);
var ucp = conch.byteUnCompress(cp);
}
*/
}
//所有接口
testZip(test: Test) {
var zf = new ZipFile();
zf.setSrc('');
zf.forEach((id, name, dir, sz) => {
var ab = zf.readFile(id);
});
zf.close();
}
testFile(test: Test) {
var abv = new Uint32Array([1, 2, 3]);
fs_writeFileSync('d:/temp/ddd.d', abv.buffer);
var ab = fs_readFileSync('d:/temp/ddd.d');
var v1 = new Uint32Array(ab);
if (v1.byteLength != 12 || v1[0] != 1 || v1[1] != 2 || v1[2] != 3)
alert('error:' + arguments.callee.name);
alert(fs_readdirSync('d:/temp'));
//var ab = readBinFileSync('');
}
testWebSocket(test: Test) {
var ws = new WebSocket('');
}
testMD5(test: Test) {
var result = '2a1dd1e1e59d0a384c26951e316cd7e6';
test.eq(result, calcmd5(new Uint32Array([1, 2, 3]).buffer), 'md5计算不正确');
}
testPost(test: Test) {
var ab = new Uint32Array([0, 1, 2]);
conch._postUrl('http://localhost:8888/testpost', 1, ab.buffer, null, (buf) => {
}, (e) => {
}, () => {
return 0;
})
}
testImgErr(test: Test) {
var img = new Image();
img.src = '';
img.onerror = (e) => {
alert('onerror');
}
img.onload = (e) => {
alert('onload');
}
}
testUrlEncode(){
//http://115.159.92.56:8107/update/0?4089:21922|%5B%7B%22m%22%3A%22C_GSVR%22%2C%22c%22%3A0%2C%22p%22%3A%5Bnull%2C%22QQ%22%2Cnull%2C%221%2E0.2%22%5D%2C%22st%22%3A1460718545%7D%5D
//结果不能变
}
testCanvasInterface(){
var c = document.createElement('canvas');
c.width=100;//必须有这个属性,否则夺塔不行
}
testFontInfo(test:Test){
/*
var cn = new ConchNode();
cn.font('normal 100 16px Arial b 1 #ff0000 1 #00ff00 ');
test.eq(1,1,'');
cn.font(' ')
test.eq(1,1,'');
cn.font('')
test.eq(1,1,'');
cn.font('normal 100 28px Microsoft_YaHei 1 #444444 0');
cn.font('normal normal 18px 宋体 2 #000000 0 #000000');
test.eq(1,1,'');
*/
}
testFileReader(test:Test){
var f = new File('file:///d:/temp/test.sh');
var fr = new FileReader();
fr.onload=function(){
alert('ok '+fr.result);
}
fr.readAsText(f);
}
testFileReaderRemote(test:Test){
var f = new File('http://www.layabox.com/statics/images/laya/slider.jpg');
var fr = new FileReader();
fr.onload=function(){
alert('ok');
}
fr.readAsArrayBuffer(f);
}
testImgDecode(test:Test){
var img = new Image();
img.src='http://www.layabox.com/statics/images/laya/slider.jpg';
img.onload=function(){
alert('ok');
}
}
testWebGL1(test:Test){
var canv = document.createElement('canvas');
var gl = canv.getContext('webgl');
var cc=0;
function render(){
cc+=0.001;
gl.clearColor(0,cc,1,1);
gl.clear(0x4100);
gl.flush();
}
setInterval(render,10);
}
}
var xhr = new XMLHttpRequest();
xhr.open('GET','http://dtsg.games.layabox.com/assets/bootstrap/preloading.xml',true);
xhr.onload=function(e){
alert(e);
}
xhr.onerror=function(e){
alert('eee:'+e);
}
//test.testall(AllTest, "");
var canv = new HTMLCanvasElement();
document.body.appendChild(canv);
var gl = canv.getContext('webgl');
function r() {
console.log('kkkkk')
gl.clear(0);
gl.flush();
}
setInterval(r,10);
// // /ws.close(-1,'');
// var f = new conch_File('http://raganwald.com/2014/07/09/javascript-constructor-problem.html');
// var fr = new conch_FileReader();
// fr.onload=()=>{
// alert(fr.result);
// }
// fr.readAsText(f);