@openui5/sap.ui.core 1.117.1 → 1.119.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintrc.json +9 -0
- package/THIRDPARTY.txt +2 -2
- package/package.json +1 -1
- package/src/jquery.sap.global.js +1 -1
- package/src/jquery.sap.properties.js +1 -1
- package/src/jquery.sap.resources.js +1 -1
- package/src/jquery.sap.script.js +1 -1
- package/src/jquery.sap.storage.js +3 -3
- package/src/sap/base/Event.js +1 -1
- package/src/sap/base/Eventing.js +1 -1
- package/src/sap/base/config.js +1 -1
- package/src/sap/base/i18n/LanguageTag.js +1 -1
- package/src/sap/base/i18n/Localization.js +58 -40
- package/src/sap/base/i18n/ResourceBundle.js +5 -0
- package/src/sap/base/i18n/date/TimezoneUtils.js +1 -1
- package/src/sap/base/util/UriParameters.js +26 -19
- package/src/sap/base/util/restricted/_CancelablePromise.js +1 -1
- package/src/sap/base/util/restricted/_castArray.js +1 -1
- package/src/sap/base/util/restricted/_compact.js +1 -1
- package/src/sap/base/util/restricted/_curry.js +1 -1
- package/src/sap/base/util/restricted/_debounce.js +1 -1
- package/src/sap/base/util/restricted/_difference.js +1 -1
- package/src/sap/base/util/restricted/_differenceBy.js +1 -1
- package/src/sap/base/util/restricted/_differenceWith.js +1 -1
- package/src/sap/base/util/restricted/_flatMap.js +1 -1
- package/src/sap/base/util/restricted/_flatMapDeep.js +1 -1
- package/src/sap/base/util/restricted/_flatMapDepth.js +1 -1
- package/src/sap/base/util/restricted/_flatten.js +1 -1
- package/src/sap/base/util/restricted/_flattenDeep.js +1 -1
- package/src/sap/base/util/restricted/_flattenDepth.js +1 -1
- package/src/sap/base/util/restricted/_intersection.js +1 -1
- package/src/sap/base/util/restricted/_intersectionBy.js +1 -1
- package/src/sap/base/util/restricted/_intersectionWith.js +1 -1
- package/src/sap/base/util/restricted/_isEqual.js +1 -1
- package/src/sap/base/util/restricted/_isEqualWith.js +1 -1
- package/src/sap/base/util/restricted/_isNil.js +1 -1
- package/src/sap/base/util/restricted/_max.js +1 -1
- package/src/sap/base/util/restricted/_merge.js +1 -1
- package/src/sap/base/util/restricted/_mergeWith.js +1 -1
- package/src/sap/base/util/restricted/_min.js +1 -1
- package/src/sap/base/util/restricted/_omit.js +1 -1
- package/src/sap/base/util/restricted/_pick.js +1 -1
- package/src/sap/base/util/restricted/_pickBy.js +1 -1
- package/src/sap/base/util/restricted/_throttle.js +1 -1
- package/src/sap/base/util/restricted/_toArray.js +1 -1
- package/src/sap/base/util/restricted/_union.js +1 -1
- package/src/sap/base/util/restricted/_unionBy.js +1 -1
- package/src/sap/base/util/restricted/_unionWith.js +1 -1
- package/src/sap/base/util/restricted/_uniq.js +1 -1
- package/src/sap/base/util/restricted/_uniqBy.js +1 -1
- package/src/sap/base/util/restricted/_uniqWith.js +1 -1
- package/src/sap/base/util/restricted/_without.js +1 -1
- package/src/sap/base/util/restricted/_xor.js +1 -1
- package/src/sap/base/util/restricted/_xorBy.js +1 -1
- package/src/sap/base/util/restricted/_xorWith.js +1 -1
- package/src/sap/base/util/restricted/_zipObject.js +1 -1
- package/src/sap/base/util/restricted/_zipObjectDeep.js +1 -1
- package/src/sap/ui/Device.js +3 -3
- package/src/sap/ui/Global.js +4 -4
- package/src/sap/ui/base/BindingInfo.js +25 -3
- package/src/sap/ui/base/BindingParser.js +2 -1
- package/src/sap/ui/base/Event.js +1 -1
- package/src/sap/ui/base/EventProvider.js +1 -1
- package/src/sap/ui/base/Interface.js +1 -1
- package/src/sap/ui/base/ManagedObject.js +8 -4
- package/src/sap/ui/base/ManagedObjectMetadata.js +4 -3
- package/src/sap/ui/base/Metadata.js +3 -3
- package/src/sap/ui/base/Object.js +1 -1
- package/src/sap/ui/base/ObjectPool.js +1 -1
- package/src/sap/ui/core/.library +9 -1
- package/src/sap/ui/core/AccessKeysEnablement.js +2 -2
- package/src/sap/ui/core/AnimationMode.js +1 -1
- package/src/sap/ui/core/BlockLayerUtils.js +1 -1
- package/src/sap/ui/core/BusyIndicator.js +2 -2
- package/src/sap/ui/core/Component.js +85 -61
- package/src/sap/ui/core/ComponentContainer.js +2 -2
- package/src/sap/ui/core/ComponentMetadata.js +1 -1
- package/src/sap/ui/core/ComponentSupport.js +1 -1
- package/src/sap/ui/core/Configuration.js +15 -179
- package/src/sap/ui/core/Control.js +22 -2
- package/src/sap/ui/core/Core.js +223 -128
- package/src/sap/ui/core/CustomData.js +1 -1
- package/src/sap/ui/core/CustomStyleClassSupport.js +3 -3
- package/src/sap/ui/core/DeclarativeSupport.js +1 -1
- package/src/sap/ui/core/Element.js +40 -4
- package/src/sap/ui/core/ElementMetadata.js +1 -1
- package/src/sap/ui/core/EnabledPropagator.js +1 -1
- package/src/sap/ui/core/EventBus.js +19 -2
- package/src/sap/ui/core/FocusHandler.js +3 -24
- package/src/sap/ui/core/Fragment.js +2 -2
- package/src/sap/ui/core/HTML.js +1 -1
- package/src/sap/ui/core/History.js +1 -1
- package/src/sap/ui/core/Icon.js +2 -2
- package/src/sap/ui/core/IndicationColorSupport.js +2 -2
- package/src/sap/ui/core/IntervalTrigger.js +1 -1
- package/src/sap/ui/core/InvisibleMessage.js +1 -1
- package/src/sap/ui/core/InvisibleRenderer.js +1 -1
- package/src/sap/ui/core/InvisibleText.js +4 -7
- package/src/sap/ui/core/Item.js +1 -1
- package/src/sap/ui/core/LabelEnablement.js +11 -4
- package/src/sap/ui/core/LayoutData.js +1 -1
- package/src/sap/ui/core/Lib.js +51 -55
- package/src/sap/ui/core/ListItem.js +1 -1
- package/src/sap/ui/core/LocalBusyIndicator.js +1 -1
- package/src/sap/ui/core/Locale.js +1 -1
- package/src/sap/ui/core/LocaleData.js +2 -2
- package/src/sap/ui/core/Manifest.js +1 -1
- package/src/sap/ui/core/Message.js +4 -4
- package/src/sap/ui/core/Messaging.js +471 -0
- package/src/sap/ui/core/Popup.js +3 -3
- package/src/sap/ui/core/RenderManager.js +15 -10
- package/src/sap/ui/core/Renderer.js +1 -1
- package/src/sap/ui/core/Rendering.js +4 -2
- package/src/sap/ui/core/ResizeHandler.js +15 -23
- package/src/sap/ui/core/ScrollBar.js +1 -1
- package/src/sap/ui/core/SeparatorItem.js +1 -1
- package/src/sap/ui/core/ShortcutHint.js +1 -1
- package/src/sap/ui/core/ShortcutHintsMixin.js +5 -5
- package/src/sap/ui/core/StashedControlSupport.js +4 -4
- package/src/sap/ui/core/StaticArea.js +66 -74
- package/src/sap/ui/core/Theming.js +99 -39
- package/src/sap/ui/core/Title.js +1 -1
- package/src/sap/ui/core/TooltipBase.js +1 -1
- package/src/sap/ui/core/UIArea.js +93 -24
- package/src/sap/ui/core/UIComponent.js +2 -2
- package/src/sap/ui/core/UIComponentMetadata.js +1 -1
- package/src/sap/ui/core/ValueStateSupport.js +2 -2
- package/src/sap/ui/core/VariantLayoutData.js +1 -1
- package/src/sap/ui/core/XMLComposite.js +4 -2
- package/src/sap/ui/core/XMLCompositeMetadata.js +1 -1
- package/src/sap/ui/core/_IconRegistry.js +3 -1
- package/src/sap/ui/core/boot.js +9 -0
- package/src/sap/ui/core/cache/CacheManager.js +22 -16
- package/src/sap/ui/core/cache/LRUPersistentCache.js +13 -7
- package/src/sap/ui/core/date/UI5Date.js +1 -1
- package/src/sap/ui/core/delegate/ItemNavigation.js +3 -3
- package/src/sap/ui/core/delegate/ScrollEnablement.js +1 -1
- package/src/sap/ui/core/dnd/DragAndDrop.js +1 -1
- package/src/sap/ui/core/dnd/DragDropBase.js +1 -1
- package/src/sap/ui/core/dnd/DragDropInfo.js +6 -6
- package/src/sap/ui/core/dnd/DragInfo.js +4 -4
- package/src/sap/ui/core/dnd/DropInfo.js +6 -6
- package/src/sap/ui/core/format/DateFormat.js +4 -0
- package/src/sap/ui/core/format/TimezoneUtil.js +1 -1
- package/src/sap/ui/core/getCompatibilityVersion.js +64 -0
- package/src/sap/ui/core/hyphenation/Hyphenation.js +1 -1
- package/src/sap/ui/core/library.js +26 -50
- package/src/sap/ui/core/message/ControlMessageProcessor.js +4 -4
- package/src/sap/ui/core/message/Message.js +14 -13
- package/src/sap/ui/core/message/MessageManager.js +36 -459
- package/src/sap/ui/core/message/MessageMixin.js +5 -5
- package/src/sap/ui/core/message/MessageParser.js +1 -1
- package/src/sap/ui/core/message/MessageProcessor.js +9 -9
- package/src/sap/ui/core/message/MessageType.js +53 -0
- package/src/sap/ui/core/messagebundle.properties +3 -0
- package/src/sap/ui/core/messagebundle_ar.properties +3 -3
- package/src/sap/ui/core/messagebundle_bg.properties +4 -4
- package/src/sap/ui/core/messagebundle_ca.properties +2 -2
- package/src/sap/ui/core/messagebundle_cs.properties +5 -5
- package/src/sap/ui/core/messagebundle_cy.properties +2 -2
- package/src/sap/ui/core/messagebundle_da.properties +4 -4
- package/src/sap/ui/core/messagebundle_de.properties +3 -3
- package/src/sap/ui/core/messagebundle_el.properties +11 -11
- package/src/sap/ui/core/messagebundle_en.properties +4 -4
- package/src/sap/ui/core/messagebundle_es.properties +18 -18
- package/src/sap/ui/core/messagebundle_es_MX.properties +1 -1
- package/src/sap/ui/core/messagebundle_et.properties +1 -1
- package/src/sap/ui/core/messagebundle_fi.properties +2 -2
- package/src/sap/ui/core/messagebundle_fr.properties +22 -22
- package/src/sap/ui/core/messagebundle_fr_CA.properties +1 -1
- package/src/sap/ui/core/messagebundle_hi.properties +3 -3
- package/src/sap/ui/core/messagebundle_hr.properties +7 -7
- package/src/sap/ui/core/messagebundle_hu.properties +11 -11
- package/src/sap/ui/core/messagebundle_id.properties +6 -6
- package/src/sap/ui/core/messagebundle_it.properties +58 -58
- package/src/sap/ui/core/messagebundle_iw.properties +6 -6
- package/src/sap/ui/core/messagebundle_ja.properties +1 -1
- package/src/sap/ui/core/messagebundle_kk.properties +2 -2
- package/src/sap/ui/core/messagebundle_ko.properties +7 -7
- package/src/sap/ui/core/messagebundle_lt.properties +1 -1
- package/src/sap/ui/core/messagebundle_lv.properties +6 -6
- package/src/sap/ui/core/messagebundle_ms.properties +6 -6
- package/src/sap/ui/core/messagebundle_nl.properties +13 -13
- package/src/sap/ui/core/messagebundle_no.properties +9 -9
- package/src/sap/ui/core/messagebundle_pl.properties +3 -3
- package/src/sap/ui/core/messagebundle_pt.properties +9 -9
- package/src/sap/ui/core/messagebundle_pt_PT.properties +1 -1
- package/src/sap/ui/core/messagebundle_ro.properties +3 -3
- package/src/sap/ui/core/messagebundle_ru.properties +8 -8
- package/src/sap/ui/core/messagebundle_sh.properties +1 -1
- package/src/sap/ui/core/messagebundle_sk.properties +3 -3
- package/src/sap/ui/core/messagebundle_sl.properties +10 -10
- package/src/sap/ui/core/messagebundle_sv.properties +1 -1
- package/src/sap/ui/core/messagebundle_th.properties +19 -19
- package/src/sap/ui/core/messagebundle_tr.properties +6 -6
- package/src/sap/ui/core/messagebundle_uk.properties +9 -9
- package/src/sap/ui/core/messagebundle_vi.properties +2 -2
- package/src/sap/ui/core/messagebundle_zh_CN.properties +3 -3
- package/src/sap/ui/core/messagebundle_zh_TW.properties +25 -25
- package/src/sap/ui/core/mvc/HTMLView.js +1 -1
- package/src/sap/ui/core/mvc/JSONView.js +1 -1
- package/src/sap/ui/core/mvc/JSView.js +1 -1
- package/src/sap/ui/core/mvc/TemplateView.js +1 -1
- package/src/sap/ui/core/mvc/View.js +3 -3
- package/src/sap/ui/core/mvc/XMLView.js +9 -2
- package/src/sap/ui/core/plugin/DeclarativeSupport.js +1 -1
- package/src/sap/ui/core/plugin/LessSupport.js +3 -3
- package/src/sap/ui/core/plugin/TemplatingSupport.js +1 -1
- package/src/sap/ui/core/postmessage/Bus.js +1 -1
- package/src/sap/ui/core/postmessage/confirmationDialog.js +1 -1
- package/src/sap/ui/core/routing/Router.js +7 -1
- package/src/sap/ui/core/routing/async/Route.js +1 -0
- package/src/sap/ui/core/routing/async/Target.js +5 -4
- package/src/sap/ui/core/routing/sync/Route.js +1 -0
- package/src/sap/ui/core/routing/sync/Target.js +3 -3
- package/src/sap/ui/core/rules/App.support.js +30 -1
- package/src/sap/ui/core/rules/Config.support.js +4 -0
- package/src/sap/ui/core/rules/CoreHelper.support.js +3 -3
- package/src/sap/ui/core/rules/Theming.support.js +4 -0
- package/src/sap/ui/core/search/OpenSearchProvider.js +1 -1
- package/src/sap/ui/core/search/SearchProvider.js +1 -1
- package/src/sap/ui/core/service/Service.js +1 -1
- package/src/sap/ui/core/service/ServiceFactory.js +1 -1
- package/src/sap/ui/core/service/ServiceFactoryRegistry.js +1 -1
- package/src/sap/ui/core/support/Plugin.js +25 -5
- package/src/sap/ui/core/support/Support.js +38 -6
- package/src/sap/ui/core/support/ToolsAPI.js +14 -20
- package/src/sap/ui/core/support/controls/InteractionTree.js +0 -4
- package/src/sap/ui/core/support/plugins/Breakpoint.js +4 -6
- package/src/sap/ui/core/support/plugins/ControlTree.js +40 -24
- package/src/sap/ui/core/support/plugins/Debugging.js +10 -9
- package/src/sap/ui/core/support/plugins/Interaction.js +12 -13
- package/src/sap/ui/core/support/plugins/LocalStorage.js +1 -3
- package/src/sap/ui/core/support/plugins/Performance.js +1 -3
- package/src/sap/ui/core/support/plugins/Selector.js +2 -2
- package/src/sap/ui/core/support/plugins/TechInfo.js +32 -42
- package/src/sap/ui/core/support/plugins/Trace.js +1 -1
- package/src/sap/ui/core/support/plugins/ViewInfo.js +32 -16
- package/src/sap/ui/core/support/techinfo/TechnicalInfo.js +8 -6
- package/src/sap/ui/core/support/usage/EventBroadcaster.js +1 -1
- package/src/sap/ui/core/themes/base/base.less +275 -269
- package/src/sap/ui/core/themes/base/fonts/SAP-icons.ttf +0 -0
- package/src/sap/ui/core/themes/base/fonts/SAP-icons.woff2 +0 -0
- package/src/sap/ui/core/themes/base/global.less +8 -8
- package/src/sap/ui/core/theming/Parameters.js +4 -5
- package/src/sap/ui/core/theming/ThemeHelper.js +100 -1
- package/src/sap/ui/core/theming/ThemeManager.js +32 -31
- package/src/sap/ui/core/tmpl/DOMAttribute.js +1 -1
- package/src/sap/ui/core/tmpl/DOMElement.js +1 -1
- package/src/sap/ui/core/tmpl/HandlebarsTemplate.js +1 -1
- package/src/sap/ui/core/tmpl/Template.js +1 -1
- package/src/sap/ui/core/tmpl/TemplateControl.js +4 -2
- package/src/sap/ui/core/util/AsyncHintsHelper.js +1 -1
- package/src/sap/ui/core/util/Export.js +1 -1
- package/src/sap/ui/core/util/ExportCell.js +1 -1
- package/src/sap/ui/core/util/ExportColumn.js +1 -1
- package/src/sap/ui/core/util/ExportRow.js +1 -1
- package/src/sap/ui/core/util/ExportType.js +1 -1
- package/src/sap/ui/core/util/ExportTypeCSV.js +1 -1
- package/src/sap/ui/core/util/File.js +1 -1
- package/src/sap/ui/core/util/LibraryInfo.js +1 -1
- package/src/sap/ui/core/util/MockServer.js +1 -1
- package/src/sap/ui/core/util/PasteHelper.js +1 -1
- package/src/sap/ui/core/util/XMLPreprocessor.js +53 -29
- package/src/sap/ui/core/util/reflection/BaseTreeModifier.js +27 -4
- package/src/sap/ui/core/util/reflection/JsControlTreeModifier.js +55 -30
- package/src/sap/ui/core/util/reflection/XmlTreeModifier.js +54 -48
- package/src/sap/ui/core/util/serializer/HTMLViewSerializer.js +2 -2
- package/src/sap/ui/core/util/serializer/Serializer.js +3 -3
- package/src/sap/ui/core/util/serializer/ViewSerializer.js +27 -10
- package/src/sap/ui/core/util/serializer/XMLViewSerializer.js +2 -2
- package/src/sap/ui/core/util/serializer/delegate/Delegate.js +1 -1
- package/src/sap/ui/core/util/serializer/delegate/HTML.js +1 -1
- package/src/sap/ui/core/util/serializer/delegate/XML.js +1 -1
- package/src/sap/ui/core/webc/WebComponent.js +659 -0
- package/src/sap/ui/core/webc/WebComponentMetadata.js +253 -0
- package/src/sap/ui/core/webc/WebComponentRenderer.js +323 -0
- package/src/sap/ui/core/ws/ReadyState.js +1 -1
- package/src/sap/ui/core/ws/SapPcpWebSocket.js +1 -1
- package/src/sap/ui/core/ws/WebSocket.js +1 -1
- package/src/sap/ui/debug/ControlTree.js +8 -7
- package/src/sap/ui/debug/DebugEnv.js +18 -9
- package/src/sap/ui/debug/PropertyList.js +3 -3
- package/src/sap/ui/dom/jquery/control.js +3 -4
- package/src/sap/ui/events/F6Navigation.js +2 -1
- package/src/sap/ui/model/Binding.js +6 -6
- package/src/sap/ui/model/ClientModel.js +33 -1
- package/src/sap/ui/model/ClientPropertyBinding.js +20 -4
- package/src/sap/ui/model/CompositeDataState.js +1 -1
- package/src/sap/ui/model/CompositeType.js +1 -1
- package/src/sap/ui/model/Context.js +1 -1
- package/src/sap/ui/model/DataState.js +1 -1
- package/src/sap/ui/model/Filter.js +1 -1
- package/src/sap/ui/model/ManagedObjectBindingSupport.js +4 -4
- package/src/sap/ui/model/MetaModel.js +1 -1
- package/src/sap/ui/model/Model.js +4 -4
- package/src/sap/ui/model/SelectionModel.js +1 -1
- package/src/sap/ui/model/SimpleType.js +1 -1
- package/src/sap/ui/model/TreeAutoExpandMode.js +1 -1
- package/src/sap/ui/model/Type.js +1 -1
- package/src/sap/ui/model/controlhelper/TreeBindingProxy.js +27 -13
- package/src/sap/ui/model/json/JSONModel.js +2 -3
- package/src/sap/ui/model/message/MessageModel.js +3 -7
- package/src/sap/ui/model/odata/ODataAnnotations.js +1 -1
- package/src/sap/ui/model/odata/ODataListBinding.js +24 -0
- package/src/sap/ui/model/odata/ODataMessageParser.js +4 -4
- package/src/sap/ui/model/odata/ODataMetaModel.js +1 -1
- package/src/sap/ui/model/odata/ODataMetadata.js +1 -1
- package/src/sap/ui/model/odata/ODataModel.js +1 -1
- package/src/sap/ui/model/odata/ODataTreeBindingFlat.js +6 -0
- package/src/sap/ui/model/odata/type/Boolean.js +1 -1
- package/src/sap/ui/model/odata/type/Byte.js +1 -1
- package/src/sap/ui/model/odata/type/Currency.js +1 -1
- package/src/sap/ui/model/odata/type/Date.js +1 -1
- package/src/sap/ui/model/odata/type/DateTime.js +1 -1
- package/src/sap/ui/model/odata/type/DateTimeBase.js +1 -1
- package/src/sap/ui/model/odata/type/DateTimeOffset.js +7 -2
- package/src/sap/ui/model/odata/type/DateTimeWithTimezone.js +1 -2
- package/src/sap/ui/model/odata/type/Decimal.js +1 -1
- package/src/sap/ui/model/odata/type/Double.js +1 -1
- package/src/sap/ui/model/odata/type/Guid.js +1 -1
- package/src/sap/ui/model/odata/type/Int.js +1 -1
- package/src/sap/ui/model/odata/type/Int16.js +1 -1
- package/src/sap/ui/model/odata/type/Int32.js +1 -1
- package/src/sap/ui/model/odata/type/Int64.js +1 -1
- package/src/sap/ui/model/odata/type/ODataType.js +2 -3
- package/src/sap/ui/model/odata/type/Raw.js +1 -1
- package/src/sap/ui/model/odata/type/SByte.js +1 -1
- package/src/sap/ui/model/odata/type/Single.js +1 -1
- package/src/sap/ui/model/odata/type/Stream.js +1 -1
- package/src/sap/ui/model/odata/type/String.js +1 -1
- package/src/sap/ui/model/odata/type/Time.js +1 -1
- package/src/sap/ui/model/odata/type/TimeOfDay.js +6 -2
- package/src/sap/ui/model/odata/type/Unit.js +1 -1
- package/src/sap/ui/model/odata/v2/Context.js +13 -5
- package/src/sap/ui/model/odata/v2/ODataAnnotations.js +1 -1
- package/src/sap/ui/model/odata/v2/ODataListBinding.js +108 -59
- package/src/sap/ui/model/odata/v2/ODataModel.js +25 -20
- package/src/sap/ui/model/odata/v2/ODataTreeBinding.js +33 -6
- package/src/sap/ui/model/odata/v4/Context.js +83 -23
- package/src/sap/ui/model/odata/v4/ODataBinding.js +13 -4
- package/src/sap/ui/model/odata/v4/ODataContextBinding.js +162 -33
- package/src/sap/ui/model/odata/v4/ODataListBinding.js +151 -48
- package/src/sap/ui/model/odata/v4/ODataMetaModel.js +1 -1
- package/src/sap/ui/model/odata/v4/ODataModel.js +21 -14
- package/src/sap/ui/model/odata/v4/ODataParentBinding.js +4 -2
- package/src/sap/ui/model/odata/v4/ODataPropertyBinding.js +12 -11
- package/src/sap/ui/model/odata/v4/lib/_AggregationCache.js +234 -31
- package/src/sap/ui/model/odata/v4/lib/_AggregationHelper.js +3 -5
- package/src/sap/ui/model/odata/v4/lib/_Cache.js +180 -76
- package/src/sap/ui/model/odata/v4/lib/_Helper.js +36 -24
- package/src/sap/ui/model/odata/v4/lib/_Parser.js +3 -0
- package/src/sap/ui/model/odata/v4/lib/_Requestor.js +17 -7
- package/src/sap/ui/model/odata/v4/lib/_V2MetadataConverter.js +1 -1
- package/src/sap/ui/model/odata/v4/lib/_V2Requestor.js +28 -35
- package/src/sap/ui/model/odata/v4/ts.js +44 -0
- package/src/sap/ui/model/resource/ResourceModel.js +1 -1
- package/src/sap/ui/model/type/Boolean.js +1 -1
- package/src/sap/ui/model/type/Currency.js +1 -1
- package/src/sap/ui/model/type/Date.js +1 -2
- package/src/sap/ui/model/type/DateInterval.js +5 -5
- package/src/sap/ui/model/type/DateTime.js +1 -1
- package/src/sap/ui/model/type/DateTimeInterval.js +1 -1
- package/src/sap/ui/model/type/FileSize.js +1 -1
- package/src/sap/ui/model/type/Float.js +1 -1
- package/src/sap/ui/model/type/Integer.js +1 -1
- package/src/sap/ui/model/type/String.js +1 -1
- package/src/sap/ui/model/type/Time.js +1 -1
- package/src/sap/ui/model/type/TimeInterval.js +1 -1
- package/src/sap/ui/model/type/Unit.js +1 -1
- package/src/sap/ui/model/xml/XMLModel.js +2 -2
- package/src/sap/ui/model/xml/XMLPropertyBinding.js +4 -2
- package/src/sap/ui/performance/BeaconRequest.js +8 -10
- package/src/sap/ui/performance/trace/Interaction.js +11 -2
- package/src/sap/ui/qunit/qunit-coverage-istanbul.js +60 -6
- package/src/sap/ui/qunit/utils/ControlIterator.js +1 -1
- package/src/sap/ui/qunit/utils/MemoryLeakCheck.js +10 -11
- package/src/sap/ui/qunit/utils/nextUIUpdate.js +51 -0
- package/src/sap/ui/qunit/utils/waitForThemeApplied.js +16 -14
- package/src/sap/ui/test/BlanketReporterUI.view.xml +5 -2
- package/src/sap/ui/test/ModuleTracking.js +326 -0
- package/src/sap/ui/test/OpaPlugin.js +3 -3
- package/src/sap/ui/test/TestUtils.js +8 -7
- package/src/sap/ui/test/autowaiter/_UIUpdatesWaiter.js +3 -2
- package/src/sap/ui/test/generic/TestBase.js +1 -1
- package/src/sap/ui/test/matchers/Descendant.js +1 -1
- package/src/sap/ui/test/matchers/Sibling.js +1 -1
- package/src/sap/ui/test/selectors/_ControlSelectorGenerator.js +2 -0
- package/src/sap/ui/test/selectors/_DropdownItem.js +1 -0
- package/src/sap/ui/test/selectors/_LabelFor.js +3 -2
- package/src/sap/ui/test/selectors/_TableRowItem.js +1 -0
- package/src/sap/ui/test/starter/_setupAndStart.js +35 -11
- package/src/sap/ui/util/Storage.js +1 -1
- package/src/ui5loader-autoconfig.js +14 -10
- package/test/sap/ui/core/ComponentCleanup.html +228 -225
- package/test/sap/ui/core/ComponentConfig.html +1 -1
- package/test/sap/ui/core/ComponentExtensibility_CustomizingDisabled.html +1 -1
- package/test/sap/ui/core/ComponentExtensibility_legacyAPIs.html +1 -1
- package/test/sap/ui/core/ComponentSimple.html +1 -1
- package/test/sap/ui/core/ComponentSimpleModel.html +1 -1
- package/test/sap/ui/core/ComponentSupport.html +1 -1
- package/test/sap/ui/core/DateFormat.js +3 -3
- package/test/sap/ui/core/EventBroadcaster.html +62 -62
- package/test/sap/ui/core/Formats.html +4 -2
- package/test/sap/ui/core/GenericEventBinding.html +53 -52
- package/test/sap/ui/core/HTMLControl.html +94 -93
- package/test/sap/ui/core/HyphenationPlayground.html +10 -9
- package/test/sap/ui/core/ListFormat.js +3 -3
- package/test/sap/ui/core/NumberFormat.js +3 -3
- package/test/sap/ui/core/ODataAnnotationsPerformance.html +28 -28
- package/test/sap/ui/core/ODataV2CanonicalRequests.html +3 -2
- package/test/sap/ui/core/ODataV2Messages.html +4 -3
- package/test/sap/ui/core/PopupWithUserSelection.html +1 -1
- package/test/sap/ui/core/Strings.js +3 -3
- package/test/sap/ui/core/Strings.view.xml +5 -1
- package/test/sap/ui/core/ThemeParameters.html +31 -30
- package/test/sap/ui/core/ValidateURL.html +143 -143
- package/test/sap/ui/core/demokit/sample/BusyIndicator/manifest.json +2 -1
- package/test/sap/ui/core/demokit/sample/Commands/Commands.html +1 -1
- package/test/sap/ui/core/demokit/sample/Commands/manifest.json +2 -2
- package/test/sap/ui/core/demokit/sample/ControlBusyIndicator/manifest.json +2 -1
- package/test/sap/ui/core/demokit/sample/ControllerExtension/manifest.json +1 -0
- package/test/sap/ui/core/demokit/sample/FieldGroup/manifest.json +1 -0
- package/test/sap/ui/core/demokit/sample/Html/manifest.json +1 -0
- package/test/sap/ui/core/demokit/sample/Html/preserveDOM/manifest.json +1 -0
- package/test/sap/ui/core/demokit/sample/Html/static/manifest.json +1 -0
- package/test/sap/ui/core/demokit/sample/HyphenationAPI/C.controller.js +3 -3
- package/test/sap/ui/core/demokit/sample/Icon/manifest.json +2 -1
- package/test/sap/ui/core/demokit/sample/InvisibleMessage/InvisibleMessage.controller.js +4 -4
- package/test/sap/ui/core/demokit/sample/InvisibleMessage/manifest.json +2 -1
- package/test/sap/ui/core/demokit/sample/InvisibleText/manifest.json +2 -1
- package/test/sap/ui/core/demokit/sample/MessageManager/BasicMessages/Controller.controller.js +10 -10
- package/test/sap/ui/core/demokit/sample/MessageManager/BasicODataMessages/Controller.controller.js +7 -7
- package/test/sap/ui/core/demokit/sample/MessageManager/BasicODataMessages/manifest.json +1 -0
- package/test/sap/ui/core/demokit/sample/MessageManager/ODataBackendMessagesComp/webapp/Component.js +3 -2
- package/test/sap/ui/core/demokit/sample/MessageManager/ODataBackendMessagesComp/webapp/controller/Employee.controller.js +3 -2
- package/test/sap/ui/core/demokit/sample/MessageManager/ODataBackendMessagesComp/webapp/index.html +7 -8
- package/test/sap/ui/core/demokit/sample/OpaAction/manifest.json +1 -0
- package/test/sap/ui/core/demokit/sample/OpaAutoWaitParams/OpaAutoWaitParams.js +1 -1
- package/test/sap/ui/core/demokit/sample/OpaAutoWaitParams/applicationUnderTest/manifest.json +2 -2
- package/test/sap/ui/core/demokit/sample/OpaAutoWaitParams/manifest.json +2 -1
- package/test/sap/ui/core/demokit/sample/OpaBusyIndicator/applicationUnderTest/manifest.json +2 -2
- package/test/sap/ui/core/demokit/sample/OpaBusyIndicator/manifest.json +2 -1
- package/test/sap/ui/core/demokit/sample/OpaById/applicationUnderTest/manifest.json +2 -2
- package/test/sap/ui/core/demokit/sample/OpaById/manifest.json +2 -1
- package/test/sap/ui/core/demokit/sample/OpaDynamicWait/applicationUnderTest/manifest.json +2 -2
- package/test/sap/ui/core/demokit/sample/OpaDynamicWait/manifest.json +2 -1
- package/test/sap/ui/core/demokit/sample/OpaGetStarted/applicationUnderTest/index.html +9 -6
- package/test/sap/ui/core/demokit/sample/OpaGetStarted/manifest.json +2 -1
- package/test/sap/ui/core/demokit/sample/OpaMatchers/applicationUnderTest/manifest.json +2 -2
- package/test/sap/ui/core/demokit/sample/OpaMatchers/manifest.json +2 -1
- package/test/sap/ui/core/demokit/sample/OpaPageObject/applicationUnderTest/manifest.json +2 -2
- package/test/sap/ui/core/demokit/sample/OpaPageObject/manifest.json +2 -1
- package/test/sap/ui/core/demokit/sample/OpaStartup/iStartMyAppInAFrame/applicationUnderTest/manifest.json +2 -2
- package/test/sap/ui/core/demokit/sample/OpaStartup/iStartMyAppInAFrame/manifest.json +2 -1
- package/test/sap/ui/core/demokit/sample/OpaStartup/iStartMyUIComponent/applicationUnderTest/manifest.json +2 -2
- package/test/sap/ui/core/demokit/sample/OpaStartup/iStartMyUIComponent/manifest.json +2 -1
- package/test/sap/ui/core/demokit/sample/OpaStaticAreaControls/applicationUnderTest/manifest.json +2 -2
- package/test/sap/ui/core/demokit/sample/OpaStaticAreaControls/manifest.json +2 -1
- package/test/sap/ui/core/demokit/sample/OpaTestLibrary/applicationUnderTest/manifest.json +2 -2
- package/test/sap/ui/core/demokit/sample/OpaTestLibrary/manifest.json +2 -1
- package/test/sap/ui/core/demokit/sample/OpaURLParameters/iStartMyAppInAFrameWithURLParameters/applicationUnderTest/manifest.json +2 -2
- package/test/sap/ui/core/demokit/sample/OpaURLParameters/iStartMyAppInAFrameWithURLParameters/manifest.json +2 -1
- package/test/sap/ui/core/demokit/sample/OpaURLParameters/iStartMyUIComponentWithURLParameters/applicationUnderTest/manifest.json +2 -2
- package/test/sap/ui/core/demokit/sample/OpaURLParameters/iStartMyUIComponentWithURLParameters/manifest.json +2 -1
- package/test/sap/ui/core/demokit/sample/OpaWithSupportAssistant/applicationUnderTest/index.html +13 -10
- package/test/sap/ui/core/demokit/sample/OpaWithSupportAssistant/manifest.json +2 -1
- package/test/sap/ui/core/demokit/sample/PatternMatching/Patterns.html +11 -8
- package/test/sap/ui/core/demokit/sample/PatternMatching/manifest.json +2 -1
- package/test/sap/ui/core/demokit/sample/PatternMatching/patternApp/manifest.json +2 -2
- package/test/sap/ui/core/demokit/sample/RoutingFullscreen/RoutingFullscreen.html +11 -8
- package/test/sap/ui/core/demokit/sample/RoutingFullscreen/manifest.json +2 -1
- package/test/sap/ui/core/demokit/sample/RoutingMasterDetail/RoutingMasterDetail.html +11 -8
- package/test/sap/ui/core/demokit/sample/RoutingMasterDetail/manifest.json +2 -1
- package/test/sap/ui/core/demokit/sample/RoutingNestedComponent/RoutingNestedComponent.html +1 -1
- package/test/sap/ui/core/demokit/sample/RoutingNestedComponent/manifest.json +2 -2
- package/test/sap/ui/core/demokit/sample/RoutingNestedComponent/reuse/categories/manifest.json +2 -1
- package/test/sap/ui/core/demokit/sample/RoutingNestedComponent/reuse/products/manifest.json +2 -1
- package/test/sap/ui/core/demokit/sample/RoutingNestedComponent/reuse/suppliers/manifest.json +2 -1
- package/test/sap/ui/core/demokit/sample/RoutingNestedComponent/test/integration/opaTests.qunit.html +1 -1
- package/test/sap/ui/core/demokit/sample/RoutingNestedComponent/test/integration/opaTests.qunit.js +5 -4
- package/test/sap/ui/core/demokit/sample/TargetsStandalone/TargetsStandalone.html +11 -8
- package/test/sap/ui/core/demokit/sample/TargetsStandalone/manifest.json +2 -1
- package/test/sap/ui/core/demokit/sample/ThemeCustomClasses/ThemeCustomClasses.controller.js +3 -3
- package/test/sap/ui/core/demokit/sample/ThemeCustomClasses/manifest.json +1 -0
- package/test/sap/ui/core/demokit/sample/TypeCurrency/manifest.json +1 -0
- package/test/sap/ui/core/demokit/sample/TypeDateAsDate/manifest.json +1 -0
- package/test/sap/ui/core/demokit/sample/TypeDateAsString/manifest.json +1 -0
- package/test/sap/ui/core/demokit/sample/TypeDateTime/manifest.json +1 -0
- package/test/sap/ui/core/demokit/sample/TypeFileSize/manifest.json +1 -0
- package/test/sap/ui/core/demokit/sample/TypeFloat/manifest.json +1 -0
- package/test/sap/ui/core/demokit/sample/TypeInteger/manifest.json +1 -0
- package/test/sap/ui/core/demokit/sample/TypeTimeAsTime/manifest.json +1 -0
- package/test/sap/ui/core/demokit/sample/View/async/manifest.json +2 -1
- package/test/sap/ui/core/demokit/sample/View/preprocessor/manifest.json +2 -1
- package/test/sap/ui/core/demokit/sample/ViewTemplate/scenario/Opa.qunit.js +9 -8
- package/test/sap/ui/core/demokit/sample/ViewTemplate/scenario/manifest.json +2 -1
- package/test/sap/ui/core/demokit/sample/ViewTemplate/types/Opa.qunit.js +12 -11
- package/test/sap/ui/core/demokit/sample/XMLComposite/02/manifest.json +1 -0
- package/test/sap/ui/core/demokit/sample/common/Controller.js +8 -8
- package/test/sap/ui/core/demokit/sample/common/Helper.js +19 -2
- package/test/sap/ui/core/demokit/sample/common/init.js +25 -21
- package/test/sap/ui/core/demokit/sample/common/pages/Any.js +3 -0
- package/test/sap/ui/core/demokit/sample/gherkin/GherkinWithOPA5/WebsiteCode.js +8 -7
- package/test/sap/ui/core/demokit/sample/gherkin/GherkinWithPageObjects/applicationUnderTest/manifest.json +1 -0
- package/test/sap/ui/core/demokit/sample/gherkin/GherkinWithPageObjects/manifest.json +2 -1
- package/test/sap/ui/core/demokit/sample/matcher/BindingPath/manifest.json +2 -1
- package/test/sap/ui/core/demokit/sample/matcher/BindingPath/webapp/manifest.json +2 -2
- package/test/sap/ui/core/demokit/sample/matcher/Descendant/manifest.json +2 -1
- package/test/sap/ui/core/demokit/sample/matcher/Descendant/webapp/manifest.json +2 -2
- package/test/sap/ui/core/demokit/sample/matcher/I18NText/manifest.json +2 -1
- package/test/sap/ui/core/demokit/sample/matcher/I18NText/webapp/manifest.json +2 -2
- package/test/sap/ui/core/demokit/sample/matcher/LabelFor/manifest.json +2 -1
- package/test/sap/ui/core/demokit/sample/matcher/LabelFor/webapp/manifest.json +2 -2
- package/test/sap/ui/core/demokit/sample/odata/types/v2/DateTimeOffset/manifest.json +1 -0
- package/test/sap/ui/core/demokit/sample/odata/types/v4/Date/manifest.json +1 -0
- package/test/sap/ui/core/demokit/sample/odata/types/v4/TimeOfDay/manifest.json +1 -0
- package/test/sap/ui/core/demokit/sample/odata/v2/AutoExpand/AutoExpand.view.xml +6 -2
- package/test/sap/ui/core/demokit/sample/odata/v4/Ancestry/Main.view.xml +7 -3
- package/test/sap/ui/core/demokit/sample/odata/v4/DataAggregation/DataAggregation.controller.js +2 -2
- package/test/sap/ui/core/demokit/sample/odata/v4/DataAggregation/DataAggregation.view.xml +7 -4
- package/test/sap/ui/core/demokit/sample/odata/v4/DataAggregation/Opa.qunit.js +9 -8
- package/test/sap/ui/core/demokit/sample/odata/v4/DataAggregation/tests/expandPageCollapse.js +1 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/DataAggregation/tests/filter.js +1 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/ObjectPage.controller.js +3 -2
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/Opa.qunit.js +13 -11
- package/test/sap/ui/core/demokit/sample/odata/v4/Draft/ListReport.controller.js +3 -2
- package/test/sap/ui/core/demokit/sample/odata/v4/Draft/Opa.qunit.js +13 -14
- package/test/sap/ui/core/demokit/sample/odata/v4/FieldGroups/Opa.qunit.js +14 -11
- package/test/sap/ui/core/demokit/sample/odata/v4/FlatDataAggregation/Component.js +4 -4
- package/test/sap/ui/core/demokit/sample/odata/v4/FlatDataAggregation/FlatDataAggregation.controller.js +6 -4
- package/test/sap/ui/core/demokit/sample/odata/v4/FlatDataAggregation/FlatDataAggregation.view.xml +6 -2
- package/test/sap/ui/core/demokit/sample/odata/v4/FlexibleColumnLayout/Main.controller.js +3 -3
- package/test/sap/ui/core/demokit/sample/odata/v4/FlexibleColumnLayout/Opa.qunit.js +19 -25
- package/test/sap/ui/core/demokit/sample/odata/v4/GridTable/GridTable.view.xml +6 -2
- package/test/sap/ui/core/demokit/sample/odata/v4/HierarchyBindAction/Component.js +19 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/HierarchyBindAction/Main.controller.js +93 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/HierarchyBindAction/Main.view.xml +89 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/HierarchyBindAction/SandboxModel.js +10 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/HierarchyBindAction/data/all.json +396 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/HierarchyBindAction/data/metadata.xml +423 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/HierarchyBindAction/manifest.json +70 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/LateProperties/Opa.OptimisticBatch.qunit.js +11 -10
- package/test/sap/ui/core/demokit/sample/odata/v4/LateProperties/Opa.qunit.js +10 -9
- package/test/sap/ui/core/demokit/sample/odata/v4/ListBinding/Opa.qunit.js +11 -10
- package/test/sap/ui/core/demokit/sample/odata/v4/ListBindingTemplate/Opa.qunit.js +8 -7
- package/test/sap/ui/core/demokit/sample/odata/v4/MultipleInlineCreationRowsGrid/Main.controller.js +8 -10
- package/test/sap/ui/core/demokit/sample/odata/v4/MultipleInlineCreationRowsGrid/Main.view.xml +5 -2
- package/test/sap/ui/core/demokit/sample/odata/v4/MultipleInlineCreationRowsGrid/Opa.qunit.js +16 -13
- package/test/sap/ui/core/demokit/sample/odata/v4/Products/Main.controller.js +3 -2
- package/test/sap/ui/core/demokit/sample/odata/v4/Products/Opa.qunit.js +12 -11
- package/test/sap/ui/core/demokit/sample/odata/v4/RecursiveHierarchy/MIT.RecursiveHierarchy maintenance.html +408 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/RecursiveHierarchy/Opa.qunit.js +26 -8
- package/test/sap/ui/core/demokit/sample/odata/v4/RecursiveHierarchy/RecursiveHierarchy.controller.js +78 -13
- package/test/sap/ui/core/demokit/sample/odata/v4/RecursiveHierarchy/RecursiveHierarchy.view.xml +48 -9
- package/test/sap/ui/core/demokit/sample/odata/v4/RecursiveHierarchy/SandboxModel.js +379 -287
- package/test/sap/ui/core/demokit/sample/odata/v4/RecursiveHierarchy/pages/Main.js +38 -5
- package/test/sap/ui/core/demokit/sample/odata/v4/RecursiveHierarchy/tests/createEdit.js +128 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/RecursiveHierarchy/tests/pageExpandCollapse.js +24 -23
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrderTP100_V2/Opa.qunit.js +11 -10
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrderTP100_V4/Opa.qunit.js +10 -9
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrders/Component.js +3 -2
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrders/Opa.qunit.js +15 -14
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrders/pages/Main.js +9 -8
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrders/tests/ChangeContext.js +1 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrders/tests/Create.js +1 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrders/tests/CreateMultiple.js +1 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrders/tests/CreateRelative.js +1 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrders/tests/MessageHandling.js +1 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrders/tests/TypeDeterminationAndDelete.js +8 -9
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrders/tests/WriteNonDeferredGroup.js +1 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrders/tests/additionalTargets.js +1 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrdersRTATest/Opa.qunit.js +9 -8
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrdersRTATest/tests/AdaptSalesOrdersTable.js +1 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrdersTemplate/Opa.qunit.js +10 -9
- package/test/sap/ui/core/demokit/sample/odata/v4/ServerDrivenPaging/Main.view.xml +5 -2
- package/test/sap/ui/core/demokit/sample/odata/v4/ServerDrivenPaging/Opa.qunit.js +10 -9
- package/test/sap/ui/core/demokit/sample/odata/v4/ServerDrivenPaging/pages/Main.js +4 -2
- package/test/sap/ui/core/demokit/sample/odata/v4/Sticky/Opa.qunit.js +11 -10
- package/test/sap/ui/core/demokit/tutorial/databinding/01/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/databinding/01/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/databinding/01/webapp/index.js +7 -3
- package/test/sap/ui/core/demokit/tutorial/databinding/02/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/databinding/02/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/databinding/02/webapp/index.js +4 -3
- package/test/sap/ui/core/demokit/tutorial/databinding/03/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/databinding/03/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/databinding/03/webapp/index.js +4 -3
- package/test/sap/ui/core/demokit/tutorial/databinding/04/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/databinding/04/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/databinding/04/webapp/index.js +4 -3
- package/test/sap/ui/core/demokit/tutorial/databinding/05/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/databinding/05/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/databinding/05/webapp/index.js +4 -3
- package/test/sap/ui/core/demokit/tutorial/databinding/06/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/databinding/06/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/databinding/06/webapp/index.js +4 -3
- package/test/sap/ui/core/demokit/tutorial/databinding/07/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/databinding/07/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/databinding/07/webapp/index.js +4 -3
- package/test/sap/ui/core/demokit/tutorial/databinding/08/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/databinding/08/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/databinding/08/webapp/index.js +4 -3
- package/test/sap/ui/core/demokit/tutorial/databinding/09/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/databinding/09/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/databinding/09/webapp/index.js +4 -3
- package/test/sap/ui/core/demokit/tutorial/databinding/10/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/databinding/10/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/databinding/10/webapp/index.js +4 -3
- package/test/sap/ui/core/demokit/tutorial/databinding/11/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/databinding/11/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/databinding/11/webapp/index.js +6 -4
- package/test/sap/ui/core/demokit/tutorial/databinding/12/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/databinding/12/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/databinding/12/webapp/index.js +6 -4
- package/test/sap/ui/core/demokit/tutorial/databinding/13/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/databinding/13/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/databinding/13/webapp/index.js +6 -4
- package/test/sap/ui/core/demokit/tutorial/databinding/14/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/databinding/14/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/databinding/14/webapp/index.js +6 -4
- package/test/sap/ui/core/demokit/tutorial/databinding/15/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/databinding/15/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/databinding/15/webapp/index.js +6 -4
- package/test/sap/ui/core/demokit/tutorial/mockserver/01/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/mockserver/01/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/mockserver/01/webapp/manifest.json +1 -1
- package/test/sap/ui/core/demokit/tutorial/mockserver/02/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/mockserver/02/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/mockserver/02/webapp/manifest.json +1 -1
- package/test/sap/ui/core/demokit/tutorial/mockserver/03/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/mockserver/03/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/mockserver/03/webapp/manifest.json +1 -1
- package/test/sap/ui/core/demokit/tutorial/mockserver/04/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/mockserver/04/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/mockserver/04/webapp/manifest.json +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/01/package.json +2 -4
- package/test/sap/ui/core/demokit/tutorial/navigation/01/ui5.yaml +7 -0
- package/test/sap/ui/core/demokit/tutorial/navigation/01/webapp/index.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/02/package.json +2 -4
- package/test/sap/ui/core/demokit/tutorial/navigation/02/ui5.yaml +7 -0
- package/test/sap/ui/core/demokit/tutorial/navigation/02/webapp/index.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/03/package.json +2 -4
- package/test/sap/ui/core/demokit/tutorial/navigation/03/ui5.yaml +7 -0
- package/test/sap/ui/core/demokit/tutorial/navigation/03/webapp/index.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/04/package.json +2 -4
- package/test/sap/ui/core/demokit/tutorial/navigation/04/ui5.yaml +7 -0
- package/test/sap/ui/core/demokit/tutorial/navigation/04/webapp/index.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/05/package.json +2 -4
- package/test/sap/ui/core/demokit/tutorial/navigation/05/ui5.yaml +7 -0
- package/test/sap/ui/core/demokit/tutorial/navigation/05/webapp/index.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/06/package.json +2 -4
- package/test/sap/ui/core/demokit/tutorial/navigation/06/ui5.yaml +7 -0
- package/test/sap/ui/core/demokit/tutorial/navigation/06/webapp/index.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/07/package.json +2 -4
- package/test/sap/ui/core/demokit/tutorial/navigation/07/ui5.yaml +7 -0
- package/test/sap/ui/core/demokit/tutorial/navigation/07/webapp/index.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/08/package.json +2 -4
- package/test/sap/ui/core/demokit/tutorial/navigation/08/ui5.yaml +7 -0
- package/test/sap/ui/core/demokit/tutorial/navigation/08/webapp/index.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/09/package.json +2 -4
- package/test/sap/ui/core/demokit/tutorial/navigation/09/ui5.yaml +7 -0
- package/test/sap/ui/core/demokit/tutorial/navigation/09/webapp/index.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/10/package.json +2 -4
- package/test/sap/ui/core/demokit/tutorial/navigation/10/ui5.yaml +7 -0
- package/test/sap/ui/core/demokit/tutorial/navigation/10/webapp/index.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/11/package.json +2 -4
- package/test/sap/ui/core/demokit/tutorial/navigation/11/ui5.yaml +7 -0
- package/test/sap/ui/core/demokit/tutorial/navigation/11/webapp/index.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/12/package.json +2 -4
- package/test/sap/ui/core/demokit/tutorial/navigation/12/ui5.yaml +7 -0
- package/test/sap/ui/core/demokit/tutorial/navigation/12/webapp/index.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/13/package.json +2 -4
- package/test/sap/ui/core/demokit/tutorial/navigation/13/ui5.yaml +7 -0
- package/test/sap/ui/core/demokit/tutorial/navigation/13/webapp/index.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/14/package.json +2 -4
- package/test/sap/ui/core/demokit/tutorial/navigation/14/ui5.yaml +7 -0
- package/test/sap/ui/core/demokit/tutorial/navigation/14/webapp/index.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/15/package.json +2 -4
- package/test/sap/ui/core/demokit/tutorial/navigation/15/ui5.yaml +7 -0
- package/test/sap/ui/core/demokit/tutorial/navigation/15/webapp/index.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/16/package.json +2 -4
- package/test/sap/ui/core/demokit/tutorial/navigation/16/ui5.yaml +7 -0
- package/test/sap/ui/core/demokit/tutorial/navigation/16/webapp/index.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/17/package.json +4 -6
- package/test/sap/ui/core/demokit/tutorial/navigation/17/ui5.yaml +8 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/17/webapp/index.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/index.html +2 -2
- package/test/sap/ui/core/demokit/tutorial/odatav4/01/package.json +2 -6
- package/test/sap/ui/core/demokit/tutorial/odatav4/01/ui5.yaml +9 -0
- package/test/sap/ui/core/demokit/tutorial/odatav4/02/package.json +2 -6
- package/test/sap/ui/core/demokit/tutorial/odatav4/02/ui5.yaml +9 -0
- package/test/sap/ui/core/demokit/tutorial/odatav4/03/package.json +2 -6
- package/test/sap/ui/core/demokit/tutorial/odatav4/03/ui5.yaml +9 -0
- package/test/sap/ui/core/demokit/tutorial/odatav4/04/package.json +2 -6
- package/test/sap/ui/core/demokit/tutorial/odatav4/04/ui5.yaml +9 -0
- package/test/sap/ui/core/demokit/tutorial/odatav4/05/package.json +2 -6
- package/test/sap/ui/core/demokit/tutorial/odatav4/05/ui5.yaml +9 -0
- package/test/sap/ui/core/demokit/tutorial/odatav4/06/package.json +2 -6
- package/test/sap/ui/core/demokit/tutorial/odatav4/06/ui5.yaml +9 -0
- package/test/sap/ui/core/demokit/tutorial/odatav4/06/webapp/controller/App.controller.js +5 -5
- package/test/sap/ui/core/demokit/tutorial/odatav4/07/package.json +2 -6
- package/test/sap/ui/core/demokit/tutorial/odatav4/07/ui5.yaml +9 -0
- package/test/sap/ui/core/demokit/tutorial/odatav4/07/webapp/controller/App.controller.js +7 -7
- package/test/sap/ui/core/demokit/tutorial/odatav4/08/package.json +2 -6
- package/test/sap/ui/core/demokit/tutorial/odatav4/08/ui5.yaml +9 -0
- package/test/sap/ui/core/demokit/tutorial/odatav4/08/webapp/controller/App.controller.js +7 -7
- package/test/sap/ui/core/demokit/tutorial/odatav4/08/webapp/test/integration/opaTests.qunit.js +5 -5
- package/test/sap/ui/core/demokit/tutorial/odatav4/08/webapp/test/integration/pages/Tutorial.js +1 -1
- package/test/sap/ui/core/demokit/tutorial/odatav4/09/package.json +2 -6
- package/test/sap/ui/core/demokit/tutorial/odatav4/09/ui5.yaml +9 -0
- package/test/sap/ui/core/demokit/tutorial/odatav4/09/webapp/controller/App.controller.js +7 -7
- package/test/sap/ui/core/demokit/tutorial/odatav4/10/package.json +2 -6
- package/test/sap/ui/core/demokit/tutorial/odatav4/10/ui5.yaml +9 -0
- package/test/sap/ui/core/demokit/tutorial/odatav4/10/webapp/controller/App.controller.js +7 -7
- package/test/sap/ui/core/demokit/tutorial/odatav4/11/package.json +2 -6
- package/test/sap/ui/core/demokit/tutorial/odatav4/11/ui5.yaml +9 -0
- package/test/sap/ui/core/demokit/tutorial/odatav4/11/webapp/controller/App.controller.js +7 -7
- package/test/sap/ui/core/demokit/tutorial/odatav4/11/webapp/test/integration/opaTests.qunit.js +5 -5
- package/test/sap/ui/core/demokit/tutorial/odatav4/11/webapp/test/integration/pages/Tutorial.js +1 -1
- package/test/sap/ui/core/demokit/tutorial/troubleshooting/01/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/troubleshooting/01/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/troubleshooting/01/webapp/manifest.json +1 -1
- package/test/sap/ui/core/demokit/tutorial/troubleshooting/01/webapp/test/integration/opaTests.qunit.js +6 -6
- package/test/sap/ui/core/frameoptions/createcontent.js +7 -6
- package/test/sap/ui/core/internal/samples/client/MusicCollection/index.html +1 -1
- package/test/sap/ui/core/internal/samples/composite/xmlcomposite/exStringAndFloat/Test.controller.js +3 -2
- package/test/sap/ui/core/internal/samples/composite/xmlcomposite/exTableWrapperOuterBinding/Test.controller.js +3 -2
- package/test/sap/ui/core/internal/samples/odata/twoFields/Opa.qunit.html +1 -1
- package/test/sap/ui/core/internal/samples/odata/twoFields/Opa.qunit.js +8 -8
- package/test/sap/ui/core/internal/samples/odata/twoFields/index.html +1 -1
- package/test/sap/ui/core/internal/samples/odata/v2/Products/Opa.qunit.html +1 -1
- package/test/sap/ui/core/internal/samples/odata/v2/Products/Opa.qunit.js +7 -7
- package/test/sap/ui/core/internal/samples/odata/v2/Products/index.html +1 -1
- package/test/sap/ui/core/internal/samples/odata/v2/SalesOrders/Component.js +3 -2
- package/test/sap/ui/core/internal/samples/odata/v2/SalesOrders/MIT.SalesOrders(V2).ODLB.create.html +2 -0
- package/test/sap/ui/core/internal/samples/odata/v2/SalesOrders/Main.controller.js +4 -4
- package/test/sap/ui/core/internal/samples/odata/v2/SalesOrders/Main.view.xml +6 -3
- package/test/sap/ui/core/internal/samples/odata/v2/SalesOrders/Opa.qunit.html +1 -1
- package/test/sap/ui/core/internal/samples/odata/v2/SalesOrders/Opa.qunit.js +9 -6
- package/test/sap/ui/core/internal/samples/odata/v2/SalesOrders/SandboxModel.js +3 -0
- package/test/sap/ui/core/internal/samples/odata/v2/SalesOrders/data/ODLB.create/TC3/SalesOrderSet_desc_4-1.json +16 -0
- package/test/sap/ui/core/internal/samples/odata/v2/SalesOrders/index.html +1 -1
- package/test/sap/ui/core/internal/samples/odata/v2/SalesOrders/tests/ODataListBinding.create/TC3_SalesOrders_InlineCreationRow.js +9 -0
- package/test/sap/ui/core/internal/samples/odata/v2/TreeTable/Component.js +3 -2
- package/test/sap/ui/core/internal/samples/odata/v2/TreeTable/Main.controller.js +3 -3
- package/test/sap/ui/core/internal/samples/odata/v2/TreeTable/Main.view.xml +1 -1
- package/test/sap/ui/core/internal/samples/odata/v2/TreeTable/index.html +1 -1
- package/test/sap/ui/core/qunit/BlockLayerUtils.qunit.js +9 -7
- package/test/sap/ui/core/qunit/CalculatedFields.qunit.js +4 -2
- package/test/sap/ui/core/qunit/ContextMenuSupport.qunit.js +3 -2
- package/test/sap/ui/core/qunit/ControlDefinition.qunit.js +49 -28
- package/test/sap/ui/core/qunit/ControlRenderer.qunit.js +218 -223
- package/test/sap/ui/core/qunit/Core.qunit.js +39 -34
- package/test/sap/ui/core/qunit/CoreEvents.qunit.js +17 -15
- package/test/sap/ui/core/qunit/Core_libraryTerminologies_integration.qunit.js +12 -11
- package/test/sap/ui/core/qunit/Core_repeatedExecution.qunit.js +3 -3
- package/test/sap/ui/core/qunit/CustomStyleClassSupport.qunit.js +122 -119
- package/test/sap/ui/core/qunit/CustomThemeFallback.qunit.js +5 -17
- package/test/sap/ui/core/qunit/Declarative.qunit.js +37 -37
- package/test/sap/ui/core/qunit/Element_base.qunit.js +1 -1
- package/test/sap/ui/core/qunit/Element_data.qunit.js +5 -5
- package/test/sap/ui/core/qunit/Element_destroy.qunit.js +6 -4
- package/test/sap/ui/core/qunit/Element_focus.qunit.js +25 -24
- package/test/sap/ui/core/qunit/Element_metadata_selector.qunit.js +3 -2
- package/test/sap/ui/core/qunit/EnabledPropagator.qunit.js +7 -6
- package/test/sap/ui/core/qunit/EventBus.qunit.js +4 -3
- package/test/sap/ui/core/qunit/ExpressionParser.qunit.js +1 -1
- package/test/sap/ui/core/qunit/FastNavigation.qunit.js +3 -2
- package/test/sap/ui/core/qunit/FastNavigationWithWebComponents.qunit.js +5 -5
- package/test/sap/ui/core/qunit/FieldGroup.qunit.js +17 -13
- package/test/sap/ui/core/qunit/FocusHandler.qunit.js +11 -9
- package/test/sap/ui/core/qunit/Fragment.qunit.js +47 -46
- package/test/sap/ui/core/qunit/Fragment_legacyAPIs.qunit.js +63 -61
- package/test/sap/ui/core/qunit/HTML.qunit.js +67 -67
- package/test/sap/ui/core/qunit/Icon.qunit.js +66 -65
- package/test/sap/ui/core/qunit/IconPool.qunit.js +5 -4
- package/test/sap/ui/core/qunit/InvisibleText.qunit.js +17 -15
- package/test/sap/ui/core/qunit/Lib.qunit.js +8 -8
- package/test/sap/ui/core/qunit/LocalBusyIndicator.qunit.js +24 -24
- package/test/sap/ui/core/qunit/ManagedObject.qunit.js +3 -3
- package/test/sap/ui/core/qunit/PlaceAt.qunit.js +2 -2
- package/test/sap/ui/core/qunit/RenderManager.qunit.js +54 -53
- package/test/sap/ui/core/qunit/ResizeHandler.qunit.js +8 -9
- package/test/sap/ui/core/qunit/ScrollBar.qunit.js +7 -6
- package/test/sap/ui/core/qunit/ShortcutHints.qunit.js +13 -11
- package/test/sap/ui/core/qunit/StashedControlSupport.qunit.js +15 -14
- package/test/sap/ui/core/qunit/ThemeHelper.qunit.js +5 -4
- package/test/sap/ui/core/qunit/ThemeManager.qunit.js +47 -79
- package/test/sap/ui/core/qunit/ThemeParameters.qunit.js +44 -375
- package/test/sap/ui/core/qunit/ThemeParameters_legacyAPIs.qunit.js +686 -0
- package/test/sap/ui/core/qunit/Theming.qunit.js +88 -50
- package/test/sap/ui/core/qunit/Theming_default_and_fallback.qunit.js +130 -0
- package/test/sap/ui/core/qunit/TooltipBase.qunit.js +6 -4
- package/test/sap/ui/core/qunit/UIArea.qunit.js +258 -28
- package/test/sap/ui/core/qunit/analytics/testsuite4analytics.qunit.html +3 -3
- package/test/sap/ui/core/qunit/analytics/testsuite4analytics.qunit.js +9 -8
- package/test/sap/ui/core/qunit/app/MessageListBinding.qunit.js +10 -10
- package/test/sap/ui/core/qunit/base/Config.qunit.js +12 -2
- package/test/sap/ui/core/qunit/base/Config_cascade.qunit.js +123 -52
- package/test/sap/ui/core/qunit/base/Config_meta.qunit.html +2 -0
- package/test/sap/ui/core/qunit/base/config/GlobalConfig.js +3 -1
- package/test/sap/ui/core/qunit/base/config/GlobalConfigForCascade.js +4 -1
- package/test/sap/ui/core/qunit/base/i18n/Localization.qunit.js +4 -3
- package/test/sap/ui/core/qunit/base/i18n/ResourceBundle.qunit.js +13 -3
- package/test/sap/ui/core/qunit/base/util/UriParameters.qunit.js +27 -1
- package/test/sap/ui/core/qunit/bootstrap/BootstrapCustomBootTaskPreloadCss.qunit.js +4 -4
- package/test/sap/ui/core/qunit/bootstrap/BootstrapMinimal.qunit.js +3 -3
- package/test/sap/ui/core/qunit/bootstrap/BootstrapMinimal_legacyAPIs.qunit.js +13 -11
- package/test/sap/ui/core/qunit/bootstrap/BootstrapPreload.qunit.js +1 -1
- package/test/sap/ui/core/qunit/bootstrap/BootstrapWithCustomBootTask.beforeBootstrap.qunit.js +22 -21
- package/test/sap/ui/core/qunit/bootstrap/BootstrapWithCustomBootTask.qunit.js +4 -9
- package/test/sap/ui/core/qunit/bootstrap/BootstrapWithCustomScript_legacyAPIs.qunit.js +13 -11
- package/test/sap/ui/core/qunit/bootstrap/BootstrapWithNoJQuery_legacyAPIs.qunit.js +7 -5
- package/test/sap/ui/core/qunit/bootstrap/CalendarClassLoadingWithCustomBootTaskAndPreload.qunit.js +27 -14
- package/test/sap/ui/core/qunit/bootstrap/CfgDefaults.qunit.js +4 -2
- package/test/sap/ui/core/qunit/bootstrap/CfgFromConfigAttribute.qunit.js +4 -3
- package/test/sap/ui/core/qunit/bootstrap/CfgFromGlobalObject.qunit.js +4 -3
- package/test/sap/ui/core/qunit/bootstrap/CfgFromTagAttributes.qunit.js +5 -4
- package/test/sap/ui/core/qunit/bootstrap/Configuration.qunit.js +2 -198
- package/test/sap/ui/core/qunit/bootstrap/Configuration_language_via_URL.qunit.js +210 -0
- package/test/sap/ui/core/qunit/bootstrap/ThemeVersion.qunit.js +33 -30
- package/test/sap/ui/core/qunit/bootstrap/testsuite.bootstrap.qunit.js +18 -6
- package/test/sap/ui/core/qunit/component/Component.qunit.js +26 -15
- package/test/sap/ui/core/qunit/component/ComponentSupport.qunit.js +6 -5
- package/test/sap/ui/core/qunit/component/Component_dependencyLoading.qunit.js +15 -9
- package/test/sap/ui/core/qunit/component/Component_dependencyLoading_unavoidablySync.qunit.js +10 -6
- package/test/sap/ui/core/qunit/component/Component_unavoidablySync.qunit.js +4 -3
- package/test/sap/ui/core/qunit/component/Customizing.qunit.js +11 -11
- package/test/sap/ui/core/qunit/component/Customizing_async.qunit.js +4 -3
- package/test/sap/ui/core/qunit/component/Customizing_disabled.qunit.js +9 -10
- package/test/sap/ui/core/qunit/component/Customizing_legacyAPIs.qunit.js +10 -11
- package/test/sap/ui/core/qunit/component/Customizing_multi.qunit.js +9 -11
- package/test/sap/ui/core/qunit/component/Customizing_unavoidablySync.qunit.js +9 -11
- package/test/sap/ui/core/qunit/component/ExtensionPoint.qunit.js +4 -5
- package/test/sap/ui/core/qunit/component/ExtensionPoint_unavoidablySync.qunit.js +4 -3
- package/test/sap/ui/core/qunit/component/Metadata.qunit.js +3 -3
- package/test/sap/ui/core/qunit/component/Models.qunit.js +103 -44
- package/test/sap/ui/core/qunit/component/UIComponent.qunit.js +38 -22
- package/test/sap/ui/core/qunit/component/UIComponent_unavoidablySync.qunit.js +23 -22
- package/test/sap/ui/core/qunit/component/testdata/dependencyLoading/component1/manifest.json +2 -1
- package/test/sap/ui/core/qunit/component/testdata/dependencyLoading/component2/manifest.json +1 -0
- package/test/sap/ui/core/qunit/component/testdata/dependencyLoading/component3/manifest.json +2 -1
- package/test/sap/ui/core/qunit/component/testdata/dependencyLoading/component4/manifest.json +1 -0
- package/test/sap/ui/core/qunit/component/testdata/dependencyLoading/component5/manifest.json +1 -1
- package/test/sap/ui/core/qunit/component/testdata/dependencyLoading/component6/manifest.json +1 -0
- package/test/sap/ui/core/qunit/component/testdata/dependencyLoading/componentVariant/manifest.json +1 -0
- package/test/sap/ui/core/qunit/component/testdata/v2asyncRootView/manifest.json +1 -1
- package/test/sap/ui/core/qunit/component/testdata/v2inline/Component.js +1 -1
- package/test/sap/ui/core/qunit/composite/XMLComposite.qunit.js +48 -48
- package/test/sap/ui/core/qunit/csp/ContentSecurityPolicy.qunit.js +18 -13
- package/test/sap/ui/core/qunit/dnd/DragAndDrop.qunit.js +19 -18
- package/test/sap/ui/core/qunit/dnd/DragInfo.qunit.js +13 -12
- package/test/sap/ui/core/qunit/dnd/DropInfo.qunit.js +5 -4
- package/test/sap/ui/core/qunit/generic/ControlMemoryLeaks.qunit.js +7 -6
- package/test/sap/ui/core/qunit/generic/DuplicateIdCheck.qunit.js +7 -6
- package/test/sap/ui/core/qunit/generic/legacy/ControlIterator.qunit.js +6 -6
- package/test/sap/ui/core/qunit/generic/legacy/ControlMemoryLeaks.qunit.js +20 -17
- package/test/sap/ui/core/qunit/generic/legacy/DuplicateIdCheck.qunit.js +8 -7
- package/test/sap/ui/core/qunit/i18n/LocaleData.qunit.js +1 -2
- package/test/sap/ui/core/qunit/internal/1Ring.qunit.html +14 -19
- package/test/sap/ui/core/qunit/internal/1Ring.qunit.js +34 -22
- package/test/sap/ui/core/qunit/internal/1RingModels.qunit.html +4 -5
- package/test/sap/ui/core/qunit/internal/1RingModels.qunit.js +1 -0
- package/test/sap/ui/core/qunit/internal/AnnotationParser.qunit.html +4 -4
- package/test/sap/ui/core/qunit/internal/ODataV4.qunit.html +6 -6
- package/test/sap/ui/core/qunit/internal/testsuite.feature-odata-v4.qunit.js +4 -0
- package/test/sap/ui/core/qunit/internal/testsuite.models.qunit.js +19 -9
- package/test/sap/ui/core/qunit/isBehindOtherElement.qunit.js +7 -7
- package/test/sap/ui/core/qunit/jquery-mobile-custom.qunit.js +3 -3
- package/test/sap/ui/core/qunit/jquery.sap.events.qunit.js +3 -2
- package/test/sap/ui/core/qunit/jquery.sap.global-config.qunit.js +2 -4
- package/test/sap/ui/core/qunit/jquery.sap.ui.qunit.js +20 -19
- package/test/sap/ui/core/qunit/json/JSONModel.qunit.js +5 -9
- package/test/sap/ui/core/qunit/messages/Messaging.qunit.js +137 -0
- package/test/sap/ui/core/qunit/messages/messagesDataBinding.qunit.js +3 -1
- package/test/sap/ui/core/qunit/messages/messagesEnd2End.qunit.js +10 -10
- package/test/sap/ui/core/qunit/messages/messagesGeneral.qunit.js +42 -46
- package/test/sap/ui/core/qunit/messages/messagesGeneral_legacyAPIs.qunit.js +158 -0
- package/test/sap/ui/core/qunit/messages/messagesUsage.qunit.js +29 -39
- package/test/sap/ui/core/qunit/messages/testsuite.messaging.base.qunit.js +9 -2
- package/test/sap/ui/core/qunit/model/Binding.qunit.js +8 -8
- package/test/sap/ui/core/qunit/model/ClientPropertyBinding.qunit.js +47 -0
- package/test/sap/ui/core/qunit/model/controlhelper/TreeBindingProxy.qunit.js +24 -14
- package/test/sap/ui/core/qunit/mvc/AnyView.qunit.js +7 -6
- package/test/sap/ui/core/qunit/mvc/AnyViewAsync.qunit.js +3 -2
- package/test/sap/ui/core/qunit/mvc/AsyncXMLView.qunit.js +5 -3
- package/test/sap/ui/core/qunit/mvc/Controller.qunit.js +3 -3
- package/test/sap/ui/core/qunit/mvc/View.qunit.js +5 -1
- package/test/sap/ui/core/qunit/mvc/XMLTemplateProcessorAsync_unavoidablyUsingInlineStyle.qunit.js +5 -4
- package/test/sap/ui/core/qunit/mvc/XMLTemplateProcessorRequireXML.qunit.js +8 -9
- package/test/sap/ui/core/qunit/mvc/XMLView.qunit.js +50 -44
- package/test/sap/ui/core/qunit/mvc/testdata/TypedViewWithRendererRenderer.js +2 -2
- package/test/sap/ui/core/qunit/mvc/testdata/stashed/OP.html +1 -1
- package/test/sap/ui/core/qunit/mvc/testdata/stashed/manifest.json +2 -1
- package/test/sap/ui/core/qunit/mvc/viewprocessing/ViewProcessing.qunit.js +18 -22
- package/test/sap/ui/core/qunit/mvc/viewprocessing/ViewProcessing_legacyAPIs.qunit.js +23 -27
- package/test/sap/ui/core/qunit/mvc_legacyAPIs/AnyViewAsync_legacyAPIs.qunit.js +10 -11
- package/test/sap/ui/core/qunit/mvc_legacyAPIs/AnyView_legacyAPIs.qunit.js +7 -6
- package/test/sap/ui/core/qunit/mvc_legacyAPIs/AsyncXMLView_legacyAPIs.qunit.js +5 -3
- package/test/sap/ui/core/qunit/mvc_legacyAPIs/HTMLView_legacyAPIs.qunit.js +8 -7
- package/test/sap/ui/core/qunit/mvc_legacyAPIs/XMLTemplateProcessorRequireXML_legacyAPIs.qunit.js +7 -7
- package/test/sap/ui/core/qunit/mvc_legacyAPIs/XMLView_legacyAPIs.qunit.js +45 -51
- package/test/sap/ui/core/qunit/odata/ODataAnnotations.qunit.js +52 -20
- package/test/sap/ui/core/qunit/odata/{ODataListBinding.qunit.js → ODataListBinding_legacyAPIs.qunit.js} +27 -0
- package/test/sap/ui/core/qunit/odata/ODataMessageParser.qunit.js +44 -48
- package/test/sap/ui/core/qunit/odata/ODataMessageParserNoFakeService.qunit.js +19 -15
- package/test/sap/ui/core/qunit/odata/ODataMetaModel.qunit.js +101 -29
- package/test/sap/ui/core/qunit/odata/ODataMetadata.qunit.js +17 -7
- package/test/sap/ui/core/qunit/odata/ODataTreeBindingAdapter.qunit.js +147 -89
- package/test/sap/ui/core/qunit/odata/ODataUtils.qunit.js +1 -0
- package/test/sap/ui/core/qunit/odata/_AnnotationHelperBasics.qunit.js +10 -4
- package/test/sap/ui/core/qunit/odata/data/ODataModelFakeService.js +1 -1
- package/test/sap/ui/core/qunit/odata/type/DateTimeBase.qunit.js +38 -12
- package/test/sap/ui/core/qunit/odata/type/ODataType.qunit.js +9 -0
- package/test/sap/ui/core/qunit/odata/type/TimeOfDay.qunit.js +33 -12
- package/test/sap/ui/core/qunit/odata/v2/CanonicalRequests.qunit.js +5 -4
- package/test/sap/ui/core/qunit/odata/v2/Context.qunit.js +12 -0
- package/test/sap/ui/core/qunit/odata/v2/ODataListBindingNoFakeService.qunit.js +485 -22
- package/test/sap/ui/core/qunit/odata/v2/ODataModel.integration.qunit.js +762 -90
- package/test/sap/ui/core/qunit/odata/v2/ODataModelNoFakeService.qunit.js +149 -6
- package/test/sap/ui/core/qunit/odata/v2/ODataTreeBindingFlatNoFakeService.qunit.js +21 -0
- package/test/sap/ui/core/qunit/odata/v2/ODataTreeBindingNoFakeService.qunit.js +1 -2
- package/test/sap/ui/core/qunit/odata/v2/ODataV2ListBinding.qunit.js +7 -207
- package/test/sap/ui/core/qunit/odata/v2/ODataV2ListBinding_Filter_legacyAPIs.qunit.js +281 -0
- package/test/sap/ui/core/qunit/odata/v2/ODataV2Model.qunit.js +9 -8
- package/test/sap/ui/core/qunit/odata/v2/ODataV2TreeBinding.qunit.js +1 -0
- package/test/sap/ui/core/qunit/odata/v2/V2ODataModel.qunit.js +95 -85
- package/test/sap/ui/core/qunit/odata/v2/V2ODataModelB.qunit.js +70 -67
- package/test/sap/ui/core/qunit/odata/v2/V2ODataModelDataState.qunit.js +19 -20
- package/test/sap/ui/core/qunit/odata/v2/testsuite.odatav2.qunit.js +4 -0
- package/test/sap/ui/core/qunit/odata/v4/Context.qunit.js +145 -35
- package/test/sap/ui/core/qunit/odata/v4/ODataBinding.qunit.js +64 -13
- package/test/sap/ui/core/qunit/odata/v4/ODataContextBinding.qunit.js +359 -78
- package/test/sap/ui/core/qunit/odata/v4/ODataListBinding.qunit.js +255 -33
- package/test/sap/ui/core/qunit/odata/v4/ODataModel.integration.qunit.js +2267 -148
- package/test/sap/ui/core/qunit/odata/v4/ODataModel.qunit.js +18 -17
- package/test/sap/ui/core/qunit/odata/v4/ODataParentBinding.qunit.js +19 -9
- package/test/sap/ui/core/qunit/odata/v4/ODataPropertyBinding.qunit.js +6 -27
- package/test/sap/ui/core/qunit/odata/v4/data/metadata.json +3 -1
- package/test/sap/ui/core/qunit/odata/v4/data/metadata.xml +2 -2
- package/test/sap/ui/core/qunit/odata/v4/lib/_AggregationCache.qunit.js +444 -53
- package/test/sap/ui/core/qunit/odata/v4/lib/_AggregationHelper.qunit.js +7 -8
- package/test/sap/ui/core/qunit/odata/v4/lib/_Cache.qunit.js +295 -161
- package/test/sap/ui/core/qunit/odata/v4/lib/_Helper.qunit.js +12 -22
- package/test/sap/ui/core/qunit/odata/v4/lib/_Requestor.qunit.js +108 -10
- package/test/sap/ui/core/qunit/odata/v4/lib/_V2Requestor.qunit.js +1 -1
- package/test/sap/ui/core/qunit/opa/Opa5PageObject.qunit.js +5 -6
- package/test/sap/ui/core/qunit/opa/OpaPlugin.qunit.js +35 -46
- package/test/sap/ui/core/qunit/opa/RecordReplay.qunit.js +13 -14
- package/test/sap/ui/core/qunit/opa/_ControlFinder.qunit.js +5 -4
- package/test/sap/ui/core/qunit/opa/actions/Action.qunit.js +6 -5
- package/test/sap/ui/core/qunit/opa/actions/EnterText.qunit.js +22 -21
- package/test/sap/ui/core/qunit/opa/actions/Press.qunit.js +60 -56
- package/test/sap/ui/core/qunit/opa/autowaiter/_cssAnimationWaiter.js +5 -7
- package/test/sap/ui/core/qunit/opa/autowaiter/_cssTransitionWaiter.js +5 -9
- package/test/sap/ui/core/qunit/opa/autowaiter/_jsAnimationWaiter.js +5 -6
- package/test/sap/ui/core/qunit/opa/autowaiter/_navigationContainerWaiter.js +5 -4
- package/test/sap/ui/core/qunit/opa/autowaiter/_resourceWaiter.js +21 -20
- package/test/sap/ui/core/qunit/opa/fixture/bindingPath.js +6 -5
- package/test/sap/ui/core/qunit/opa/matchers/Interactable.qunit.js +7 -5
- package/test/sap/ui/core/qunit/opa/matchers/LabelFor.qunit.js +4 -3
- package/test/sap/ui/core/qunit/opa/matchers/Sibling.qunit.js +4 -3
- package/test/sap/ui/core/qunit/opa/matchers/Visible.qunit.js +6 -5
- package/test/sap/ui/core/qunit/opa/matchers/_Busy.qunit.js +28 -27
- package/test/sap/ui/core/qunit/opa/matchers/_Editable.qunit.js +11 -10
- package/test/sap/ui/core/qunit/opa/matchers/_Enabled.qunit.js +11 -10
- package/test/sap/ui/core/qunit/opa/matchers/_Visitor.qunit.js +5 -4
- package/test/sap/ui/core/qunit/opa/opa5/actions.qunit.js +8 -7
- package/test/sap/ui/core/qunit/opa/opa5/basics.qunit.js +12 -17
- package/test/sap/ui/core/qunit/opa/opa5/logging.qunit.js +5 -6
- package/test/sap/ui/core/qunit/opa/opa5/matchers.qunit.js +6 -5
- package/test/sap/ui/core/qunit/opa/selectors/_BindingPath.js +10 -9
- package/test/sap/ui/core/qunit/opa/selectors/_ControlSelectorGenerator.js +6 -7
- package/test/sap/ui/core/qunit/opa/selectors/_ControlSelectorValidator.js +4 -3
- package/test/sap/ui/core/qunit/opa/selectors/_DropdownItem.js +4 -3
- package/test/sap/ui/core/qunit/opa/selectors/_GlobalID.js +4 -3
- package/test/sap/ui/core/qunit/opa/selectors/_LabelFor.js +4 -3
- package/test/sap/ui/core/qunit/opa/selectors/_Properties.js +33 -27
- package/test/sap/ui/core/qunit/opa/selectors/_Selector.js +9 -11
- package/test/sap/ui/core/qunit/opa/selectors/_TableRowItem.js +8 -9
- package/test/sap/ui/core/qunit/opa/selectors/_ViewID.js +5 -7
- package/test/sap/ui/core/qunit/performance/trace/Interaction.qunit.js +35 -28
- package/test/sap/ui/core/qunit/routing/Placeholder.qunit.js +11 -9
- package/test/sap/ui/core/qunit/routing/PlaceholderOptOut.qunit.js +5 -3
- package/test/sap/ui/core/qunit/routing/async/Router.qunit.js +57 -0
- package/test/sap/ui/core/qunit/routing/fixture/historyIframe/iframe/index.html +1 -1
- package/test/sap/ui/core/qunit/routing/fixture/router/component/2LevelsMultiNavTo/Child/Component.js +30 -0
- package/test/sap/ui/core/qunit/routing/fixture/router/component/2LevelsMultiNavTo/Child/manifest.json +25 -0
- package/test/sap/ui/core/qunit/routing/fixture/router/component/2LevelsMultiNavTo/Parent/Component.js +14 -0
- package/test/sap/ui/core/qunit/routing/fixture/router/component/2LevelsMultiNavTo/Parent/manifest.json +51 -0
- package/test/sap/ui/core/qunit/routing/fixture/router/component/2LevelsMultiNavTo/Parent/view/NotFound.view.xml +3 -0
- package/test/sap/ui/core/qunit/routing/fixture/router/component/2LevelsMultiNavTo/Parent/view/RootView.view.xml +5 -0
- package/test/sap/ui/core/qunit/rule/app/deprecatedJSViewUsage.qunit.js +4 -0
- package/test/sap/ui/core/qunit/rule/app/globalApiUsage.qunit.js +4 -0
- package/test/sap/ui/core/qunit/rule/app/jquerySapUsage.qunit.js +4 -0
- package/test/sap/ui/core/qunit/rule/app/syncXHR.qunit.js +28 -17
- package/test/sap/ui/core/qunit/rule/app/syncXHRBootstrap.qunit.js +7 -3
- package/test/sap/ui/core/qunit/rule/app/syncXHRBootstrapDebug.qunit.js +7 -3
- package/test/sap/ui/core/qunit/rule/app/syncXHRBootstrapDebugBeforeBootstrap.js +4 -0
- package/test/sap/ui/core/qunit/rule/config/asynchronousXMLViews.qunit.js +13 -19
- package/test/sap/ui/core/qunit/rule/misc/silentEventBus.qunit.js +8 -7
- package/test/sap/ui/core/qunit/rule/model/modelSupport.qunit.js +11 -2
- package/test/sap/ui/core/qunit/rule/testsuite.rule.qunit.js +18 -0
- package/test/sap/ui/core/qunit/support/techinfo/TechnicalInfoTestbench.html +3 -1
- package/test/sap/ui/core/qunit/test/starter/find/index.html +1 -1
- package/test/sap/ui/core/qunit/test/starter/find/main.js +13 -9
- package/test/sap/ui/core/qunit/testsuite.core.framework.qunit.js +0 -6
- package/test/sap/ui/core/qunit/testsuites/testsuite.base.configuration.qunit.js +1 -1
- package/test/sap/ui/core/qunit/testsuites/testsuite.databinding.qunit.js +16 -6
- package/test/sap/ui/core/qunit/testsuites/testsuite.foundation.enablement.qunit.js +7 -1
- package/test/sap/ui/core/qunit/testsuites/testsuite.theming.qunit.js +48 -6
- package/test/sap/ui/core/qunit/tmpl/Template.qunit.js +36 -35
- package/test/sap/ui/core/qunit/types/DateFormat.qunit.js +13 -0
- package/test/sap/ui/core/qunit/types/DateInterval.qunit.js +2 -2
- package/test/sap/ui/core/qunit/util/BusyIndicatorNoCore.qunit.js +2 -2
- package/test/sap/ui/core/qunit/util/InvisibleMessage.qunit.js +4 -4
- package/test/sap/ui/core/qunit/util/LabelEnablement.qunit.js +27 -31
- package/test/sap/ui/core/qunit/util/Popup.qunit.js +27 -27
- package/test/sap/ui/core/qunit/util/ResponsivePaddingsEnablement.qunit.js +13 -9
- package/test/sap/ui/core/qunit/util/XMLPreprocessor.qunit.js +60 -7
- package/test/sap/ui/core/qunit/util/jQuery.sap.Version.qunit.js +5 -5
- package/test/sap/ui/core/qunit/util/jQuery.sap.measure.qunit.js +1 -1
- package/test/sap/ui/core/qunit/util/jquery.sap.dom.qunit.js +3 -2
- package/test/sap/ui/core/qunit/util/reflection/JsControlTreeModifier.qunit.js +38 -21
- package/test/sap/ui/core/qunit/util/reflection/XmlTreeModifier.qunit.js +64 -40
- package/test/sap/ui/core/qunit/util/static/TechnicalInfoTestbenchInit.js +8 -2
- package/test/sap/ui/core/qunit/util/support/TechnicalInfo.qunit.js +11 -10
- package/test/sap/ui/core/qunit/webc/WebComponent.qunit.js +188 -0
- package/test/sap/ui/core/qunit/webc/testsuite.webc.qunit.html +14 -0
- package/test/sap/ui/core/qunit/webc/testsuite.webc.qunit.js +22 -0
- package/test/sap/ui/core/qunit/xml/XMLPropertyBinding.qunit.js +69 -8
- package/test/sap/ui/core/relnotes/changes-1.117.json +1 -34
- package/test/sap/ui/core/relnotes/changes-1.118.json +110 -0
- package/test/sap/ui/core/relnotes/changes-1.119.json +217 -0
- package/test/sap/ui/core/resources/fastnav.js +3 -2
- package/test/sap/ui/core/samples/ResponsiveDemo.html +3 -3
- package/test/sap/ui/core/samples/components/commands/manifest.json +2 -2
- package/test/sap/ui/core/samples/components/resourcesCSS/index.html +1 -1
- package/test/sap/ui/core/samples/components/sample/manifest.json +2 -1
- package/test/sap/ui/core/samples/databinding/DataBindingAsyncType.html +3 -2
- package/test/sap/ui/core/samples/databinding/DatabindingMessages.html +158 -153
- package/test/sap/ui/core/samples/databinding/ODatabindingMessages.html +7 -9
- package/test/sap/ui/core/samples/databinding/UnitTable.view.xml +9 -2
- package/test/sap/ui/core/samples/databinding/UnitTableMain.js +3 -4
- package/test/sap/ui/core/samples/extensions/index_legacyAPIs.html +15 -13
- package/test/sap/ui/core/samples/formatting/controller/ChooseFormatOptions.controller.js +3 -2
- package/test/sap/ui/core/samples/formatting/manifest.json +2 -2
- package/test/sap/ui/core/samples/mvc/ExtendedXMLViewEventHandlerSyntax.html +5 -3
- package/test/sap/ui/core/samples/mvc/XMLViewAsync.html +62 -61
- package/test/sap/ui/core/samples/mvc/XMLViewBindableAggregation.html +1 -1
- package/test/sap/ui/core/samples/routing_legacyAPIs/AsyncViews.html +124 -123
- package/test/sap/ui/core/terminologies/App.controller.js +3 -2
- package/test/sap/ui/core/terminologies/App.view.xml +64 -64
- package/test/sap/ui/core/tmpl_legacyAPIs/TemplateSimple.html +38 -37
- package/test/sap/ui/core/util/PasteHelper.html +5 -4
- package/test/sap/ui/core/visual/images/ContextMenuSupport/windows/1600x1200/chrome/horizon/ltr/cozy/firstItem-contextMenu.ref.lnk +1 -1
- package/test/sap/ui/core/visual/images/ContextMenuSupport/windows/1600x1200/chrome/horizon/ltr/cozy/initial.ref.lnk +1 -1
- package/test/sap/ui/core/visual/images/ContextMenuSupport/windows/1600x1200/chrome/horizon/ltr/cozy/lastItem-contextMenu.ref.lnk +1 -1
- package/test/sap/ui/core/visual/images/ContextMenuSupport/windows/1600x1200/chrome/horizon/ltr/cozy/leftDownBtn-contextMenu.ref.lnk +1 -1
- package/test/sap/ui/core/visual/images/ContextMenuSupport/windows/1600x1200/chrome/horizon/ltr/cozy/myButtonSample-contextMenu.ref.lnk +1 -1
- package/test/sap/ui/core/visual/images/ContextMenuSupport/windows/1600x1200/chrome/horizon/ltr/cozy/rightDownBtn-contextMenu.ref.lnk +1 -1
- package/test/testsuite/testframe.html +4 -4
- package/src/ui5-boot.js +0 -50
- package/test/sap/ui/core/qunit/CoreLock.qunit.js +0 -61
- package/test/sap/ui/core/qunit/internal/ODataV4.qunit.js +0 -30
- package/test/sap/ui/core/qunit/messages/MessageManager.qunit.js +0 -135
- package/test/sap/ui/core/samples/databinding/DataBinding.html +0 -133
- package/test/sap/ui/core/samples/databinding/DataBindingCalculatedFields.html +0 -227
- package/test/sap/ui/core/samples/databinding/DataBindingCompositeTypes.html +0 -273
- package/test/sap/ui/core/samples/databinding/DataBindingFormat.html +0 -294
- package/test/sap/ui/core/samples/databinding/DataBindingList.html +0 -288
- package/test/sap/ui/core/samples/databinding/DataBindingListNamedModel.html +0 -288
- package/test/sap/ui/core/samples/databinding/DataBindingListXML.html +0 -278
- package/test/sap/ui/core/samples/databinding/DataBindingMasterDetail.html +0 -117
- package/test/sap/ui/core/samples/databinding/DataBindingMultiModel.html +0 -152
- package/test/sap/ui/core/samples/databinding/DataBindingResourceModel.html +0 -119
- package/test/sap/ui/core/samples/databinding/DataBindingSortingFiltering.html +0 -101
- package/test/sap/ui/core/samples/databinding/DataBindingTree.html +0 -166
- package/test/sap/ui/core/samples/databinding/DataBindingTreeFilter.html +0 -117
- package/test/sap/ui/core/samples/databinding/DataBindingTreeFilterXML.html +0 -103
- package/test/sap/ui/core/samples/databinding/DataBindingTreeLarge.html +0 -139
- package/test/sap/ui/core/samples/databinding/DataBindingTreeWithArrays.html +0 -132
- package/test/sap/ui/core/samples/databinding/DataBindingTwoWay.html +0 -156
- package/test/sap/ui/core/samples/databinding/DataBindingTwoWayTable.html +0 -140
- package/test/sap/ui/core/samples/databinding/DataBindingTypes.html +0 -265
- package/test/sap/ui/core/samples/databinding/DataBindingValidation.html +0 -194
- package/test/sap/ui/core/samples/databinding/DataBindingXML.html +0 -147
- package/test/sap/ui/core/samples/databinding/DataBindingXMLView.html +0 -53
- package/test/sap/ui/core/samples/databinding/testdata/ListBinding.view.xml +0 -9
- package/test/sap/ui/core/samples/databinding/testdata/test.view.json +0 -15
- package/test/sap/ui/core/samples/databinding/testdata/test.view.xml +0 -8
- /package/test/sap/ui/core/qunit/{MasterDetail.qunit.js → MasterDetail_legacyAPIs.qunit.js} +0 -0
- /package/test/sap/ui/core/qunit/odata/{ODataModel.qunit.js → ODataModel_legacyAPIs.qunit.js} +0 -0
- /package/test/sap/ui/core/qunit/odata/{ODataSharedMetadata.qunit.js → ODataSharedMetadata_legacyAPIs.qunit.js} +0 -0
- /package/test/sap/ui/core/qunit/odata/{ODataTreeBinding.qunit.js → ODataTreeBinding_legacyAPIs.qunit.js} +0 -0
|
@@ -97,6 +97,26 @@
|
|
|
97
97
|
return oUrl.toString();
|
|
98
98
|
}
|
|
99
99
|
|
|
100
|
+
// Some of the reporting configurations could be set on the frontend
|
|
101
|
+
// Take those configurations and parse them
|
|
102
|
+
function getConfig() {
|
|
103
|
+
if (!oScript) {
|
|
104
|
+
return {};
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
var oConfig = {};
|
|
108
|
+
var watermarkProps = ["statements", "functions", "branches", "lines"];
|
|
109
|
+
watermarkProps.reduce(function(acc, prop) {
|
|
110
|
+
if (oScript.hasAttribute("data-sap-ui-cover-watermarks-" + prop)) {
|
|
111
|
+
acc["watermarks"] = acc["watermarks"] || {};
|
|
112
|
+
acc["watermarks"][prop] = JSON.parse(oScript.getAttribute("data-sap-ui-cover-watermarks-" + prop));
|
|
113
|
+
}
|
|
114
|
+
return acc;
|
|
115
|
+
}, oConfig);
|
|
116
|
+
|
|
117
|
+
return oConfig;
|
|
118
|
+
}
|
|
119
|
+
|
|
100
120
|
// check for coverage being active or not
|
|
101
121
|
if (QUnit.urlParams.coverage) {
|
|
102
122
|
|
|
@@ -126,19 +146,53 @@
|
|
|
126
146
|
if (window.top !== window){
|
|
127
147
|
return;
|
|
128
148
|
}
|
|
129
|
-
sap.ui.require(["sap/base/util/fetch"], function (fetch) {
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
149
|
+
sap.ui.require(["sap/base/util/fetch", "sap/base/util/Version"], function (fetch, Version) {
|
|
150
|
+
var oConfig = getConfig();
|
|
151
|
+
var oWatermarks = oConfig.watermarks;
|
|
152
|
+
|
|
153
|
+
fetch("/.ui5/coverage/ping", {
|
|
154
|
+
method: "GET"
|
|
155
|
+
})
|
|
156
|
+
.then(function (pResponse) {
|
|
157
|
+
return pResponse.json();
|
|
158
|
+
})
|
|
159
|
+
.then(function(oMiddlewareConfig){
|
|
160
|
+
// As of version >= 1.1.0 @ui5/middleware-code-coverage supports more enhanced structure for
|
|
161
|
+
// the request body. Directly sending the new coverage object will cause an error for older versions.
|
|
162
|
+
var oMiddlewareVersion = new Version(oMiddlewareConfig.version);
|
|
163
|
+
var bIsLegacyAPI = oMiddlewareVersion.compareTo("1.1.0") < 0;
|
|
164
|
+
|
|
165
|
+
if (bIsLegacyAPI) {
|
|
166
|
+
if (oWatermarks) {
|
|
167
|
+
// eslint-disable-next-line no-console
|
|
168
|
+
console.error(
|
|
169
|
+
"Coverage option \"watermarks\" is provided, but the current version of " +
|
|
170
|
+
"@ui5/middleware-code-coverage (" + oMiddlewareVersion.toString() + ") doesn't support it. " +
|
|
171
|
+
"Please upgrade @ui5/middleware-code-coverage to v1.1.0 or higher."
|
|
172
|
+
);
|
|
173
|
+
}
|
|
174
|
+
return window.top.__coverage__; // Backwards compatibility
|
|
175
|
+
} else {
|
|
176
|
+
return {
|
|
177
|
+
coverage: window.top.__coverage__,
|
|
178
|
+
watermarks: oWatermarks
|
|
179
|
+
};
|
|
135
180
|
}
|
|
181
|
+
}).then(function (oRequestBody) {
|
|
182
|
+
return fetch("/.ui5/coverage/report", {
|
|
183
|
+
method: "POST",
|
|
184
|
+
body: JSON.stringify(oRequestBody),
|
|
185
|
+
headers: {
|
|
186
|
+
"Content-Type": "application/json"
|
|
187
|
+
}
|
|
188
|
+
});
|
|
136
189
|
})
|
|
137
190
|
.then(function (pResponse) {
|
|
138
191
|
return pResponse.json();
|
|
139
192
|
})
|
|
140
193
|
.then(function (oData) {
|
|
141
194
|
var aReports = oData.availableReports;
|
|
195
|
+
// eslint-disable-next-line max-nested-callbacks
|
|
142
196
|
var oHTMLReport = aReports.filter(function (oCurReport) {
|
|
143
197
|
// HTML is the only one that make sense and
|
|
144
198
|
// provides understandable information
|
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
|
|
7
7
|
/*global QUnit*/
|
|
8
8
|
|
|
9
|
-
sap.ui.define([ 'sap/ui/core/Element', 'sap/ui/core/Control', 'sap/ui/core/Core' /* provides sap.ui.getCore() */ ],
|
|
10
|
-
function(Element, Control) {
|
|
9
|
+
sap.ui.define([ 'sap/ui/core/Element', 'sap/ui/core/Control', "sap/ui/qunit/utils/nextUIUpdate", 'sap/ui/core/Core' /* provides sap.ui.getCore() */ ],
|
|
10
|
+
function(Element, Control, nextUIUpdate) {
|
|
11
11
|
"use strict";
|
|
12
12
|
|
|
13
13
|
if ( typeof QUnit === "undefined" ) {
|
|
@@ -27,7 +27,7 @@ sap.ui.define([ 'sap/ui/core/Element', 'sap/ui/core/Control', 'sap/ui/core/Core'
|
|
|
27
27
|
* @namespace
|
|
28
28
|
*
|
|
29
29
|
* @author SAP SE
|
|
30
|
-
* @version 1.
|
|
30
|
+
* @version 1.119.0
|
|
31
31
|
*
|
|
32
32
|
* @public
|
|
33
33
|
* @since 1.48.0
|
|
@@ -66,7 +66,7 @@ sap.ui.define([ 'sap/ui/core/Element', 'sap/ui/core/Control', 'sap/ui/core/Core'
|
|
|
66
66
|
// Has some special logic to ignore or work around problems where certain controls do not work standalone.
|
|
67
67
|
var _checkControl = function(sControlName, fnControlFactory, fnSomeAdditionalFunction, bControlCannotRender) {
|
|
68
68
|
|
|
69
|
-
QUnit.test("Control " + sControlName + " should not have any memory leaks", function(assert) {
|
|
69
|
+
QUnit.test("Control " + sControlName + " should not have any memory leaks", async function(assert) {
|
|
70
70
|
var oControl1 = fnControlFactory();
|
|
71
71
|
|
|
72
72
|
assert.ok(oControl1, "calling fnControlFactory() should return something (a control)");
|
|
@@ -90,7 +90,7 @@ sap.ui.define([ 'sap/ui/core/Element', 'sap/ui/core/Control', 'sap/ui/core/Core'
|
|
|
90
90
|
if (oControl1.placeAt && !bControlCannotRender) {
|
|
91
91
|
try {
|
|
92
92
|
oControl1.placeAt("qunit-fixture");
|
|
93
|
-
|
|
93
|
+
await nextUIUpdate();
|
|
94
94
|
|
|
95
95
|
} catch (e) {
|
|
96
96
|
// control didn't say it has problems with rendering!
|
|
@@ -101,11 +101,11 @@ sap.ui.define([ 'sap/ui/core/Element', 'sap/ui/core/Control', 'sap/ui/core/Core'
|
|
|
101
101
|
|
|
102
102
|
if (fnSomeAdditionalFunction) {
|
|
103
103
|
fnSomeAdditionalFunction(oControl1);
|
|
104
|
-
|
|
104
|
+
await nextUIUpdate();
|
|
105
105
|
}
|
|
106
106
|
|
|
107
107
|
oControl1.destroy();
|
|
108
|
-
|
|
108
|
+
await nextUIUpdate();
|
|
109
109
|
|
|
110
110
|
|
|
111
111
|
// Render Control Instance 2 - any new controls leaked?
|
|
@@ -116,21 +116,20 @@ sap.ui.define([ 'sap/ui/core/Element', 'sap/ui/core/Control', 'sap/ui/core/Core'
|
|
|
116
116
|
|
|
117
117
|
if (oControl2.placeAt && !bControlCannotRender) {
|
|
118
118
|
oControl2.placeAt("qunit-fixture");
|
|
119
|
-
|
|
119
|
+
await nextUIUpdate();
|
|
120
120
|
|
|
121
121
|
oControl2.rerender(); // just re-render again - this finds problems
|
|
122
|
-
sap.ui.getCore().applyChanges();
|
|
123
122
|
}
|
|
124
123
|
|
|
125
124
|
if (fnSomeAdditionalFunction) {
|
|
126
125
|
fnSomeAdditionalFunction(oControl2);
|
|
127
|
-
|
|
126
|
+
await nextUIUpdate();
|
|
128
127
|
}
|
|
129
128
|
|
|
130
129
|
// check what's left after destruction
|
|
131
130
|
|
|
132
131
|
oControl2.destroy();
|
|
133
|
-
|
|
132
|
+
await nextUIUpdate();
|
|
134
133
|
var mPostElements = getAllAliveControls();
|
|
135
134
|
|
|
136
135
|
// controls left over by second instance are real leaks that will grow proportionally to instance count => ERROR
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* OpenUI5
|
|
3
|
+
* (c) Copyright 2009-2023 SAP SE or an SAP affiliate company.
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
5
|
+
*/
|
|
6
|
+
sap.ui.define([
|
|
7
|
+
"sap/base/Log",
|
|
8
|
+
"sap/ui/core/Rendering"
|
|
9
|
+
], function(
|
|
10
|
+
Log,
|
|
11
|
+
Rendering
|
|
12
|
+
) {
|
|
13
|
+
"use strict";
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Return a Promise that resolves when the next Rendering is ready.
|
|
17
|
+
* If no rendering is sheduled it resolves immediately.
|
|
18
|
+
*
|
|
19
|
+
* @namespace
|
|
20
|
+
* @alias module:sap/ui/qunit/utils/nextUIUpdate
|
|
21
|
+
* @public
|
|
22
|
+
* @returns {Promise<undefined>} A promise resolving when the next UI update is finished
|
|
23
|
+
*/
|
|
24
|
+
function nextUIUpdate() {
|
|
25
|
+
return new Promise(function(resolve) {
|
|
26
|
+
function isUpdated() {
|
|
27
|
+
Rendering.detachUIUpdated(isUpdated);
|
|
28
|
+
resolve();
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
if (Rendering.isPending()) {
|
|
32
|
+
Rendering.attachUIUpdated(isUpdated);
|
|
33
|
+
} else {
|
|
34
|
+
resolve();
|
|
35
|
+
}
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
/**
|
|
40
|
+
* Force a synchrounous rendering.
|
|
41
|
+
*
|
|
42
|
+
* @function
|
|
43
|
+
* @private
|
|
44
|
+
*/
|
|
45
|
+
nextUIUpdate.runSync = function() {
|
|
46
|
+
Log.warning("Synchronous rendering forced: Please migrate to asynchronous rendering");
|
|
47
|
+
Rendering.renderPendingUIUpdates("forced sync rendering...");
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
return nextUIUpdate;
|
|
51
|
+
});
|
|
@@ -3,12 +3,18 @@
|
|
|
3
3
|
* (c) Copyright 2009-2023 SAP SE or an SAP affiliate company.
|
|
4
4
|
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
5
5
|
*/
|
|
6
|
-
sap.ui.define([
|
|
6
|
+
sap.ui.define([
|
|
7
|
+
"sap/ui/core/Core",
|
|
8
|
+
"sap/ui/core/Theming"
|
|
9
|
+
], (
|
|
10
|
+
Core,
|
|
11
|
+
Theming
|
|
12
|
+
) => {
|
|
7
13
|
"use strict";
|
|
8
14
|
|
|
9
15
|
/**
|
|
10
16
|
* Checks whether the theme has already been applied and if not, waits for the
|
|
11
|
-
* '
|
|
17
|
+
* 'applied' event to be fired.
|
|
12
18
|
*
|
|
13
19
|
* @example <caption>This module can be used to delay the QUnit test start.
|
|
14
20
|
* When using the Test Starter, the Promise can be returned from the test module.</caption>
|
|
@@ -26,22 +32,18 @@ sap.ui.define(["sap/ui/core/Core"], function(Core) {
|
|
|
26
32
|
*
|
|
27
33
|
* @returns {Promise} Promise that resolves when the theme has been applied
|
|
28
34
|
*/
|
|
29
|
-
|
|
35
|
+
const waitForThemeApplied = () => {
|
|
36
|
+
let bCoreIsReady = false;
|
|
37
|
+
Core.ready(() => {
|
|
38
|
+
bCoreIsReady = true;
|
|
39
|
+
});
|
|
30
40
|
|
|
31
|
-
if (
|
|
41
|
+
if (!bCoreIsReady) {
|
|
32
42
|
return Promise.reject(new Error("UI5 Core must be loaded and booted before using the sap/ui/qunit/utils/waitForThemeApplied module"));
|
|
33
43
|
}
|
|
34
44
|
|
|
35
|
-
return new Promise(
|
|
36
|
-
|
|
37
|
-
resolve();
|
|
38
|
-
} else {
|
|
39
|
-
var themeChanged = function() {
|
|
40
|
-
resolve();
|
|
41
|
-
Core.detachThemeChanged(themeChanged);
|
|
42
|
-
};
|
|
43
|
-
Core.attachThemeChanged(themeChanged);
|
|
44
|
-
}
|
|
45
|
+
return new Promise((resolve /*, reject*/) => {
|
|
46
|
+
Theming.attachAppliedOnce(resolve);
|
|
45
47
|
});
|
|
46
48
|
};
|
|
47
49
|
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
controllerName="sap.ui.test.BlanketReporterUI"
|
|
3
3
|
xmlns="sap.m"
|
|
4
4
|
xmlns:table="sap.ui.table"
|
|
5
|
+
xmlns:tablerm="sap.ui.table.rowmodes"
|
|
5
6
|
xmlns:core="sap.ui.core"
|
|
6
7
|
xmlns:mvc="sap.ui.core.mvc"
|
|
7
8
|
xmlns:form="sap.ui.layout.form">
|
|
@@ -34,8 +35,7 @@
|
|
|
34
35
|
visible="{= %{/branchTracking}}"/>
|
|
35
36
|
</form:SimpleForm>
|
|
36
37
|
<table:Table id="Files" selectionMode="Single" selectionBehavior="RowOnly" rows="{/files}"
|
|
37
|
-
rowSelectionChange="onRowSelection"
|
|
38
|
-
minAutoRowCount="1" visibleRowCount="{/visible}">
|
|
38
|
+
rowSelectionChange="onRowSelection">
|
|
39
39
|
<table:extension>
|
|
40
40
|
<HBox>
|
|
41
41
|
<CheckBox selected="{/filterThreshold}" text="Below Threshold ({/threshold} %)"
|
|
@@ -43,6 +43,9 @@
|
|
|
43
43
|
<CheckBox select="onRowSelection" selected="{/showHits}" text="Show Hits"/>
|
|
44
44
|
</HBox>
|
|
45
45
|
</table:extension>
|
|
46
|
+
<table:rowMode>
|
|
47
|
+
<tablerm:Interactive rowCount="{/visible}" minRowCount="1"/>
|
|
48
|
+
</table:rowMode>
|
|
46
49
|
<table:columns>
|
|
47
50
|
<table:Column width="5em" hAlign="Right">
|
|
48
51
|
<table:label>
|
|
@@ -0,0 +1,326 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* OpenUI5
|
|
3
|
+
* (c) Copyright 2009-2023 SAP SE or an SAP affiliate company.
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
(function () {
|
|
8
|
+
"use strict";
|
|
9
|
+
/*global QUnit */
|
|
10
|
+
/*eslint no-alert: 0, no-warning-comments: 0 */
|
|
11
|
+
|
|
12
|
+
const oScript = Array.from(document.getElementsByTagName("script"))
|
|
13
|
+
.find((oScript) => /ModuleTracking.js$/.test(oScript.getAttribute("src")));
|
|
14
|
+
|
|
15
|
+
function clone(o) {
|
|
16
|
+
return o && JSON.parse(JSON.stringify(o));
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
//**********************************************************************************************
|
|
20
|
+
// Code for tracking "Uncaught (in promise)" for sap.ui.base.SyncPromise inside QUnit tests
|
|
21
|
+
//**********************************************************************************************
|
|
22
|
+
var Log,
|
|
23
|
+
sClassName = "sap.ui.base.SyncPromise",
|
|
24
|
+
iNo = 0,
|
|
25
|
+
mUncaughtById = {},
|
|
26
|
+
mUncaughtPromise2Reason = new Map();
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Check for uncaught errors in sync promises and provide an appropriate report to the given
|
|
30
|
+
* optional reporter.
|
|
31
|
+
*
|
|
32
|
+
* @param {function} [fnReporter]
|
|
33
|
+
* Optional reporter to receive a report
|
|
34
|
+
*/
|
|
35
|
+
function checkUncaught(fnReporter) {
|
|
36
|
+
var sId,
|
|
37
|
+
iLength = Object.keys(mUncaughtById).length
|
|
38
|
+
+ (mUncaughtPromise2Reason ? mUncaughtPromise2Reason.size : 0),
|
|
39
|
+
sMessage = "Uncaught (in promise): " + iLength + " times\n",
|
|
40
|
+
oPromise,
|
|
41
|
+
vReason,
|
|
42
|
+
oResult,
|
|
43
|
+
itValues;
|
|
44
|
+
|
|
45
|
+
if (iLength) {
|
|
46
|
+
for (sId in mUncaughtById) {
|
|
47
|
+
oPromise = mUncaughtById[sId];
|
|
48
|
+
if (oPromise.getResult() && oPromise.getResult().stack) {
|
|
49
|
+
sMessage += oPromise.getResult().stack;
|
|
50
|
+
} else {
|
|
51
|
+
sMessage += oPromise.getResult();
|
|
52
|
+
}
|
|
53
|
+
if (oPromise.$error.stack) {
|
|
54
|
+
sMessage += "\n>>> SyncPromise rejected with above reason...\n"
|
|
55
|
+
+ oPromise.$error.stack.split("\n").slice(2).join("\n"); // hide listener
|
|
56
|
+
}
|
|
57
|
+
sMessage += "\n\n";
|
|
58
|
+
}
|
|
59
|
+
mUncaughtById = {};
|
|
60
|
+
|
|
61
|
+
//TODO for (let vReason of mUncaughtPromise2Reason.values()) {...}
|
|
62
|
+
if (mUncaughtPromise2Reason && mUncaughtPromise2Reason.size) {
|
|
63
|
+
itValues = mUncaughtPromise2Reason.values();
|
|
64
|
+
for (;;) {
|
|
65
|
+
oResult = itValues.next();
|
|
66
|
+
if (oResult.done) {
|
|
67
|
+
break;
|
|
68
|
+
}
|
|
69
|
+
vReason = oResult.value;
|
|
70
|
+
sMessage += (vReason && vReason.stack || vReason) + "\n\n";
|
|
71
|
+
}
|
|
72
|
+
mUncaughtPromise2Reason.clear();
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
if (fnReporter) {
|
|
76
|
+
fnReporter(sMessage);
|
|
77
|
+
} else if (Log) {
|
|
78
|
+
Log.info(`Clearing ${iLength} uncaught promises`, sMessage, sClassName);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
if (oScript.getAttribute("data-uncaught-in-promise") !== "true") {
|
|
84
|
+
/*
|
|
85
|
+
* Listener for "unhandledrejection" events to keep track of "Uncaught (in promise)".
|
|
86
|
+
*/
|
|
87
|
+
window.addEventListener("unhandledrejection", function (oEvent) {
|
|
88
|
+
if (oEvent.reason && oEvent.reason.$uncaughtInPromise) { // ignore exceptional cases
|
|
89
|
+
return;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
if (mUncaughtPromise2Reason) {
|
|
93
|
+
mUncaughtPromise2Reason.set(oEvent.promise, oEvent.reason);
|
|
94
|
+
oEvent.preventDefault(); // do not report on console
|
|
95
|
+
} else { // QUnit already done
|
|
96
|
+
alert("Uncaught (in promise) " + oEvent.reason);
|
|
97
|
+
}
|
|
98
|
+
});
|
|
99
|
+
|
|
100
|
+
/*
|
|
101
|
+
* Listener for "rejectionhandled" events to keep track of "Uncaught (in promise)".
|
|
102
|
+
*/
|
|
103
|
+
window.addEventListener("rejectionhandled", function (oEvent) {
|
|
104
|
+
if (mUncaughtPromise2Reason) {
|
|
105
|
+
mUncaughtPromise2Reason.delete(oEvent.promise);
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
/**
|
|
111
|
+
* Listener for sync promises which become (un)caught.
|
|
112
|
+
*
|
|
113
|
+
* @param {sap.ui.base.SyncPromise} oPromise
|
|
114
|
+
* A sync promise
|
|
115
|
+
* @param {boolean} bCaught
|
|
116
|
+
* Tells whether the given sync promise became caught
|
|
117
|
+
*/
|
|
118
|
+
function listener(oPromise, bCaught) {
|
|
119
|
+
if (bCaught) {
|
|
120
|
+
delete mUncaughtById[oPromise.$id];
|
|
121
|
+
if (Log) {
|
|
122
|
+
Log.info(`Promise ${oPromise.$id} caught`,
|
|
123
|
+
Object.keys(mUncaughtById), sClassName);
|
|
124
|
+
}
|
|
125
|
+
return;
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
oPromise.$id = iNo++;
|
|
129
|
+
oPromise.$error = new Error();
|
|
130
|
+
mUncaughtById[oPromise.$id] = oPromise;
|
|
131
|
+
if (Log) {
|
|
132
|
+
Log.info(`Promise ${oPromise.$id} rejected with ${oPromise.getResult()}`,
|
|
133
|
+
Object.keys(mUncaughtById), sClassName);
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
//**********************************************************************************************
|
|
138
|
+
// Methods dealing with Istanbul
|
|
139
|
+
//**********************************************************************************************
|
|
140
|
+
|
|
141
|
+
// the initial coverage per module (identified by resource name), taken when QUnit starts
|
|
142
|
+
let mInitialCoverageByModule;
|
|
143
|
+
const mCoverageSnapshotByModule = {};
|
|
144
|
+
const bTestsFiltered = /(testId|filter)=/.test(window.location.search);
|
|
145
|
+
|
|
146
|
+
function filterCoverage() {
|
|
147
|
+
// only keep the coverage for the actually tested modules
|
|
148
|
+
if (window.__coverage__ && Object.keys(mCoverageSnapshotByModule ).length) {
|
|
149
|
+
window.__coverage__ = mCoverageSnapshotByModule;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
function getResourceName(sModuleName) {
|
|
154
|
+
if (!window.__coverage__) {
|
|
155
|
+
return undefined;
|
|
156
|
+
}
|
|
157
|
+
const sPath = `${sModuleName.replace(/\./g, "/")}.js`;
|
|
158
|
+
return Object.keys(window.__coverage__)
|
|
159
|
+
.find((sResourceName) => sResourceName.endsWith(sPath));
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
function resetBranchCounts(oCurrent, oInitial) {
|
|
163
|
+
const oCurrentCounts = oCurrent.b;
|
|
164
|
+
const oInitialCounts = oInitial.b;
|
|
165
|
+
for (const [sKey, aInitialCounts] of Object.entries(oInitialCounts)) {
|
|
166
|
+
const aCurrentCounts = oCurrentCounts[sKey];
|
|
167
|
+
aInitialCounts.forEach((iCount, i) => { aCurrentCounts[i] = iCount; });
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
function resetCounts(oCurrent, oInitial, sList) {
|
|
172
|
+
const oCurrentCounts = oCurrent[sList];
|
|
173
|
+
const oInitialCounts = oInitial[sList];
|
|
174
|
+
for (const [sKey, iCount] of Object.entries(oInitialCounts)) {
|
|
175
|
+
oCurrentCounts[sKey] = iCount;
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
function resetModuleCoverage(sModuleName) {
|
|
180
|
+
const sResourceName = getResourceName(sModuleName);
|
|
181
|
+
if (sResourceName) {
|
|
182
|
+
// keep only coverage for the module loading
|
|
183
|
+
const oCurrent = window.__coverage__[sResourceName];
|
|
184
|
+
const oInitial = mInitialCoverageByModule[sResourceName];
|
|
185
|
+
resetBranchCounts(oCurrent, oInitial);
|
|
186
|
+
resetCounts(oCurrent, oInitial, "f");
|
|
187
|
+
resetCounts(oCurrent, oInitial, "s");
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
function saveInitialCoverage() {
|
|
192
|
+
// the coverage from the module loading
|
|
193
|
+
mInitialCoverageByModule = clone(window.__coverage__);
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
/**
|
|
197
|
+
* Takes a snapshot and verify that all branches, statements and functions are covered.
|
|
198
|
+
*
|
|
199
|
+
* @param {string} sModuleName - The module name
|
|
200
|
+
* @returns {boolean} Whether the coverage is bad
|
|
201
|
+
*/
|
|
202
|
+
function handleModuleCoverage(sModuleName) {
|
|
203
|
+
const sResourceName = getResourceName(sModuleName);
|
|
204
|
+
if (!sResourceName) {
|
|
205
|
+
return false;
|
|
206
|
+
}
|
|
207
|
+
const oCoverage = clone(window.__coverage__[sResourceName]);
|
|
208
|
+
mCoverageSnapshotByModule[sResourceName] = oCoverage;
|
|
209
|
+
if (bTestsFiltered) {
|
|
210
|
+
return false;
|
|
211
|
+
}
|
|
212
|
+
return Object.values(oCoverage.b).some((aCounts) => aCounts.some((iCount) => iCount === 0))
|
|
213
|
+
|| Object.values(oCoverage.f).some((iCount) => iCount === 0)
|
|
214
|
+
|| Object.values(oCoverage.s).some((iCount) => iCount === 0);
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
//**********************************************************************************************
|
|
218
|
+
// Intercept QUnit
|
|
219
|
+
// Each module shall only be covered when its own tests run. For this purpose we keep the
|
|
220
|
+
// initial module states. When a module is started, we revert its coverage to the initial state.
|
|
221
|
+
// When it's finished we take a snapshot. In the end we only keep the snapshots.
|
|
222
|
+
//**********************************************************************************************
|
|
223
|
+
|
|
224
|
+
const fnModule = QUnit.module.bind(QUnit);
|
|
225
|
+
|
|
226
|
+
/**
|
|
227
|
+
* Wrapper for <code>QUnit.module</code> to check for uncaught errors in sync promises and
|
|
228
|
+
* for 100% isolated test coverage.
|
|
229
|
+
*
|
|
230
|
+
* @param {string} sTitle
|
|
231
|
+
* The module's title
|
|
232
|
+
* @param {object} [mHooks]
|
|
233
|
+
* Optional map of hooks, e.g. "beforeEach"
|
|
234
|
+
*/
|
|
235
|
+
function module(sTitle, mHooks) {
|
|
236
|
+
mHooks = mHooks || {};
|
|
237
|
+
const fnAfter = mHooks.after || function () {};
|
|
238
|
+
const fnAfterEach = mHooks.afterEach || function () {};
|
|
239
|
+
const fnBefore = mHooks.before || function () {};
|
|
240
|
+
const fnBeforeEach = mHooks.beforeEach || function () {};
|
|
241
|
+
|
|
242
|
+
mHooks.after = function (assert) {
|
|
243
|
+
if (!this.__ignoreIsolatedCoverage__ && handleModuleCoverage(sTitle)) {
|
|
244
|
+
assert.ok(false, `${sTitle}: Coverage below 100%`);
|
|
245
|
+
}
|
|
246
|
+
|
|
247
|
+
return fnAfter.apply(this, arguments);
|
|
248
|
+
};
|
|
249
|
+
|
|
250
|
+
mHooks.afterEach = function (assert) {
|
|
251
|
+
const fnCheckUncaught = checkUncaught.bind(null, assert.ok.bind(assert, false));
|
|
252
|
+
|
|
253
|
+
function error(oError) {
|
|
254
|
+
fnCheckUncaught();
|
|
255
|
+
throw oError;
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
function success(vResult) {
|
|
259
|
+
if (vResult && typeof vResult.then === "function") {
|
|
260
|
+
return vResult.then(success, error);
|
|
261
|
+
}
|
|
262
|
+
fnCheckUncaught();
|
|
263
|
+
return vResult;
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
try {
|
|
267
|
+
return success(fnAfterEach.apply(this, arguments));
|
|
268
|
+
} catch (oError) {
|
|
269
|
+
return error(oError);
|
|
270
|
+
}
|
|
271
|
+
};
|
|
272
|
+
|
|
273
|
+
mHooks.before = function () {
|
|
274
|
+
const oResult = fnBefore.apply(this, arguments);
|
|
275
|
+
if (!this.__ignoreIsolatedCoverage__) {
|
|
276
|
+
resetModuleCoverage(sTitle);
|
|
277
|
+
}
|
|
278
|
+
return oResult;
|
|
279
|
+
};
|
|
280
|
+
|
|
281
|
+
mHooks.beforeEach = function () {
|
|
282
|
+
checkUncaught(); // cleans up what happened before
|
|
283
|
+
return fnBeforeEach.apply(this, arguments);
|
|
284
|
+
};
|
|
285
|
+
|
|
286
|
+
fnModule(sTitle, mHooks);
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
if (QUnit.module !== module) {
|
|
290
|
+
QUnit.module = module;
|
|
291
|
+
sap.ui.require([
|
|
292
|
+
"sap/base/Log",
|
|
293
|
+
"sap/ui/base/SyncPromise"
|
|
294
|
+
], function (Log0, SyncPromise) {
|
|
295
|
+
if (Log0.isLoggable(Log0.Level.INFO, sClassName)) {
|
|
296
|
+
Log = Log0;
|
|
297
|
+
}
|
|
298
|
+
SyncPromise.listener = listener;
|
|
299
|
+
});
|
|
300
|
+
|
|
301
|
+
QUnit.begin(() => {
|
|
302
|
+
// allow easier module selection: larger list, one click selection
|
|
303
|
+
document.body.style.overflow = "scroll"; // always show scrollbar, avoid flickering
|
|
304
|
+
document.getElementById("qunit-modulefilter-dropdown-list").style.maxHeight = "none";
|
|
305
|
+
|
|
306
|
+
document.getElementById("qunit-modulefilter-dropdown")
|
|
307
|
+
.addEventListener("click", function (oMouseEvent) {
|
|
308
|
+
if (oMouseEvent.target.tagName === "LABEL"
|
|
309
|
+
&& oMouseEvent.target.innerText !== "All modules") {
|
|
310
|
+
setTimeout(function () {
|
|
311
|
+
// click on label instead of checkbox triggers "Apply" automatically
|
|
312
|
+
document.getElementById("qunit-modulefilter-actions").firstChild
|
|
313
|
+
.dispatchEvent(new MouseEvent("click"));
|
|
314
|
+
});
|
|
315
|
+
}
|
|
316
|
+
});
|
|
317
|
+
|
|
318
|
+
// remember which lines have been covered initially, at load time
|
|
319
|
+
saveInitialCoverage();
|
|
320
|
+
});
|
|
321
|
+
|
|
322
|
+
QUnit.done(() => {
|
|
323
|
+
filterCoverage();
|
|
324
|
+
});
|
|
325
|
+
}
|
|
326
|
+
}());
|
|
@@ -107,7 +107,7 @@ sap.ui.define([
|
|
|
107
107
|
}
|
|
108
108
|
|
|
109
109
|
if (oOptions.viewId) {
|
|
110
|
-
var oCoreElement = UI5Element.
|
|
110
|
+
var oCoreElement = UI5Element.getElementById(oOptions.viewId);
|
|
111
111
|
if (oCoreElement instanceof View && (!sViewName || oCoreElement.getViewName() === sViewName)) {
|
|
112
112
|
oView = oCoreElement;
|
|
113
113
|
}
|
|
@@ -509,7 +509,7 @@ sap.ui.define([
|
|
|
509
509
|
var hasExpectedType = makeTypeFilterFn(oOptions.controlType);
|
|
510
510
|
|
|
511
511
|
if (typeof oOptions.id === "string") {
|
|
512
|
-
var oControl = UI5Element.
|
|
512
|
+
var oControl = UI5Element.getElementById(oOptions.id) || null;
|
|
513
513
|
|
|
514
514
|
if (oControl && !hasExpectedType(oControl)) {
|
|
515
515
|
this._oLogger.error("A control with global ID '" + oOptions.id + "' is found but does not have required controlType '" +
|
|
@@ -539,7 +539,7 @@ sap.ui.define([
|
|
|
539
539
|
var aUnmatchedIds = [];
|
|
540
540
|
|
|
541
541
|
aMatchIds.forEach(function (sId) {
|
|
542
|
-
var oControl = UI5Element.
|
|
542
|
+
var oControl = UI5Element.getElementById(sId);
|
|
543
543
|
// only return defined controls
|
|
544
544
|
if (oControl && hasExpectedType(oControl) && !oControl.bIsDestroyed) {
|
|
545
545
|
aMatchingControls.push(oControl);
|