From d40ef474ae00cb894a7f502fb36c18caaa38b97c Mon Sep 17 00:00:00 2001 From: Mark Gibson Date: Wed, 7 Feb 2018 12:22:26 +0000 Subject: [PATCH 1/4] See issue #1486 - adds fromJson_ fn to every Blockly.Field, removing Block.newField*FromJson_ helpers --- core/block.js | 82 ++++--------------------------- core/field_angle.js | 10 ++++ core/field_checkbox.js | 10 ++++ core/field_colour.js | 10 ++++ core/field_date.js | 10 ++++ core/field_dropdown.js | 10 ++++ core/field_image.js | 17 +++++++ core/field_label.js | 12 +++++ core/field_number.js | 12 +++++ core/field_textinput.js | 17 +++++++ core/field_variable.js | 15 ++++++ tests/jsunit/field_angle_test.js | 5 ++ tests/jsunit/field_number_test.js | 17 +++++++ 13 files changed, 155 insertions(+), 72 deletions(-) diff --git a/core/block.js b/core/block.js index 20384f870..61e83291f 100644 --- a/core/block.js +++ b/core/block.js @@ -1224,37 +1224,35 @@ Blockly.Block.prototype.interpolate_ = function(message, args, lastDummyAlign) { input = this.appendDummyInput(element['name']); break; case 'field_label': - field = Blockly.Block.newFieldLabelFromJson_(element); + field = Blockly.FieldLabel.fromJson_(element); break; case 'field_input': - field = Blockly.Block.newFieldTextInputFromJson_(element); + field = Blockly.FieldTextInput.fromJson_(element); break; case 'field_angle': - field = new Blockly.FieldAngle(element['angle']); + field = Blockly.FieldAngle.fromJson_(element); break; case 'field_checkbox': - field = new Blockly.FieldCheckbox( - element['checked'] ? 'TRUE' : 'FALSE'); + field = Blockly.FieldCheckbox.fromJson_(element); break; case 'field_colour': - field = new Blockly.FieldColour(element['colour']); + field = Blockly.FieldColour.fromJson_(element); break; case 'field_variable': - field = Blockly.Block.newFieldVariableFromJson_(element); + field = Blockly.FieldVariable.fromJson_(element); break; case 'field_dropdown': - field = new Blockly.FieldDropdown(element['options']); + field = Blockly.FieldDropdown.fromJson_(element); break; case 'field_image': - field = Blockly.Block.newFieldImageFromJson_(element); + field = Blockly.FieldImage.fromJson_(element); break; case 'field_number': - field = new Blockly.FieldNumber(element['value'], - element['min'], element['max'], element['precision']); + field = Blockly.FieldNumber.fromJson_(element); break; case 'field_date': if (Blockly.FieldDate) { - field = new Blockly.FieldDate(element['date']); + field = Blockly.FieldDate.fromJson_(element); break; } // Fall through if FieldDate is not compiled in. @@ -1285,66 +1283,6 @@ Blockly.Block.prototype.interpolate_ = function(message, args, lastDummyAlign) { } }; -/** - * Helper function to construct a FieldImage from a JSON arg object, - * dereferencing any string table references. - * @param {!Object} options A JSON object with options (src, width, height, and alt). - * @returns {!Blockly.FieldImage} The new image. - * @private - */ -Blockly.Block.newFieldImageFromJson_ = function(options) { - var src = Blockly.utils.replaceMessageReferences(options['src']); - var width = Number(Blockly.utils.replaceMessageReferences(options['width'])); - var height = - Number(Blockly.utils.replaceMessageReferences(options['height'])); - var alt = Blockly.utils.replaceMessageReferences(options['alt']); - return new Blockly.FieldImage(src, width, height, alt); -}; - -/** - * Helper function to construct a FieldLabel from a JSON arg object, - * dereferencing any string table references. - * @param {!Object} options A JSON object with options (text, and class). - * @returns {!Blockly.FieldLabel} The new label. - * @private - */ -Blockly.Block.newFieldLabelFromJson_ = function(options) { - var text = Blockly.utils.replaceMessageReferences(options['text']); - return new Blockly.FieldLabel(text, options['class']); -}; - -/** - * Helper function to construct a FieldTextInput from a JSON arg object, - * dereferencing any string table references. - * @param {!Object} options A JSON object with options (text, class, and - * spellcheck). - * @returns {!Blockly.FieldTextInput} The new text input. - * @private - */ -Blockly.Block.newFieldTextInputFromJson_ = function(options) { - var text = Blockly.utils.replaceMessageReferences(options['text']); - var field = new Blockly.FieldTextInput(text, options['class']); - if (typeof options['spellcheck'] == 'boolean') { - field.setSpellcheck(options['spellcheck']); - } - return field; -}; - -/** - * Helper function to construct a FieldVariable from a JSON arg object, - * dereferencing any string table references. - * @param {!Object} options A JSON object with options (variable). - * @returns {!Blockly.FieldVariable} The variable field. - * @private - */ -Blockly.Block.newFieldVariableFromJson_ = function(options) { - var varname = Blockly.utils.replaceMessageReferences(options['variable']); - var variableTypes = options['variableTypes']; - var defaultType = options['defaultType']; - return new Blockly.FieldVariable(varname, null, variableTypes, defaultType); -}; - - /** * Add a value input, statement input or local variable to this block. * @param {number} type Either Blockly.INPUT_VALUE or Blockly.NEXT_STATEMENT or diff --git a/core/field_angle.js b/core/field_angle.js index 61bfd0e06..5a7339595 100644 --- a/core/field_angle.js +++ b/core/field_angle.js @@ -53,6 +53,16 @@ Blockly.FieldAngle = function(opt_value, opt_validator) { }; goog.inherits(Blockly.FieldAngle, Blockly.FieldTextInput); +/** + * Construct a FieldAngle from a JSON arg object. + * @param {!Object} options A JSON object with options (angle). + * @returns {!Blockly.FieldAngle} The new field instance. + * @package + */ +Blockly.FieldAngle.fromJson_ = function(options) { + return new Blockly.FieldAngle(options['angle']) +}; + /** * Round angles to the nearest 15 degrees when using mouse. * Set to 0 to disable rounding. diff --git a/core/field_checkbox.js b/core/field_checkbox.js index 0f2c78c6a..04850c54f 100644 --- a/core/field_checkbox.js +++ b/core/field_checkbox.js @@ -46,6 +46,16 @@ Blockly.FieldCheckbox = function(state, opt_validator) { }; goog.inherits(Blockly.FieldCheckbox, Blockly.Field); +/** + * Construct a FieldCheckbox from a JSON arg object. + * @param {!Object} options A JSON object with options (checked). + * @returns {!Blockly.FieldCheckbox} The new field instance. + * @package + */ +Blockly.FieldCheckbox.fromJson_ = function(options) { + return new Blockly.FieldCheckbox(options['checked'] ? 'TRUE' : 'FALSE'); +}; + /** * Character for the checkmark. */ diff --git a/core/field_colour.js b/core/field_colour.js index c7d26d0a9..f5275682d 100644 --- a/core/field_colour.js +++ b/core/field_colour.js @@ -52,6 +52,16 @@ Blockly.FieldColour = function(colour, opt_validator) { }; goog.inherits(Blockly.FieldColour, Blockly.Field); +/** + * Construct a FieldColour from a JSON arg object. + * @param {!Object} options A JSON object with options (colour). + * @returns {!Blockly.FieldColour} The new field instance. + * @package + */ +Blockly.FieldColour.fromJson_ = function(options) { + return new Blockly.FieldColour(options['colour']); +}; + /** * By default use the global constants for colours. * @type {Array.} diff --git a/core/field_date.js b/core/field_date.js index 2133aa3d6..f44646384 100644 --- a/core/field_date.js +++ b/core/field_date.js @@ -59,6 +59,16 @@ Blockly.FieldDate = function(date, opt_validator) { }; goog.inherits(Blockly.FieldDate, Blockly.Field); +/** + * Construct a FieldDate from a JSON arg object. + * @param {!Object} options A JSON object with options (date). + * @returns {!Blockly.FieldDate} The new field instance. + * @package + */ +Blockly.FieldDate.fromJson_ = function(options) { + return new Blockly.FieldDate(options['date']); +}; + /** * Mouse cursor style when over the hotspot that initiates the editor. */ diff --git a/core/field_dropdown.js b/core/field_dropdown.js index 2a1ceec9d..26dfa91a2 100644 --- a/core/field_dropdown.js +++ b/core/field_dropdown.js @@ -63,6 +63,16 @@ Blockly.FieldDropdown = function(menuGenerator, opt_validator) { }; goog.inherits(Blockly.FieldDropdown, Blockly.Field); +/** + * Construct a FieldDropdown from a JSON arg object. + * @param {!Object} options A JSON object with options (options). + * @returns {!Blockly.FieldDropdown} The new field instance. + * @package + */ +Blockly.FieldDropdown.fromJson_ = function(options) { + return new Blockly.FieldDropdown(options['options']); +}; + /** * Horizontal distance that a checkmark overhangs the dropdown. */ diff --git a/core/field_image.js b/core/field_image.js index 54882d199..920b91ef6 100644 --- a/core/field_image.js +++ b/core/field_image.js @@ -60,6 +60,23 @@ Blockly.FieldImage = function(src, width, height, opt_alt, opt_onClick) { }; goog.inherits(Blockly.FieldImage, Blockly.Field); +/** + * Construct a FieldImage from a JSON arg object, + * dereferencing any string table references. + * @param {!Object} options A JSON object with options (src, width, height, and + * alt). + * @returns {!Blockly.FieldImage} The new field instance. + * @package + */ +Blockly.FieldImage.fromJson_ = function(options) { + var src = Blockly.utils.replaceMessageReferences(options['src']); + var width = Number(Blockly.utils.replaceMessageReferences(options['width'])); + var height = + Number(Blockly.utils.replaceMessageReferences(options['height'])); + var alt = Blockly.utils.replaceMessageReferences(options['alt']); + return new Blockly.FieldImage(src, width, height, alt); +}; + /** * Editable fields are saved by the XML renderer, non-editable fields are not. */ diff --git a/core/field_label.js b/core/field_label.js index f4bca6a24..a9730356a 100644 --- a/core/field_label.js +++ b/core/field_label.js @@ -46,6 +46,18 @@ Blockly.FieldLabel = function(text, opt_class) { }; goog.inherits(Blockly.FieldLabel, Blockly.Field); +/** + * Construct a FieldLabel from a JSON arg object, + * dereferencing any string table references. + * @param {!Object} options A JSON object with options (text, and class). + * @returns {!Blockly.FieldLabel} The new field instance. + * @package + */ +Blockly.FieldLabel.fromJson_ = function(options) { + var text = Blockly.utils.replaceMessageReferences(options['text']); + return new Blockly.FieldLabel(text, options['class']); +}; + /** * Editable fields are saved by the XML renderer, non-editable fields are not. */ diff --git a/core/field_number.js b/core/field_number.js index d3575fde3..8a6e2537d 100644 --- a/core/field_number.js +++ b/core/field_number.js @@ -53,6 +53,18 @@ Blockly.FieldNumber = function(opt_value, opt_min, opt_max, opt_precision, }; goog.inherits(Blockly.FieldNumber, Blockly.FieldTextInput); +/** + * Construct a FieldNumber from a JSON arg object. + * @param {!Object} options A JSON object with options (value, min, max, and + * precision). + * @returns {!Blockly.FieldNumber} The new field instance. + * @package + */ +Blockly.FieldNumber.fromJson_ = function(options) { + return new Blockly.FieldNumber(options['value'], + options['min'], options['max'], options['precision']); +}; + /** * Set the maximum, minimum and precision constraints on this field. * Any of these properties may be undefiend or NaN to be disabled. diff --git a/core/field_textinput.js b/core/field_textinput.js index 40ae94e54..b570a6ff0 100644 --- a/core/field_textinput.js +++ b/core/field_textinput.js @@ -50,6 +50,23 @@ Blockly.FieldTextInput = function(text, opt_validator) { }; goog.inherits(Blockly.FieldTextInput, Blockly.Field); +/** + * Construct a FieldTextInput from a JSON arg object, + * dereferencing any string table references. + * @param {!Object} options A JSON object with options (text, class, and + * spellcheck). + * @returns {!Blockly.FieldTextInput} The new field instance. + * @package + */ +Blockly.FieldTextInput.fromJson_ = function(options) { + var text = Blockly.utils.replaceMessageReferences(options['text']); + var field = new Blockly.FieldTextInput(text, options['class']); + if (typeof options['spellcheck'] === 'boolean') { + field.setSpellcheck(options['spellcheck']); + } + return field; +}; + /** * Point size of text. Should match blocklyText's font-size in CSS. */ diff --git a/core/field_variable.js b/core/field_variable.js index 7fbae6d6d..0e70b6f75 100644 --- a/core/field_variable.js +++ b/core/field_variable.js @@ -61,6 +61,21 @@ Blockly.FieldVariable = function(varname, opt_validator, opt_variableTypes, }; goog.inherits(Blockly.FieldVariable, Blockly.FieldDropdown); +/** + * Construct a FieldVariable from a JSON arg object, + * dereferencing any string table references. + * @param {!Object} options A JSON object with options (variable, + * variableTypes, and defaultType). + * @returns {!Blockly.FieldVariable} The new field instance. + * @package + */ +Blockly.FieldVariable.fromJson_ = function(options) { + var varname = Blockly.utils.replaceMessageReferences(options['variable']); + var variableTypes = options['variableTypes']; + var defaultType = options['defaultType']; + return new Blockly.FieldVariable(varname, null, variableTypes, defaultType); +}; + /** * Initialize everything needed to render this field. This includes making sure * that the field's value is valid. diff --git a/tests/jsunit/field_angle_test.js b/tests/jsunit/field_angle_test.js index e5646d96c..1f911e82b 100644 --- a/tests/jsunit/field_angle_test.js +++ b/tests/jsunit/field_angle_test.js @@ -37,3 +37,8 @@ function test_fieldangle_constructor() { assertEquals(new Blockly.FieldAngle('bad').getValue(), '0'); assertEquals(new Blockly.FieldAngle(NaN).getValue(), '0'); } + +function test_fieldangle_fromJson() { + assertEquals(Blockly.FieldAngle.fromJson_({}).getValue(), '0'); + assertEquals(Blockly.FieldAngle.fromJson_({ angle: 1 }).getValue(), '1'); +} diff --git a/tests/jsunit/field_number_test.js b/tests/jsunit/field_number_test.js index 20f277036..b131ac3f7 100644 --- a/tests/jsunit/field_number_test.js +++ b/tests/jsunit/field_number_test.js @@ -61,3 +61,20 @@ function test_fieldnumber_constructor() { field = new Blockly.FieldNumber(NaN); assertEquals(field.getValue(), '0'); } + +function test_fieldnumber_fromJson() { + assertEquals(Blockly.FieldNumber.fromJson_({}).getValue(), '0'); + assertEquals(Blockly.FieldNumber.fromJson_({ value: 1 }).getValue(), '1'); + + // All options + var field = Blockly.FieldNumber.fromJson_({ + value: 0, + min: -128, + max: 127, + precision: 1 + }); + assertEquals(field.getValue(), '0'); + assertEquals(field.min_, -128); + assertEquals(field.max_, 127); + assertEquals(field.precision_, 1); +} From 6ab7cd25f5c9cebb3d634d19d415be8afa508f84 Mon Sep 17 00:00:00 2001 From: Mark Gibson Date: Wed, 7 Feb 2018 12:44:01 +0000 Subject: [PATCH 2/4] Missing semi-colon! --- core/field_angle.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/field_angle.js b/core/field_angle.js index 5a7339595..56f940042 100644 --- a/core/field_angle.js +++ b/core/field_angle.js @@ -60,7 +60,7 @@ goog.inherits(Blockly.FieldAngle, Blockly.FieldTextInput); * @package */ Blockly.FieldAngle.fromJson_ = function(options) { - return new Blockly.FieldAngle(options['angle']) + return new Blockly.FieldAngle(options['angle']); }; /** From 2308ae8c22181804f63a85193e318962ebe97fe3 Mon Sep 17 00:00:00 2001 From: Mark Gibson Date: Wed, 7 Feb 2018 18:18:35 +0000 Subject: [PATCH 3/4] Remove underscore from fromJson_ --- core/block.js | 20 ++++++++++---------- core/field_angle.js | 2 +- core/field_checkbox.js | 2 +- core/field_colour.js | 2 +- core/field_date.js | 2 +- core/field_dropdown.js | 2 +- core/field_image.js | 2 +- core/field_label.js | 2 +- core/field_number.js | 2 +- core/field_textinput.js | 2 +- core/field_variable.js | 2 +- 11 files changed, 20 insertions(+), 20 deletions(-) diff --git a/core/block.js b/core/block.js index 61e83291f..7558ce1e4 100644 --- a/core/block.js +++ b/core/block.js @@ -1224,35 +1224,35 @@ Blockly.Block.prototype.interpolate_ = function(message, args, lastDummyAlign) { input = this.appendDummyInput(element['name']); break; case 'field_label': - field = Blockly.FieldLabel.fromJson_(element); + field = Blockly.FieldLabel.fromJson(element); break; case 'field_input': - field = Blockly.FieldTextInput.fromJson_(element); + field = Blockly.FieldTextInput.fromJson(element); break; case 'field_angle': - field = Blockly.FieldAngle.fromJson_(element); + field = Blockly.FieldAngle.fromJson(element); break; case 'field_checkbox': - field = Blockly.FieldCheckbox.fromJson_(element); + field = Blockly.FieldCheckbox.fromJson(element); break; case 'field_colour': - field = Blockly.FieldColour.fromJson_(element); + field = Blockly.FieldColour.fromJson(element); break; case 'field_variable': - field = Blockly.FieldVariable.fromJson_(element); + field = Blockly.FieldVariable.fromJson(element); break; case 'field_dropdown': - field = Blockly.FieldDropdown.fromJson_(element); + field = Blockly.FieldDropdown.fromJson(element); break; case 'field_image': - field = Blockly.FieldImage.fromJson_(element); + field = Blockly.FieldImage.fromJson(element); break; case 'field_number': - field = Blockly.FieldNumber.fromJson_(element); + field = Blockly.FieldNumber.fromJson(element); break; case 'field_date': if (Blockly.FieldDate) { - field = Blockly.FieldDate.fromJson_(element); + field = Blockly.FieldDate.fromJson(element); break; } // Fall through if FieldDate is not compiled in. diff --git a/core/field_angle.js b/core/field_angle.js index 56f940042..59384d08b 100644 --- a/core/field_angle.js +++ b/core/field_angle.js @@ -59,7 +59,7 @@ goog.inherits(Blockly.FieldAngle, Blockly.FieldTextInput); * @returns {!Blockly.FieldAngle} The new field instance. * @package */ -Blockly.FieldAngle.fromJson_ = function(options) { +Blockly.FieldAngle.fromJson = function(options) { return new Blockly.FieldAngle(options['angle']); }; diff --git a/core/field_checkbox.js b/core/field_checkbox.js index 04850c54f..d723bab1f 100644 --- a/core/field_checkbox.js +++ b/core/field_checkbox.js @@ -52,7 +52,7 @@ goog.inherits(Blockly.FieldCheckbox, Blockly.Field); * @returns {!Blockly.FieldCheckbox} The new field instance. * @package */ -Blockly.FieldCheckbox.fromJson_ = function(options) { +Blockly.FieldCheckbox.fromJson = function(options) { return new Blockly.FieldCheckbox(options['checked'] ? 'TRUE' : 'FALSE'); }; diff --git a/core/field_colour.js b/core/field_colour.js index f5275682d..77632c184 100644 --- a/core/field_colour.js +++ b/core/field_colour.js @@ -58,7 +58,7 @@ goog.inherits(Blockly.FieldColour, Blockly.Field); * @returns {!Blockly.FieldColour} The new field instance. * @package */ -Blockly.FieldColour.fromJson_ = function(options) { +Blockly.FieldColour.fromJson = function(options) { return new Blockly.FieldColour(options['colour']); }; diff --git a/core/field_date.js b/core/field_date.js index f44646384..53ced0e14 100644 --- a/core/field_date.js +++ b/core/field_date.js @@ -65,7 +65,7 @@ goog.inherits(Blockly.FieldDate, Blockly.Field); * @returns {!Blockly.FieldDate} The new field instance. * @package */ -Blockly.FieldDate.fromJson_ = function(options) { +Blockly.FieldDate.fromJson = function(options) { return new Blockly.FieldDate(options['date']); }; diff --git a/core/field_dropdown.js b/core/field_dropdown.js index 26dfa91a2..367e338b7 100644 --- a/core/field_dropdown.js +++ b/core/field_dropdown.js @@ -69,7 +69,7 @@ goog.inherits(Blockly.FieldDropdown, Blockly.Field); * @returns {!Blockly.FieldDropdown} The new field instance. * @package */ -Blockly.FieldDropdown.fromJson_ = function(options) { +Blockly.FieldDropdown.fromJson = function(options) { return new Blockly.FieldDropdown(options['options']); }; diff --git a/core/field_image.js b/core/field_image.js index 920b91ef6..eaa8e9995 100644 --- a/core/field_image.js +++ b/core/field_image.js @@ -68,7 +68,7 @@ goog.inherits(Blockly.FieldImage, Blockly.Field); * @returns {!Blockly.FieldImage} The new field instance. * @package */ -Blockly.FieldImage.fromJson_ = function(options) { +Blockly.FieldImage.fromJson = function(options) { var src = Blockly.utils.replaceMessageReferences(options['src']); var width = Number(Blockly.utils.replaceMessageReferences(options['width'])); var height = diff --git a/core/field_label.js b/core/field_label.js index a9730356a..039f73a75 100644 --- a/core/field_label.js +++ b/core/field_label.js @@ -53,7 +53,7 @@ goog.inherits(Blockly.FieldLabel, Blockly.Field); * @returns {!Blockly.FieldLabel} The new field instance. * @package */ -Blockly.FieldLabel.fromJson_ = function(options) { +Blockly.FieldLabel.fromJson = function(options) { var text = Blockly.utils.replaceMessageReferences(options['text']); return new Blockly.FieldLabel(text, options['class']); }; diff --git a/core/field_number.js b/core/field_number.js index 8a6e2537d..ca90d4d2c 100644 --- a/core/field_number.js +++ b/core/field_number.js @@ -60,7 +60,7 @@ goog.inherits(Blockly.FieldNumber, Blockly.FieldTextInput); * @returns {!Blockly.FieldNumber} The new field instance. * @package */ -Blockly.FieldNumber.fromJson_ = function(options) { +Blockly.FieldNumber.fromJson = function(options) { return new Blockly.FieldNumber(options['value'], options['min'], options['max'], options['precision']); }; diff --git a/core/field_textinput.js b/core/field_textinput.js index b570a6ff0..a8490ab18 100644 --- a/core/field_textinput.js +++ b/core/field_textinput.js @@ -58,7 +58,7 @@ goog.inherits(Blockly.FieldTextInput, Blockly.Field); * @returns {!Blockly.FieldTextInput} The new field instance. * @package */ -Blockly.FieldTextInput.fromJson_ = function(options) { +Blockly.FieldTextInput.fromJson = function(options) { var text = Blockly.utils.replaceMessageReferences(options['text']); var field = new Blockly.FieldTextInput(text, options['class']); if (typeof options['spellcheck'] === 'boolean') { diff --git a/core/field_variable.js b/core/field_variable.js index 0e70b6f75..333fee2d6 100644 --- a/core/field_variable.js +++ b/core/field_variable.js @@ -69,7 +69,7 @@ goog.inherits(Blockly.FieldVariable, Blockly.FieldDropdown); * @returns {!Blockly.FieldVariable} The new field instance. * @package */ -Blockly.FieldVariable.fromJson_ = function(options) { +Blockly.FieldVariable.fromJson = function(options) { var varname = Blockly.utils.replaceMessageReferences(options['variable']); var variableTypes = options['variableTypes']; var defaultType = options['defaultType']; From 28d3d68b62b62484dad1ead2c08bcd1194d15037 Mon Sep 17 00:00:00 2001 From: Mark Gibson Date: Wed, 7 Feb 2018 18:30:22 +0000 Subject: [PATCH 4/4] Fix fromJson_ to fromJson in tests --- tests/jsunit/field_angle_test.js | 4 ++-- tests/jsunit/field_number_test.js | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/tests/jsunit/field_angle_test.js b/tests/jsunit/field_angle_test.js index 1f911e82b..66b6ab009 100644 --- a/tests/jsunit/field_angle_test.js +++ b/tests/jsunit/field_angle_test.js @@ -39,6 +39,6 @@ function test_fieldangle_constructor() { } function test_fieldangle_fromJson() { - assertEquals(Blockly.FieldAngle.fromJson_({}).getValue(), '0'); - assertEquals(Blockly.FieldAngle.fromJson_({ angle: 1 }).getValue(), '1'); + assertEquals(Blockly.FieldAngle.fromJson({}).getValue(), '0'); + assertEquals(Blockly.FieldAngle.fromJson({ angle: 1 }).getValue(), '1'); } diff --git a/tests/jsunit/field_number_test.js b/tests/jsunit/field_number_test.js index b131ac3f7..507af7a4b 100644 --- a/tests/jsunit/field_number_test.js +++ b/tests/jsunit/field_number_test.js @@ -63,11 +63,11 @@ function test_fieldnumber_constructor() { } function test_fieldnumber_fromJson() { - assertEquals(Blockly.FieldNumber.fromJson_({}).getValue(), '0'); - assertEquals(Blockly.FieldNumber.fromJson_({ value: 1 }).getValue(), '1'); + assertEquals(Blockly.FieldNumber.fromJson({}).getValue(), '0'); + assertEquals(Blockly.FieldNumber.fromJson({ value: 1 }).getValue(), '1'); // All options - var field = Blockly.FieldNumber.fromJson_({ + var field = Blockly.FieldNumber.fromJson({ value: 0, min: -128, max: 127,