feat: Add a VarTypeChange event. (#8402)

* feat: Add a VarTypeChange event.

* chore: Update copyright date.

* refactor: Inline fields in the constructor.
This commit is contained in:
Aaron Dodson
2024-07-29 12:00:52 -07:00
committed by GitHub
parent af0a724b3e
commit 82c7aad4e7
5 changed files with 175 additions and 0 deletions

View File

@@ -0,0 +1,43 @@
/**
* @license
* Copyright 2024 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
import {assert} from '../../node_modules/chai/chai.js';
import {
sharedTestSetup,
sharedTestTeardown,
} from './test_helpers/setup_teardown.js';
suite('Var Type Change Event', function () {
setup(function () {
sharedTestSetup.call(this);
this.workspace = new Blockly.Workspace();
});
teardown(function () {
sharedTestTeardown.call(this);
});
suite('Serialization', function () {
test('variable type change events round-trip through JSON', function () {
const varModel = new Blockly.VariableModel(
this.workspace,
'name',
'foo',
'id',
);
const origEvent = new Blockly.Events.VarTypeChange(
varModel,
'foo',
'bar',
);
const json = origEvent.toJson();
const newEvent = new Blockly.Events.fromJson(json, this.workspace);
assert.deepEqual(newEvent, origEvent);
});
});
});

View File

@@ -76,6 +76,7 @@
import './event_var_create_test.js';
import './event_var_delete_test.js';
import './event_var_rename_test.js';
import './event_var_type_change_test.js';
import './event_viewport_test.js';
import './extensions_test.js';
import './field_checkbox_test.js';