UNPKG

newdavinci-blockly

Version:
68 lines (63 loc) 2.27 kB
/** * @license * Blockly Tests * * Copyright 2014 Google Inc. * https://developers.google.com/blockly/ * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ 'use strict'; var XML_TEXT = ['<xml xmlns="http://www.w3.org/1999/xhtml">', ' <block type="controls_repeat_ext" id="10" inline="true" x="21" y="23">', ' <value name="TIMES">', ' <block type="math_number" id="11">', ' <field name="NUM">10</field>', ' </block>', ' </value>', ' <statement name="DO">', ' <block type="variables_set" id="139" inline="true">', ' <field name="VAR">item</field>', ' <value name="VALUE">', ' <block type="lists_create_empty" id="171"></block>', ' </value>', ' <next>', ' <block type="text_print" id="78" inline="false">', ' <value name="TEXT">', ' <block type="text" id="189">', ' <field name="TEXT">Hello</field>', ' </block>', ' </value>', ' </block>', ' </next>', ' </block>', ' </statement>', ' </block>', '</xml>'].join('/n'); function test_textToDom() { var dom = Blockly.Xml.textToDom(XML_TEXT); assertEquals('XML tag', 'xml', dom.nodeName); assertEquals('Block tags', 6, dom.getElementsByTagName('block').length); } function test_domToText() { var dom = Blockly.Xml.textToDom(XML_TEXT); var text = Blockly.Xml.domToText(dom); assertEquals('Round trip', XML_TEXT.replace(/\s+/g, ''), text.replace(/\s+/g, '')); } function test_domToPrettyText() { var dom = Blockly.Xml.textToDom(XML_TEXT); var text = Blockly.Xml.domToPrettyText(dom); assertEquals('Round trip', XML_TEXT.replace(/\s+/g, ''), text.replace(/\s+/g, '')); }