Skip to content

Commit

Permalink
✅ Add more Renderer benchmarks
Browse files Browse the repository at this point in the history
  • Loading branch information
skerit committed Apr 27, 2024
1 parent eaf9c82 commit 1df9b58
Showing 1 changed file with 48 additions and 31 deletions.
79 changes: 48 additions & 31 deletions benchmark/05-renderer.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,50 +10,67 @@ var source = `
`;

var compiled = hawkejs.compile('test', source);
function onComplete(event) {
console.log(String(event.target));
}

var renderer;
var variables;
const RENDERER = hawkejs.createRenderer();
__Protoblast.Bound.JSON.toDryObject(RENDERER);

renderer = hawkejs.createRenderer();
__Protoblast.Bound.JSON.toDryObject(renderer);
const VARIABLE_TEST_TEMPLATE = hawkejs.compile('variable_test', `
NUMBER: {{ a_number }}
STRING: {{ b_string }}
BOOL: {{ c_boolean }}
ARR: {{ d_array.join('-') }}
MAP: {{ e_object.map.get('a') }}
DATE: {{ f_date }}
`);

const RAW_VARIABLES = {
a_number : 14,
b_string : 'A string',
c_boolean : true,
d_array : [1, 2, 3],
e_object : {
a: 1,
b: 2,
c: 3,
rx: /regex/,
map: new Map([['a', 1], ['b', 2]]),
},
f_date : new Date('2024-04-27 14:33:01'),
};

const createRawVariables = () => {
return {...RAW_VARIABLES};
};

//RENDERER.renderHTML(VARIABLE_TEST_TEMPLATE, createRawVariables()).done((err, result) => console.log(err, result))
//console.log();

suite('Renderer', function() {

suite('Renderer()', function() {
bench('new', function() {
hawkejs.createRenderer();
});

bench('renderHTML()', function() {
renderer = hawkejs.createRenderer();
bench('prepareVariables()', () => {
let raw_variables = createRawVariables();
let prepared = RENDERER.prepareVariables(raw_variables);
});

bench('renderHTML() (Nested element test)', function() {
let renderer = hawkejs.createRenderer();
return renderer.renderHTML('nested_test');
});

bench('renderHTML() (Variable test)', function() {
let renderer = hawkejs.createRenderer();
return renderer.renderHTML(VARIABLE_TEST_TEMPLATE, createRawVariables());
});

bench('toDry()', function() {
renderer = hawkejs.createRenderer();
variables = main.createTestVariables();
let renderer = hawkejs.createRenderer();
let variables = main.createTestVariables();
renderer.variables = variables;
__Protoblast.Bound.JSON.toDryObject(renderer)
});

bench('prepareVariables()', () => {

let raw_variables = {
a_number : 14,
b_string : 'A string',
c_boolean : true,
d_array : [1, 2, 3],
e_object : {
a: 1,
b: 2,
c: 3,
rx: /regex/,
map: new Map([['a', 1], ['b', 2]]),
}
};

let prepared = renderer.prepareVariables(raw_variables);
});
});

0 comments on commit 1df9b58

Please sign in to comment.