fix(frontend): align search and header components with reference
This commit is contained in:
1 parent
4c13ef478c
commit
542daca457
34 files changed
+803
-705
No files matched your search
@@ -0,0 +1,45 @@
|
||||
'use strict';
|
||||
|
||||
const assert = require('node:assert/strict');
|
||||
const fs = require('node:fs');
|
||||
const path = require('node:path');
|
||||
const test = require('node:test');
|
||||
const vm = require('node:vm');
|
||||
const root = path.resolve(__dirname, '../..');
|
||||
const runtime = fs.readFileSync(path.join(root, 'assets/js/runtime/main.js'), 'utf8');
|
||||
|
||||
test('video poster clicks play the same DPlayer instance and reveal its controls', () => {
|
||||
const slide = {};
|
||||
let played = 0;
|
||||
let revealed = false;
|
||||
let handler;
|
||||
const start = runtime.indexOf("_win.bd.on('click', '.swiper-slide.slide-dplayer");
|
||||
const end = runtime.indexOf('//视频列表图封面', start);
|
||||
assert.ok(start > -1 && end > start);
|
||||
vm.runInNewContext(runtime.slice(start, end), {
|
||||
_win: { bd: { on(event, selector, callback) {
|
||||
assert.equal(event, 'click');
|
||||
assert.equal(selector, '.swiper-slide.slide-dplayer:not(.slide-dplayer-played) > *');
|
||||
handler = callback;
|
||||
} } },
|
||||
jQuery(target) {
|
||||
assert.equal(target, slide);
|
||||
return {
|
||||
find(selector) {
|
||||
assert.equal(selector, '.new-dplayer');
|
||||
return { data(key) {
|
||||
assert.equal(key, 'dplayer');
|
||||
return { play() { played++; } };
|
||||
} };
|
||||
},
|
||||
parent() { return { addClass(name) {
|
||||
assert.equal(name, 'slide-dplayer-played');
|
||||
revealed = true;
|
||||
} }; },
|
||||
};
|
||||
},
|
||||
});
|
||||
handler.call(slide);
|
||||
assert.equal(played, 1);
|
||||
assert.equal(revealed, true);
|
||||
});
|
||||
Reference in new issue
Block a user