Moved setTooltip tests into the customization suite.

This commit is contained in:
Beka Westberg
2019-08-16 15:20:02 -07:00
parent 1e73f69cea
commit 9fde484a87

View File

@@ -341,147 +341,6 @@ suite('Abstract Fields', function() {
chai.assert(this.field.doValueUpdate_.calledOnce);
});
});
suite('setTooltip', function() {
setup(function() {
this.workspace = new Blockly.WorkspaceSvg({});
this.workspace.createDom();
});
teardown(function() {
this.workspace = null;
});
test('Before Append', function() {
Blockly.Blocks['tooltip'] = {
init: function() {
var field = new Blockly.FieldTextInput('default');
field.setTooltip('tooltip');
this.appendDummyInput()
.appendField(field, 'TOOLTIP');
},
};
var block = Blockly.Xml.domToBlock(Blockly.Xml.textToDom(
'<xml xmlns="https://developers.google.com/blockly/xml">' +
' <block type="tooltip"></block>' +
'</xml>'
).children[0], this.workspace);
var field = block.getField('TOOLTIP');
chai.assert.equal(field.getClickTarget_().tooltip, 'tooltip');
delete Blockly.Blocks['tooltip'];
});
test('After Append', function() {
Blockly.Blocks['tooltip'] = {
init: function() {
var field = new Blockly.FieldTextInput('default');
this.appendDummyInput()
.appendField(field, 'TOOLTIP');
field.setTooltip('tooltip');
},
};
var block = Blockly.Xml.domToBlock(Blockly.Xml.textToDom(
'<xml xmlns="https://developers.google.com/blockly/xml">' +
' <block type="tooltip"></block>' +
'</xml>'
).children[0], this.workspace);
var field = block.getField('TOOLTIP');
chai.assert.equal(field.getClickTarget_().tooltip, 'tooltip');
delete Blockly.Blocks['tooltip'];
});
test('After Block Creation', function() {
Blockly.Blocks['tooltip'] = {
init: function() {
var field = new Blockly.FieldTextInput('default');
this.appendDummyInput()
.appendField(field, 'TOOLTIP');
},
};
var block = Blockly.Xml.domToBlock(Blockly.Xml.textToDom(
'<xml xmlns="https://developers.google.com/blockly/xml">' +
' <block type="tooltip"></block>' +
'</xml>'
).children[0], this.workspace);
var field = block.getField('TOOLTIP');
field.setTooltip('tooltip');
chai.assert.equal(field.getClickTarget_().tooltip, 'tooltip');
delete Blockly.Blocks['tooltip'];
});
test('Dynamic Function', function() {
Blockly.Blocks['tooltip'] = {
init: function() {
var field = new Blockly.FieldTextInput('default');
field.setTooltip(this.tooltipFunc);
this.appendDummyInput()
.appendField(field, 'TOOLTIP');
},
tooltipFunc: function() {
return this.getFieldValue('TOOLTIP');
}
};
var block = Blockly.Xml.domToBlock(Blockly.Xml.textToDom(
'<xml xmlns="https://developers.google.com/blockly/xml">' +
' <block type="tooltip"></block>' +
'</xml>'
).children[0], this.workspace);
var field = block.getField('TOOLTIP');
chai.assert.equal(field.getClickTarget_().tooltip, block.tooltipFunc);
delete Blockly.Blocks['tooltip'];
});
test('Element', function() {
Blockly.Blocks['tooltip'] = {
init: function() {
var field = new Blockly.FieldTextInput('default');
field.setTooltip(this.element);
this.appendDummyInput()
.appendField(field, 'TOOLTIP');
},
element: {
tooltip: 'tooltip'
}
};
var block = Blockly.Xml.domToBlock(Blockly.Xml.textToDom(
'<xml xmlns="https://developers.google.com/blockly/xml">' +
' <block type="tooltip"></block>' +
'</xml>'
).children[0], this.workspace);
var field = block.getField('TOOLTIP');
chai.assert.equal(field.getClickTarget_().tooltip, block.element);
delete Blockly.Blocks['tooltip'];
});
test('Null', function() {
Blockly.Blocks['tooltip'] = {
init: function() {
var field = new Blockly.FieldTextInput('default');
field.setTooltip(null);
this.appendDummyInput()
.appendField(field, 'TOOLTIP');
},
};
var block = Blockly.Xml.domToBlock(Blockly.Xml.textToDom(
'<xml xmlns="https://developers.google.com/blockly/xml">' +
' <block type="tooltip"></block>' +
'</xml>'
).children[0], this.workspace);
var field = block.getField('TOOLTIP');
chai.assert.equal(field.getClickTarget_().tooltip, block);
delete Blockly.Blocks['tooltip'];
});
test('Undefined', function() {
Blockly.Blocks['tooltip'] = {
init: function() {
var field = new Blockly.FieldTextInput('default');
this.appendDummyInput()
.appendField(field, 'TOOLTIP');
},
};
var block = Blockly.Xml.domToBlock(Blockly.Xml.textToDom(
'<xml xmlns="https://developers.google.com/blockly/xml">' +
' <block type="tooltip"></block>' +
'</xml>'
).children[0], this.workspace);
var field = block.getField('TOOLTIP');
chai.assert.equal(field.getClickTarget_().tooltip, block);
delete Blockly.Blocks['tooltip'];
});
});
suite('Customization', function() {
// All this field does is wrap the abstract field.
function CustomField(opt_config) {
@@ -526,6 +385,147 @@ suite('Abstract Fields', function() {
chai.assert.equal(field.tooltip_, 'test tooltip');
});
});
suite('setTooltip', function() {
setup(function() {
this.workspace = new Blockly.WorkspaceSvg({});
this.workspace.createDom();
});
teardown(function() {
this.workspace = null;
});
test('Before Append', function() {
Blockly.Blocks['tooltip'] = {
init: function() {
var field = new Blockly.FieldTextInput('default');
field.setTooltip('tooltip');
this.appendDummyInput()
.appendField(field, 'TOOLTIP');
},
};
var block = Blockly.Xml.domToBlock(Blockly.Xml.textToDom(
'<xml xmlns="https://developers.google.com/blockly/xml">' +
' <block type="tooltip"></block>' +
'</xml>'
).children[0], this.workspace);
var field = block.getField('TOOLTIP');
chai.assert.equal(field.getClickTarget_().tooltip, 'tooltip');
delete Blockly.Blocks['tooltip'];
});
test('After Append', function() {
Blockly.Blocks['tooltip'] = {
init: function() {
var field = new Blockly.FieldTextInput('default');
this.appendDummyInput()
.appendField(field, 'TOOLTIP');
field.setTooltip('tooltip');
},
};
var block = Blockly.Xml.domToBlock(Blockly.Xml.textToDom(
'<xml xmlns="https://developers.google.com/blockly/xml">' +
' <block type="tooltip"></block>' +
'</xml>'
).children[0], this.workspace);
var field = block.getField('TOOLTIP');
chai.assert.equal(field.getClickTarget_().tooltip, 'tooltip');
delete Blockly.Blocks['tooltip'];
});
test('After Block Creation', function() {
Blockly.Blocks['tooltip'] = {
init: function() {
var field = new Blockly.FieldTextInput('default');
this.appendDummyInput()
.appendField(field, 'TOOLTIP');
},
};
var block = Blockly.Xml.domToBlock(Blockly.Xml.textToDom(
'<xml xmlns="https://developers.google.com/blockly/xml">' +
' <block type="tooltip"></block>' +
'</xml>'
).children[0], this.workspace);
var field = block.getField('TOOLTIP');
field.setTooltip('tooltip');
chai.assert.equal(field.getClickTarget_().tooltip, 'tooltip');
delete Blockly.Blocks['tooltip'];
});
test('Dynamic Function', function() {
Blockly.Blocks['tooltip'] = {
init: function() {
var field = new Blockly.FieldTextInput('default');
field.setTooltip(this.tooltipFunc);
this.appendDummyInput()
.appendField(field, 'TOOLTIP');
},
tooltipFunc: function() {
return this.getFieldValue('TOOLTIP');
}
};
var block = Blockly.Xml.domToBlock(Blockly.Xml.textToDom(
'<xml xmlns="https://developers.google.com/blockly/xml">' +
' <block type="tooltip"></block>' +
'</xml>'
).children[0], this.workspace);
var field = block.getField('TOOLTIP');
chai.assert.equal(field.getClickTarget_().tooltip, block.tooltipFunc);
delete Blockly.Blocks['tooltip'];
});
test('Element', function() {
Blockly.Blocks['tooltip'] = {
init: function() {
var field = new Blockly.FieldTextInput('default');
field.setTooltip(this.element);
this.appendDummyInput()
.appendField(field, 'TOOLTIP');
},
element: {
tooltip: 'tooltip'
}
};
var block = Blockly.Xml.domToBlock(Blockly.Xml.textToDom(
'<xml xmlns="https://developers.google.com/blockly/xml">' +
' <block type="tooltip"></block>' +
'</xml>'
).children[0], this.workspace);
var field = block.getField('TOOLTIP');
chai.assert.equal(field.getClickTarget_().tooltip, block.element);
delete Blockly.Blocks['tooltip'];
});
test('Null', function() {
Blockly.Blocks['tooltip'] = {
init: function() {
var field = new Blockly.FieldTextInput('default');
field.setTooltip(null);
this.appendDummyInput()
.appendField(field, 'TOOLTIP');
},
};
var block = Blockly.Xml.domToBlock(Blockly.Xml.textToDom(
'<xml xmlns="https://developers.google.com/blockly/xml">' +
' <block type="tooltip"></block>' +
'</xml>'
).children[0], this.workspace);
var field = block.getField('TOOLTIP');
chai.assert.equal(field.getClickTarget_().tooltip, block);
delete Blockly.Blocks['tooltip'];
});
test('Undefined', function() {
Blockly.Blocks['tooltip'] = {
init: function() {
var field = new Blockly.FieldTextInput('default');
this.appendDummyInput()
.appendField(field, 'TOOLTIP');
},
};
var block = Blockly.Xml.domToBlock(Blockly.Xml.textToDom(
'<xml xmlns="https://developers.google.com/blockly/xml">' +
' <block type="tooltip"></block>' +
'</xml>'
).children[0], this.workspace);
var field = block.getField('TOOLTIP');
chai.assert.equal(field.getClickTarget_().tooltip, block);
delete Blockly.Blocks['tooltip'];
});
});
});
});
});