@openui5/sap.ui.core 1.123.0 → 1.124.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/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/future.js +66 -6
- package/src/sap/base/i18n/LanguageTag.js +1 -1
- package/src/sap/base/i18n/date/TimezoneUtils.js +11 -5
- package/src/sap/base/util/LoaderExtensions.js +1 -5
- package/src/sap/base/util/Version.js +18 -12
- package/src/sap/base/util/defineCoupledProperty.js +4 -1
- 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/Event.js +1 -1
- package/src/sap/ui/base/EventProvider.js +1 -2
- package/src/sap/ui/base/Interface.js +1 -1
- package/src/sap/ui/base/ManagedObject.js +2 -2
- package/src/sap/ui/base/ManagedObjectMetadata.js +1 -1
- package/src/sap/ui/base/Metadata.js +26 -2
- package/src/sap/ui/base/Object.js +1 -1
- package/src/sap/ui/base/ObjectPool.js +1 -1
- package/src/sap/ui/core/.library +3 -3
- package/src/sap/ui/core/BusyIndicator.js +1 -1
- package/src/sap/ui/core/Component.js +53 -74
- package/src/sap/ui/core/ComponentContainer.js +1 -1
- package/src/sap/ui/core/ComponentMetadata.js +33 -21
- package/src/sap/ui/core/ComponentSupport.js +4 -4
- package/src/sap/ui/core/Configuration.js +1 -1
- package/src/sap/ui/core/Control.js +1 -1
- package/src/sap/ui/core/Core.js +1 -1
- package/src/sap/ui/core/CustomData.js +1 -1
- package/src/sap/ui/core/DeclarativeSupport.js +1 -1
- package/src/sap/ui/core/Element.js +37 -12
- 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 +1 -1
- package/src/sap/ui/core/ExtensionPoint.js +4 -2
- 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 +1 -1
- package/src/sap/ui/core/IndicationColorSupport.js +1 -1
- 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 +1 -1
- package/src/sap/ui/core/Item.js +1 -1
- package/src/sap/ui/core/LabelEnablement.js +88 -28
- package/src/sap/ui/core/LayoutData.js +1 -1
- package/src/sap/ui/core/Lib.js +36 -11
- 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 +1 -1
- package/src/sap/ui/core/Manifest.js +44 -21
- package/src/sap/ui/core/Message.js +1 -1
- package/src/sap/ui/core/Popup.js +5 -1
- package/src/sap/ui/core/RenderManager.js +1 -1
- package/src/sap/ui/core/Renderer.js +1 -1
- package/src/sap/ui/core/ResizeHandler.js +1 -1
- package/src/sap/ui/core/ScrollBar.js +1 -1
- package/src/sap/ui/core/SeparatorItem.js +1 -1
- 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 +1 -1
- package/src/sap/ui/core/UIComponent.js +94 -42
- package/src/sap/ui/core/UIComponentMetadata.js +5 -1
- package/src/sap/ui/core/ValueStateSupport.js +1 -1
- package/src/sap/ui/core/VariantLayoutData.js +1 -1
- package/src/sap/ui/core/XMLComposite.js +1 -1
- package/src/sap/ui/core/XMLCompositeMetadata.js +1 -1
- package/src/sap/ui/core/XMLTemplateProcessor.js +23 -12
- package/src/sap/ui/core/date/UI5Date.js +1 -1
- package/src/sap/ui/core/delegate/ItemNavigation.js +1 -1
- package/src/sap/ui/core/delegate/ScrollEnablement.js +1 -1
- package/src/sap/ui/core/dnd/DragDropBase.js +1 -1
- package/src/sap/ui/core/dnd/DragDropInfo.js +1 -1
- package/src/sap/ui/core/dnd/DragInfo.js +1 -1
- package/src/sap/ui/core/dnd/DropInfo.js +1 -1
- package/src/sap/ui/core/format/FormatUtils.js +1 -1
- package/src/sap/ui/core/format/NumberFormat.js +1 -1
- package/src/sap/ui/core/format/TimezoneUtil.js +86 -10
- package/src/sap/ui/core/getCompatibilityVersion.js +1 -1
- package/src/sap/ui/core/hyphenation/Hyphenation.js +1 -1
- package/src/sap/ui/core/library.js +3 -3
- package/src/sap/ui/core/message/ControlMessageProcessor.js +1 -1
- package/src/sap/ui/core/message/Message.js +1 -1
- package/src/sap/ui/core/message/MessageManager.js +1 -1
- package/src/sap/ui/core/message/MessageParser.js +1 -1
- package/src/sap/ui/core/message/MessageProcessor.js +1 -1
- package/src/sap/ui/core/messagebundle_sh.properties +65 -65
- package/src/sap/ui/core/mvc/Controller.js +2 -2
- package/src/sap/ui/core/mvc/ControllerExtensionProvider.js +2 -0
- package/src/sap/ui/core/mvc/EventHandlerResolver.js +1 -1
- 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 +12 -3
- package/src/sap/ui/core/mvc/XMLView.js +7 -2
- package/src/sap/ui/core/plugin/DeclarativeSupport.js +1 -1
- package/src/sap/ui/core/plugin/LessSupport.js +1 -1
- 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/Targets.js +1 -1
- package/src/sap/ui/core/rules/App.support.js +11 -11
- package/src/sap/ui/core/rules/CoreHelper.support.js +3 -3
- package/src/sap/ui/core/rules/Theming.support.js +3 -3
- 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 +1 -1
- package/src/sap/ui/core/support/Support.js +1 -1
- package/src/sap/ui/core/support/plugins/ControlTree.js +1 -1
- package/src/sap/ui/core/support/plugins/Interaction.js +1 -1
- package/src/sap/ui/core/support/plugins/LocalStorage.js +1 -1
- package/src/sap/ui/core/support/plugins/Performance.js +1 -1
- package/src/sap/ui/core/support/plugins/Selector.js +1 -1
- package/src/sap/ui/core/support/plugins/TechInfo.js +1 -1
- package/src/sap/ui/core/support/plugins/Trace.js +1 -1
- package/src/sap/ui/core/support/plugins/ViewInfo.js +1 -1
- package/src/sap/ui/core/support/techinfo/moduleTreeHelper.js +1 -1
- package/src/sap/ui/core/theming/Parameters.js +21 -25
- 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 +1 -1
- 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/serializer/HTMLViewSerializer.js +1 -1
- package/src/sap/ui/core/util/serializer/Serializer.js +1 -1
- package/src/sap/ui/core/util/serializer/ViewSerializer.js +1 -1
- package/src/sap/ui/core/util/serializer/XMLViewSerializer.js +1 -1
- 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 +1 -1
- package/src/sap/ui/core/webc/WebComponentMetadata.js +1 -1
- 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 +1 -1
- package/src/sap/ui/debug/DebugEnv.js +1 -1
- package/src/sap/ui/debug/PropertyList.js +1 -1
- package/src/sap/ui/model/ClientModel.js +1 -1
- package/src/sap/ui/model/ClientTreeBindingAdapter.js +7 -5
- package/src/sap/ui/model/CompositeBinding.js +9 -3
- 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 +26 -2
- package/src/sap/ui/model/DataState.js +1 -1
- package/src/sap/ui/model/MetaModel.js +1 -1
- package/src/sap/ui/model/Model.js +1 -1
- package/src/sap/ui/model/PropertyBinding.js +113 -35
- 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/TreeBindingAdapter.js +5 -5
- package/src/sap/ui/model/TreeBindingCompatibilityAdapter.js +6 -6
- package/src/sap/ui/model/Type.js +1 -1
- package/src/sap/ui/model/analytics/AnalyticalBinding.js +2 -0
- package/src/sap/ui/model/json/JSONModel.js +1 -1
- package/src/sap/ui/model/message/MessageModel.js +1 -1
- package/src/sap/ui/model/odata/ODataAnnotations.js +1 -1
- package/src/sap/ui/model/odata/ODataMessageParser.js +3 -5
- 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/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 +24 -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 +1 -1
- package/src/sap/ui/model/odata/type/DateTimeWithTimezone.js +1 -1
- 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 +1 -1
- 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 +1 -1
- package/src/sap/ui/model/odata/type/Unit.js +24 -1
- package/src/sap/ui/model/odata/v2/Context.js +1 -1
- package/src/sap/ui/model/odata/v2/ODataAnnotations.js +1 -1
- package/src/sap/ui/model/odata/v2/ODataModel.js +6 -9
- package/src/sap/ui/model/odata/v2/ODataTreeBinding.js +1 -1
- package/src/sap/ui/model/odata/v4/Context.js +73 -48
- package/src/sap/ui/model/odata/v4/ODataBinding.js +4 -2
- package/src/sap/ui/model/odata/v4/ODataContextBinding.js +1 -1
- package/src/sap/ui/model/odata/v4/ODataListBinding.js +160 -94
- package/src/sap/ui/model/odata/v4/ODataMetaModel.js +1 -1
- package/src/sap/ui/model/odata/v4/ODataModel.js +8 -5
- package/src/sap/ui/model/odata/v4/ODataParentBinding.js +5 -2
- package/src/sap/ui/model/odata/v4/ODataPropertyBinding.js +1 -1
- package/src/sap/ui/model/odata/v4/lib/_AggregationCache.js +202 -177
- package/src/sap/ui/model/odata/v4/lib/_AggregationHelper.js +9 -3
- package/src/sap/ui/model/odata/v4/lib/_Cache.js +7 -13
- package/src/sap/ui/model/odata/v4/lib/_Requestor.js +6 -3
- package/src/sap/ui/model/odata/v4/lib/_TreeState.js +35 -1
- 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 -1
- package/src/sap/ui/model/type/DateInterval.js +1 -1
- 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 +1 -1
- package/src/sap/ui/qunit/utils/ControlIterator.js +1 -1
- package/src/sap/ui/qunit/utils/MemoryLeakCheck.js +1 -1
- package/src/sap/ui/test/ModuleTracking.js +1 -2
- package/src/sap/ui/test/autowaiter/_navigationContainerWaiter.js +96 -7
- package/src/sap/ui/test/generic/TestBase.js +1 -1
- package/src/sap/ui/test/gherkin/opa5TestHarness.js +0 -1
- package/src/sap/ui/test/gherkin/qUnitTestHarness.js +0 -1
- package/src/sap/ui/test/starter/_utils.js +27 -1
- package/src/sap/ui/test/starter/createSuite.js +2 -5
- package/src/sap/ui/thirdparty/caja-html-sanitizer.js +1 -1
- package/src/sap/ui/thirdparty/jqueryui/jquery-effects-blind.js +4 -0
- package/src/sap/ui/thirdparty/jqueryui/jquery-effects-bounce.js +4 -0
- package/src/sap/ui/thirdparty/jqueryui/jquery-effects-clip.js +4 -0
- package/src/sap/ui/thirdparty/jqueryui/jquery-effects-core.js +4 -0
- package/src/sap/ui/thirdparty/jqueryui/jquery-effects-drop.js +4 -0
- package/src/sap/ui/thirdparty/jqueryui/jquery-effects-explode.js +4 -0
- package/src/sap/ui/thirdparty/jqueryui/jquery-effects-fade.js +4 -0
- package/src/sap/ui/thirdparty/jqueryui/jquery-effects-fold.js +4 -0
- package/src/sap/ui/thirdparty/jqueryui/jquery-effects-highlight.js +4 -0
- package/src/sap/ui/thirdparty/jqueryui/jquery-effects-pulsate.js +4 -0
- package/src/sap/ui/thirdparty/jqueryui/jquery-effects-scale.js +4 -0
- package/src/sap/ui/thirdparty/jqueryui/jquery-effects-shake.js +4 -0
- package/src/sap/ui/thirdparty/jqueryui/jquery-effects-slide.js +4 -0
- package/src/sap/ui/thirdparty/jqueryui/jquery-effects-transfer.js +4 -0
- package/src/sap/ui/util/Storage.js +1 -1
- package/src/ui5loader.js +11 -5
- package/test/sap/ui/core/demokit/sample/FieldGroup/Page.view.xml +1 -1
- package/test/sap/ui/core/demokit/sample/Messaging/ODataBackendMessagesComp/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/sample/Messaging/ODataBackendMessagesComp/webapp/view/Employee.view.xml +0 -1
- package/test/sap/ui/core/demokit/sample/TypeCurrency/Component.js +1 -0
- package/test/sap/ui/core/demokit/sample/TypeCurrency/manifest.json +1 -2
- package/test/sap/ui/core/demokit/sample/TypeDateAsDate/Component.js +1 -0
- package/test/sap/ui/core/demokit/sample/TypeDateAsDate/manifest.json +1 -2
- package/test/sap/ui/core/demokit/sample/TypeDateAsString/Component.js +1 -0
- package/test/sap/ui/core/demokit/sample/TypeDateAsString/manifest.json +1 -2
- package/test/sap/ui/core/demokit/sample/TypeDateTime/Component.js +1 -0
- package/test/sap/ui/core/demokit/sample/TypeDateTime/manifest.json +1 -2
- package/test/sap/ui/core/demokit/sample/TypeFileSize/Component.js +1 -0
- package/test/sap/ui/core/demokit/sample/TypeFileSize/manifest.json +1 -2
- package/test/sap/ui/core/demokit/sample/TypeFloat/Component.js +1 -0
- package/test/sap/ui/core/demokit/sample/TypeFloat/manifest.json +1 -2
- package/test/sap/ui/core/demokit/sample/TypeInteger/Component.js +1 -0
- package/test/sap/ui/core/demokit/sample/TypeInteger/manifest.json +1 -2
- package/test/sap/ui/core/demokit/sample/TypeTimeAsTime/Component.js +1 -0
- package/test/sap/ui/core/demokit/sample/TypeTimeAsTime/manifest.json +1 -2
- package/test/sap/ui/core/demokit/sample/ViewTemplate/types/Opa.qunit.js +3 -3
- package/test/sap/ui/core/demokit/sample/ViewTemplate/types/TemplateV2.view.xml +3 -2
- package/test/sap/ui/core/demokit/sample/matcher/BindingPath/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/sample/matcher/Descendant/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/sample/matcher/I18NText/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/sample/matcher/LabelFor/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/sample/matcher/LabelFor/webapp/view/Main.view.xml +0 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/Draft/Error.view.xml +1 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/HierarchyBindAction/Main.controller.js +30 -7
- package/test/sap/ui/core/demokit/sample/odata/v4/HierarchyBindAction/Main.view.xml +28 -4
- package/test/sap/ui/core/demokit/sample/odata/v4/HierarchyBindAction/data/metadata.xml +38 -52
- package/test/sap/ui/core/demokit/sample/odata/v4/MultipleInlineCreationRowsGrid/Main.controller.js +13 -13
- package/test/sap/ui/core/demokit/sample/odata/v4/MultipleInlineCreationRowsGrid/Opa.qunit.js +2 -4
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrders/Component.js +3 -3
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrders/Main.controller.js +2 -3
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrders/tests/MessageHandling.js +3 -3
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrders/tests/additionalTargets.js +3 -3
- package/test/sap/ui/core/demokit/tutorial/databinding/01/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/databinding/02/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/databinding/03/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/databinding/04/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/databinding/05/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/databinding/06/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/databinding/07/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/databinding/08/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/databinding/09/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/databinding/10/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/databinding/11/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/databinding/12/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/databinding/13/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/databinding/14/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/databinding/15/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/mockserver/01/package.json +3 -0
- package/test/sap/ui/core/demokit/tutorial/mockserver/01/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/mockserver/01/webapp/Component.js +1 -0
- package/test/sap/ui/core/demokit/tutorial/mockserver/01/webapp/test/mockServer.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/mockserver/02/package.json +3 -0
- package/test/sap/ui/core/demokit/tutorial/mockserver/02/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/mockserver/02/webapp/Component.js +1 -0
- package/test/sap/ui/core/demokit/tutorial/mockserver/02/webapp/test/mockServer.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/mockserver/03/package.json +3 -0
- package/test/sap/ui/core/demokit/tutorial/mockserver/03/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/mockserver/03/webapp/Component.js +1 -0
- package/test/sap/ui/core/demokit/tutorial/mockserver/03/webapp/test/mockServer.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/mockserver/04/package.json +3 -0
- package/test/sap/ui/core/demokit/tutorial/mockserver/04/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/mockserver/04/webapp/Component.js +1 -0
- package/test/sap/ui/core/demokit/tutorial/mockserver/04/webapp/test/mockServer.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/01/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/02/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/03/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/04/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/05/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/06/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/07/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/08/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/09/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/10/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/11/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/12/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/13/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/14/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/15/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/16/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/17/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/odatav4/01/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/odatav4/02/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/odatav4/03/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/odatav4/04/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/odatav4/05/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/odatav4/06/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/odatav4/07/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/odatav4/08/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/odatav4/09/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/odatav4/10/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/odatav4/11/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/troubleshooting/01/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/troubleshooting/01/webapp/controller/App.controller.js +2 -3
- package/test/sap/ui/core/internal/samples/odata/v2/SalesOrders/Component.js +3 -4
- package/test/sap/ui/core/internal/samples/odata/v2/SalesOrders/Main.controller.js +4 -5
- package/test/sap/ui/core/qunit/BindingParser.qunit.js +68 -5
- package/test/sap/ui/core/qunit/CacheManager.qunit.js +2 -2
- package/test/sap/ui/core/qunit/CommandExecution.qunit.js +1 -1
- package/test/sap/ui/core/qunit/CompositeBinding.qunit.js +173 -7
- package/test/sap/ui/core/qunit/Core.qunit.js +92 -65
- package/test/sap/ui/core/qunit/CustomStyleClassSupport.qunit.js +8 -6
- package/test/sap/ui/core/qunit/Element_closestTo.qunit.js +26 -5
- package/test/sap/ui/core/qunit/Element_data.qunit.js +86 -3
- package/test/sap/ui/core/qunit/Fragment.qunit.js +1 -1
- package/test/sap/ui/core/qunit/HTML.qunit.js +13 -0
- package/test/sap/ui/core/qunit/Lib.qunit.js +160 -42
- package/test/sap/ui/core/qunit/ManagedObjectModel.qunit.js +2 -2
- package/test/sap/ui/core/qunit/ThemeManager.qunit.js +1 -0
- package/test/sap/ui/core/qunit/ThemeParameters.qunit.js +63 -4
- package/test/sap/ui/core/qunit/analytics/AnalyticalBinding.qunit.js +1 -0
- package/test/sap/ui/core/qunit/bootstrap/Configuration.qunit.js +4 -4
- package/test/sap/ui/core/qunit/bootstrap/ThemeVersion.qunit.js +3 -0
- package/test/sap/ui/core/qunit/component/Component.qunit.js +88 -16
- package/test/sap/ui/core/qunit/component/ComponentContainer.qunit.js +26 -2
- package/test/sap/ui/core/qunit/component/ComponentSupport.qunit.js +62 -59
- package/test/sap/ui/core/qunit/component/Component_keepAlive.qunit.js +75 -7
- package/test/sap/ui/core/qunit/component/ExtensionPoint.qunit.js +128 -117
- package/test/sap/ui/core/qunit/component/Manifest.qunit.js +57 -5
- package/test/sap/ui/core/qunit/component/Metadata.qunit.js +72 -7
- package/test/sap/ui/core/qunit/component/Metadata_unavoidablySync.qunit.js +62 -17
- package/test/sap/ui/core/qunit/component/Models.qunit.js +573 -237
- package/test/sap/ui/core/qunit/component/UIComponent.qunit.js +211 -33
- package/test/sap/ui/core/qunit/component/testdata/async/lib2/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/component/testdata/async/lib2/library-preload.json +1 -1
- package/test/sap/ui/core/qunit/component/testdata/async/lib2/library.js +1 -0
- package/test/sap/ui/core/qunit/component/testdata/async/lib3/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/component/testdata/async/lib3/library-preload.json +1 -1
- package/test/sap/ui/core/qunit/component/testdata/async/lib3/library.js +1 -0
- package/test/sap/ui/core/qunit/component/testdata/async/lib4/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/component/testdata/async/lib4/library-preload.json +1 -1
- package/test/sap/ui/core/qunit/component/testdata/async/lib4/library.js +1 -0
- package/test/sap/ui/core/qunit/component/testdata/async/manifestcomp/Component-preload.js +1 -0
- package/test/sap/ui/core/qunit/component/testdata/async/mycomp/Component-preload.js +1 -0
- package/test/sap/ui/core/qunit/component/testdata/async/mysubcomp/Component-preload.js +1 -0
- package/test/sap/ui/core/qunit/component/testdata/customizing/customer/Component.js +1 -2
- package/test/sap/ui/core/qunit/component/testdata/customizing_legacyAPIs/customer/Component.js +1 -2
- package/test/sap/ui/core/qunit/component/testdata/inherit/manifest.json +3 -5
- package/test/sap/ui/core/qunit/component/testdata/inherit/parent/manifest.json +2 -2
- package/test/sap/ui/core/qunit/component/testdata/keepAlive/child3OnActivateReturns/App.view.xml +3 -0
- package/test/sap/ui/core/qunit/component/testdata/keepAlive/child3OnActivateReturns/Component.js +15 -0
- package/test/sap/ui/core/qunit/component/testdata/keepAlive/child3OnActivateReturns/Home.view.xml +5 -0
- package/test/sap/ui/core/qunit/component/testdata/keepAlive/child3OnActivateReturns/Other.view.xml +5 -0
- package/test/sap/ui/core/qunit/component/testdata/keepAlive/child3OnActivateReturns/manifest.json +54 -0
- package/test/sap/ui/core/qunit/component/testdata/keepAlive/child3OnDeactivateReturns/App.view.xml +3 -0
- package/test/sap/ui/core/qunit/component/testdata/keepAlive/child3OnDeactivateReturns/Component.js +17 -0
- package/test/sap/ui/core/qunit/component/testdata/keepAlive/child3OnDeactivateReturns/Home.view.xml +5 -0
- package/test/sap/ui/core/qunit/component/testdata/keepAlive/child3OnDeactivateReturns/Other.view.xml +5 -0
- package/test/sap/ui/core/qunit/component/testdata/keepAlive/child3OnDeactivateReturns/manifest.json +54 -0
- package/test/sap/ui/core/qunit/component/testdata/minUI5Version/Component.js +18 -0
- package/test/sap/ui/core/qunit/component/testdata/minUI5Version/Main.controller.js +6 -0
- package/test/sap/ui/core/qunit/component/testdata/minUI5Version/Main.view.xml +6 -0
- package/test/sap/ui/core/qunit/component/testdata/minUI5Version/manifest.json +12 -0
- package/test/sap/ui/core/qunit/component/testdata/mixed/Component.js +3 -1
- package/test/sap/ui/core/qunit/component/testdata/mixed/manifest.json +3 -11
- package/test/sap/ui/core/qunit/component/testdata/mixed_legacyAPIs/Component.js +16 -0
- package/test/sap/ui/core/qunit/component/testdata/{mixed → mixed_legacyAPIs}/component.json +3 -3
- package/test/sap/ui/core/qunit/component/testdata/mixed_legacyAPIs/i18n/i18n.properties +3 -0
- package/test/sap/ui/core/qunit/component/testdata/mixed_legacyAPIs/manifest.json +139 -0
- package/test/sap/ui/core/qunit/component/testdata/mixed_legacyAPIs/style.css +0 -0
- package/test/sap/ui/core/qunit/component/testdata/routerClass/Component.js +33 -0
- package/test/sap/ui/core/qunit/component/testdata/routerClass/Main.view.xml +8 -0
- package/test/sap/ui/core/qunit/component/testdata/routerClass/manifest.json +38 -0
- package/test/sap/ui/core/qunit/component/testdata/v1/component.json +2 -2
- package/test/sap/ui/core/qunit/component/testdata/v1inline/Component.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/v2/manifest.json +3 -5
- package/test/sap/ui/core/qunit/component/testdata/v2asyncRootView/manifest.json +2 -4
- package/test/sap/ui/core/qunit/component/testdata/v2inline/Component.js +2 -4
- package/test/sap/ui/core/qunit/component/testdata/v2models/empty/Component.js +1 -1
- package/test/sap/ui/core/qunit/component/testdata/v2models/extension/Component.js +1 -1
- package/test/sap/ui/core/qunit/component/testdata/v2models/parentValid/Component.js +286 -0
- package/test/sap/ui/core/qunit/component/testdata/v2models/parentValid/i18n.properties +2 -0
- package/test/sap/ui/core/qunit/component/testdata/v2models/parentValid/i18n_de.properties +2 -0
- package/test/sap/ui/core/qunit/i18n/LocaleData.qunit.js +5 -5
- package/test/sap/ui/core/qunit/{types/TimezoneUtil.qunit.js → i18n/TimezoneUtils.qunit.js} +85 -87
- package/test/sap/ui/core/qunit/i18n/testsuite.i18n.qunit.js +6 -0
- package/test/sap/ui/core/qunit/internal/1RingModels.qunit.js +2 -2
- package/test/sap/ui/core/qunit/json/JSONModel.qunit.js +117 -85
- package/test/sap/ui/core/qunit/messages/Message.qunit.js +7 -5
- package/test/sap/ui/core/qunit/messages/messagesDataBinding.qunit.js +3 -5
- package/test/sap/ui/core/qunit/messages/messagesGeneral.qunit.js +41 -4
- package/test/sap/ui/core/qunit/messages/messagesUsage.qunit.js +3 -2
- package/test/sap/ui/core/qunit/model/Context.qunit.js +29 -0
- package/test/sap/ui/core/qunit/model/PropertyBinding.qunit.js +490 -5
- package/test/sap/ui/core/qunit/mvc/Controller.qunit.js +164 -12
- package/test/sap/ui/core/qunit/mvc/EventHandlerResolver.qunit.js +144 -6
- package/test/sap/ui/core/qunit/mvc/View.qunit.js +2 -2
- package/test/sap/ui/core/qunit/mvc/XMLTemplateProcessor.qunit.js +60 -5
- package/test/sap/ui/core/qunit/mvc/XMLTemplateProcessorAsync.qunit.js +58 -3
- package/test/sap/ui/core/qunit/mvc/XMLTemplateProcessorRequireXML.qunit.js +127 -10
- package/test/sap/ui/core/qunit/mvc/XMLView.qunit.js +108 -10
- package/test/sap/ui/core/qunit/mvc/extensions/ControllerMetadata.qunit.js +74 -7
- package/test/sap/ui/core/qunit/mvc/extensions/Controllerextensions.qunit.js +0 -6
- package/test/sap/ui/core/qunit/mvc/extensions/Controllerextensions_legacy.qunit.js +0 -6
- package/test/sap/ui/core/qunit/mvc/extensions/testdata/ExtendMainLegacy.controller.js +15 -0
- package/test/sap/ui/core/qunit/mvc/extensions/testdata/MainContext.controller.js +0 -3
- package/test/sap/ui/core/qunit/mvc/extensions/testdata/MainMemberExtLegacyFinal.controller.js +38 -0
- package/test/sap/ui/core/qunit/mvc/extensions/testdata/ReuseExtension.js +0 -3
- package/test/sap/ui/core/qunit/mvc/extensions/testdata/ReuseExtensionContext.js +0 -3
- package/test/sap/ui/core/qunit/mvc/extensions/testdata/ReuseExtensionFinal.js +47 -0
- package/test/sap/ui/core/qunit/mvc/testdata/HtmlOnRoot.view.xml +8 -0
- package/test/sap/ui/core/qunit/mvc/testdata/XMLViewWithTypes.view.xml +1 -1
- package/test/sap/ui/core/qunit/mvc/testdata/XMLViewWithTypesFailure.view.xml +41 -0
- package/test/sap/ui/core/qunit/mvc/testdata/asyncHooks.view.xml +1 -1
- package/test/sap/ui/core/qunit/mvc/testdata/test.controller.js +4 -0
- package/test/sap/ui/core/qunit/mvc/testdata/test.view.xml +1 -1
- package/test/sap/ui/core/qunit/mvc/testsuite.mvc.qunit.js +12 -2
- package/test/sap/ui/core/qunit/mvc/viewprocessing/ViewProcessing.qunit.js +23 -4
- package/test/sap/ui/core/qunit/mvc_legacyAPIs/XMLTemplateProcessorRequireXML_legacyAPIs.qunit.js +1 -1
- package/test/sap/ui/core/qunit/odata/ODataMessageParser.qunit.js +3 -5
- package/test/sap/ui/core/qunit/odata/ODataMessageParserNoFakeService.qunit.js +3 -5
- package/test/sap/ui/core/qunit/odata/v2/ODataModel.integration.qunit.js +171 -5
- package/test/sap/ui/core/qunit/odata/v2/V2ODataModel.qunit.js +3 -5
- package/test/sap/ui/core/qunit/odata/v2/V2ODataModelDataState.qunit.js +3 -6
- package/test/sap/ui/core/qunit/odata/v4/Context.qunit.js +145 -91
- package/test/sap/ui/core/qunit/odata/v4/ODataBinding.qunit.js +5 -1
- package/test/sap/ui/core/qunit/odata/v4/ODataListBinding.qunit.js +338 -169
- package/test/sap/ui/core/qunit/odata/v4/ODataModel.integration.qunit.js +6061 -2815
- package/test/sap/ui/core/qunit/odata/v4/ODataModel.qunit.js +2 -4
- package/test/sap/ui/core/qunit/odata/v4/ODataParentBinding.qunit.js +11 -4
- package/test/sap/ui/core/qunit/odata/v4/data/metadata.json +24 -0
- package/test/sap/ui/core/qunit/odata/v4/data/metadata.xml +14 -2
- package/test/sap/ui/core/qunit/odata/v4/data/metadata_special_cases.xml +16 -0
- package/test/sap/ui/core/qunit/odata/v4/lib/_AggregationCache.qunit.js +407 -403
- package/test/sap/ui/core/qunit/odata/v4/lib/_AggregationHelper.qunit.js +11 -1
- package/test/sap/ui/core/qunit/odata/v4/lib/_Cache.qunit.js +14 -15
- package/test/sap/ui/core/qunit/odata/v4/lib/_Requestor.qunit.js +68 -59
- package/test/sap/ui/core/qunit/odata/v4/lib/_TreeState.qunit.js +91 -2
- package/test/sap/ui/core/qunit/opa/autowaiter/_navigationContainerWaiter.js +62 -15
- package/test/sap/ui/core/qunit/routing/async/Router.qunit.js +91 -19
- package/test/sap/ui/core/qunit/routing/async/Target.qunit.js +1 -1
- package/test/sap/ui/core/qunit/routing/async/Targets.qunit.js +131 -16
- package/test/sap/ui/core/qunit/routing/async/TitleHistory.qunit.js +111 -3
- package/test/sap/ui/core/qunit/routing/async/Views.qunit.js +3 -0
- package/test/sap/ui/core/qunit/routing/fixture/Async1.view.xml +2 -2
- package/test/sap/ui/core/qunit/routing/fixture/Async2.view.xml +2 -2
- package/test/sap/ui/core/qunit/routing/fixture/Async3.view.xml +2 -2
- package/test/sap/ui/core/qunit/routing/fixture/router/component/titleChanged/Parent/manifest.json +2 -1
- package/test/sap/ui/core/qunit/rule/testsuite.rule.qunit.js +3 -0
- package/test/sap/ui/core/qunit/testdata/fragments/XMLTestFragmentWithXMLView.fragment.xml +1 -1
- package/test/sap/ui/core/qunit/testdata/libraries/customCss/lib1/library.js +4 -11
- package/test/sap/ui/core/qunit/testdata/libraries/make.js +8 -1
- package/test/sap/ui/core/qunit/testdata/libraries/myGlobalLib/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/resourcebundle/lib1/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/resourcebundle/lib2/intentionally_no_manifest_here.txt +7 -0
- package/test/sap/ui/core/qunit/testdata/libraries/resourcebundle/lib2/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario1/lib1/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario1/lib1/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario1/lib2/library-preload.json +1 -1
- package/test/sap/ui/core/qunit/testdata/libraries/scenario1/lib2/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario1/lib3/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario1/lib3/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario1/lib4/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario1/lib4/library-preload.json +1 -1
- package/test/sap/ui/core/qunit/testdata/libraries/scenario1/lib4/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario1/lib5/library-preload.json +1 -1
- package/test/sap/ui/core/qunit/testdata/libraries/scenario1/lib5/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario1/lib6/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario1/lib6/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario1/lib7/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario11/lib1/library.js +6 -4
- package/test/sap/ui/core/qunit/testdata/libraries/scenario11/lib1/manifest.json +7 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario13/lib1/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario13/lib1/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario13/lib2/library-preload.json +1 -1
- package/test/sap/ui/core/qunit/testdata/libraries/scenario13/lib2/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario13/lib3/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario13/lib3/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario13/lib4/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario13/lib4/library-preload.json +1 -1
- package/test/sap/ui/core/qunit/testdata/libraries/scenario13/lib4/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario13/lib5/library-preload.json +1 -1
- package/test/sap/ui/core/qunit/testdata/libraries/scenario13/lib5/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario13/lib6/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario13/lib6/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario13/lib7/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib1/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib1/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib2/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib2/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib3/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib3/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib4/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib4/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib5/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib5/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib6/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib6/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib7/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib7/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib8/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib8/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib1/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib1/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib10/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib10/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib2/library-preload.json +1 -1
- package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib2/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib3/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib3/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib4/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib4/library-preload.json +1 -1
- package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib4/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib5/library-preload.json +1 -1
- package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib5/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib6/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib6/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib7/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib7/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib8/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib8/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib9/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib9/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario16/embeddingLib/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario16/embeddingLib/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario2/lib1/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario2/lib1/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario2/lib2/library-preload.json +1 -1
- package/test/sap/ui/core/qunit/testdata/libraries/scenario2/lib2/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario2/lib3/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario2/lib3/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario2/lib4/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario2/lib4/library-preload.json +1 -1
- package/test/sap/ui/core/qunit/testdata/libraries/scenario2/lib4/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario2/lib5/library-preload.json +1 -1
- package/test/sap/ui/core/qunit/testdata/libraries/scenario2/lib5/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario2/lib6/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario2/lib6/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario2/lib7/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario3/lib1/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario3/lib1/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario3/lib2/library-preload.json +1 -1
- package/test/sap/ui/core/qunit/testdata/libraries/scenario3/lib2/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario3/lib3/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario3/lib3/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario4/lib1/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario4/lib1/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario4/lib2/library-preload.json +1 -1
- package/test/sap/ui/core/qunit/testdata/libraries/scenario4/lib2/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario5/lib1/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario5/lib1/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario5/lib2/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario5/lib2/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario5/lib3/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario5/lib3/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario5/lib4/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario5/lib4/library-preload.json +1 -1
- package/test/sap/ui/core/qunit/testdata/libraries/scenario5/lib4/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario5/lib5/library-preload.json +1 -1
- package/test/sap/ui/core/qunit/testdata/libraries/scenario5/lib5/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario5/lib6/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario5/lib6/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario6/lib1/library-preload.json +1 -1
- package/test/sap/ui/core/qunit/testdata/libraries/scenario6/lib1/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario6/lib2/library-preload.json +1 -1
- package/test/sap/ui/core/qunit/testdata/libraries/scenario6/lib2/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario7/lib1/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario7/lib1/library-preload.json +1 -1
- package/test/sap/ui/core/qunit/testdata/libraries/scenario7/lib1/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario7/lib2/library-preload.json +1 -1
- package/test/sap/ui/core/qunit/testdata/libraries/scenario7/lib2/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario7/lib3/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario7/lib3/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario7/lib4/library-preload.json +1 -1
- package/test/sap/ui/core/qunit/testdata/libraries/scenario7/lib4/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario7/lib5/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario7/lib5/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario8/lib1/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario8/lib1/library-preload.json +1 -1
- package/test/sap/ui/core/qunit/testdata/libraries/scenario8/lib1/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario8/lib2/library-preload.json +1 -1
- package/test/sap/ui/core/qunit/testdata/libraries/scenario8/lib2/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario8/lib3/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario8/lib3/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario8/lib4/library-preload.json +1 -1
- package/test/sap/ui/core/qunit/testdata/libraries/scenario8/lib4/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario8/lib5/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario8/lib5/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario9/lib1/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/scenario9/lib1/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/terminologies/absoluteBundleUrl/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/terminologies/integration/application/Component-preload.js +1 -1
- package/test/sap/ui/core/qunit/testdata/libraries/terminologies/integration/lib/library-preload.js +2 -2
- package/test/sap/ui/core/qunit/testdata/libraries/terminologies/notLoadedYet/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/terminologies/simple/library-preload.js +2 -0
- package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib1/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib10/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib11/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib12/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib13/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib14/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib15/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib16/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib17/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib2/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib3/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib4/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib5/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib6/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib7/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib8/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib9/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/routing/scenario1/RootView.view.xml +1 -2
- package/test/sap/ui/core/qunit/testdata/uilib/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/uilib/themes/test_theme_scoped/library-parameters.json +25 -0
- package/test/sap/ui/core/qunit/testdata/uilib/themes/test_theme_scoped/library.css +28 -0
- package/test/sap/ui/core/qunit/testdata/uilib-custom-theme-fallback/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/uilib-failing-css-import/library.js +1 -0
- package/test/sap/ui/core/qunit/testdata/xml-require/view/XMLTemplateProcessorAsync_require_expression.view.xml +0 -1
- package/test/sap/ui/core/qunit/testdata/xml-require/view/XMLTemplateProcessorAsync_require_expressionFaulty.view.xml +40 -0
- package/test/sap/ui/core/qunit/testsuites/testsuite.control.framework.qunit.js +11 -1
- package/test/sap/ui/core/qunit/testsuites/testsuite.eventing.qunit.js +3 -0
- package/test/sap/ui/core/qunit/testsuites/testsuite.foundation.enablement.qunit.js +3 -0
- package/test/sap/ui/core/qunit/types/Date.qunit.js +62 -25
- package/test/sap/ui/core/qunit/types/DateInterval.qunit.js +79 -12
- package/test/sap/ui/core/qunit/types/Types.qunit.js +100 -32
- package/test/sap/ui/core/qunit/types/testsuite.types.qunit.js +0 -6
- package/test/sap/ui/core/qunit/ui5classes/DataType.qunit.js +10 -1
- package/test/sap/ui/core/qunit/ui5classes/ManagedObject.qunit.js +102 -19
- package/test/sap/ui/core/qunit/ui5classes/Object.qunit.js +116 -124
- package/test/sap/ui/core/qunit/util/LabelEnablement.qunit.js +122 -3
- package/test/sap/ui/core/qunit/util/reflection/JsControlTreeModifier.qunit.js +79 -4
- package/test/sap/ui/core/qunit/util/reflection/XmlTreeModifier.qunit.js +0 -1
- package/test/sap/ui/core/relnotes/changes-1.124.json +32 -0
- package/test/sap/ui/core/samples/databinding/UnitTable/README.md +18 -0
- package/test/sap/ui/core/samples/databinding/UnitTable/package.json +13 -0
- package/test/sap/ui/core/samples/databinding/UnitTable/ui5.yaml +12 -0
- package/test/sap/ui/core/samples/databinding/UnitTable/webapp/Component.js +29 -0
- package/test/sap/ui/core/samples/databinding/UnitTable/webapp/controller/UnitTable.controller.js +58 -0
- package/test/sap/ui/core/samples/databinding/{UnitTable.meters.json → UnitTable/webapp/data/UnitTable.meters.json} +42 -42
- package/test/sap/ui/core/samples/databinding/UnitTable/webapp/index.html +28 -0
- package/test/sap/ui/core/samples/databinding/UnitTable/webapp/manifest.json +40 -0
- package/test/sap/ui/core/samples/databinding/UnitTable/webapp/view/UnitTable.view.xml +206 -0
- package/test/sap/ui/core/samples/draganddrop/DragAndDrop.html +2 -2
- package/test/sap/ui/core/samples/draganddrop/dragBetweenLists.html +10 -5
- package/test/sap/ui/core/samples/draganddrop/dragWithinList.html +0 -2
- 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/sap/ui/core/CurrenciesIndia.html +0 -182
- package/test/sap/ui/core/CurrenciesRTL.html +0 -312
- package/test/sap/ui/core/CustomData.html +0 -161
- package/test/sap/ui/core/DataTypeNormalizer.html +0 -44
- package/test/sap/ui/core/Formats.html +0 -384
- package/test/sap/ui/core/Strings.controller.js +0 -90
- package/test/sap/ui/core/Strings.css +0 -8
- package/test/sap/ui/core/Strings.html +0 -25
- package/test/sap/ui/core/Strings.js +0 -20
- package/test/sap/ui/core/Strings.view.xml +0 -86
- package/test/sap/ui/core/Timezones.html +0 -23
- package/test/sap/ui/core/qunit/ODataModelRefresh.qunit.html +0 -236
- package/test/sap/ui/core/qunit/ODataModelThreshold.qunit.html +0 -164
- package/test/sap/ui/core/samples/databinding/DataBindingAsyncType.html +0 -85
- package/test/sap/ui/core/samples/databinding/DataBindingDeclarativeSyntax.js +0 -65
- package/test/sap/ui/core/samples/databinding/DataBindingFragment.html +0 -21
- package/test/sap/ui/core/samples/databinding/DatabindingDeclarativeSyntax.html +0 -38
- package/test/sap/ui/core/samples/databinding/DatabindingMessages.html +0 -193
- package/test/sap/ui/core/samples/databinding/ODatabindingMessages.html +0 -305
- package/test/sap/ui/core/samples/databinding/UnitTable.controller.js +0 -202
- package/test/sap/ui/core/samples/databinding/UnitTable.html +0 -25
- package/test/sap/ui/core/samples/databinding/UnitTable.view.xml +0 -337
- package/test/sap/ui/core/samples/databinding/UnitTableMain.js +0 -21
- package/test/sap/ui/core/samples/databinding/fragment/Fragment.fragment.xml +0 -6
- package/test/sap/ui/core/samples/databinding/fragment/NamedFragment.fragment.xml +0 -6
- package/test/sap/ui/core/samples/databinding/fragment/View.controller.js +0 -36
- package/test/sap/ui/core/samples/databinding/fragment/View.view.xml +0 -12
- package/test/sap/ui/core/samples/databinding/message/Component.js +0 -185
- package/test/sap/ui/core/samples/databinding/message/component.json +0 -12
- package/test/sap/ui/core/samples/databinding/message/comptree/Component.js +0 -186
- package/test/sap/ui/core/samples/databinding/message/comptree/component.json +0 -12
- package/test/sap/ui/core/samples/databinding/message/disabled/Component.js +0 -186
- package/test/sap/ui/core/samples/databinding/message/disabled/component.json +0 -12
- package/test/sap/ui/core/samples/databinding/message/enabled/Component.js +0 -186
- package/test/sap/ui/core/samples/databinding/message/enabled/component.json +0 -12
- package/test/sap/ui/core/samples/databinding/testdata/ComplexSyntax.js +0 -38
- package/test/sap/ui/core/samples/databinding/testdata/complexsyntax.controller.js +0 -26
- package/test/sap/ui/core/samples/databinding/testdata/complexsyntax.view.xml +0 -26
- package/test/sap/ui/core/samples/databinding/testdata/team.xml +0 -12
- package/test/sap/ui/core/samples/databinding/testdata/test.controller.js +0 -39
- package/test/sap/ui/core/samples/databinding/testdata/text.properties +0 -5
- package/test/sap/ui/core/samples/databinding/testdata/text_de.properties +0 -5
- package/test/sap/ui/core/samples/formatting/Component.js +0 -21
- package/test/sap/ui/core/samples/formatting/controller/ChooseFormatOptions.controller.js +0 -96
- package/test/sap/ui/core/samples/formatting/controller/Main.controller.js +0 -9
- package/test/sap/ui/core/samples/formatting/index.html +0 -28
- package/test/sap/ui/core/samples/formatting/manifest.json +0 -68
- package/test/sap/ui/core/samples/formatting/model/Customizing.js +0 -35
- package/test/sap/ui/core/samples/formatting/model/data.json +0 -17
- package/test/sap/ui/core/samples/formatting/types/CustomCurrency.js +0 -14
- package/test/sap/ui/core/samples/formatting/types/CustomUnit.js +0 -14
- package/test/sap/ui/core/samples/formatting/view/App.view.xml +0 -6
- package/test/sap/ui/core/samples/formatting/view/ChooseFormatOptions.view.xml +0 -71
- package/test/sap/ui/core/samples/formatting/view/InputFields.fragment.xml +0 -118
- package/test/sap/ui/core/samples/formatting/view/Main.view.xml +0 -15
- package/test/sap/ui/core/timezones.js +0 -92
- package/test/sap/ui/core/timezones.view.xml +0 -23
- /package/test/sap/ui/core/qunit/component/testdata/{mixed → mixed_legacyAPIs}/script.js +0 -0
|
@@ -6,9 +6,10 @@ sap.ui.define([
|
|
|
6
6
|
'sap/ui/core/ElementRegistry',
|
|
7
7
|
'sap/ui/core/mvc/XMLView',
|
|
8
8
|
'sap/ui/core/mvc/Controller',
|
|
9
|
+
'sap/base/future',
|
|
9
10
|
'sap/base/Log',
|
|
10
11
|
'sap/ui/qunit/utils/nextUIUpdate'
|
|
11
|
-
], function(Component, Fragment, Element, ElementRegistry, XMLView, Controller, Log, nextUIUpdate) {
|
|
12
|
+
], function(Component, Fragment, Element, ElementRegistry, XMLView, Controller, future, Log, nextUIUpdate) {
|
|
12
13
|
"use strict";
|
|
13
14
|
|
|
14
15
|
QUnit.module("Controller.create API");
|
|
@@ -24,6 +25,7 @@ sap.ui.define([
|
|
|
24
25
|
})
|
|
25
26
|
.then(function(oController) {
|
|
26
27
|
assert.equal(oController.double(8), 16, "Controller implementation was correctly returned");
|
|
28
|
+
oController.destroy();
|
|
27
29
|
done();
|
|
28
30
|
});
|
|
29
31
|
});
|
|
@@ -41,10 +43,14 @@ sap.ui.define([
|
|
|
41
43
|
});
|
|
42
44
|
|
|
43
45
|
sap.ui.require(["sap/ui/core/Component"], function(Component) {
|
|
46
|
+
let oCreatedComponent;
|
|
44
47
|
Component.create({
|
|
45
48
|
name: "mvc.testdata.ControllerExtensionTest.Test1"
|
|
46
49
|
})
|
|
47
50
|
.then(function(oComponent) {
|
|
51
|
+
oCreatedComponent = oComponent;
|
|
52
|
+
//oControl is a view and we must take care of the loaded promise.
|
|
53
|
+
//Actually nested Views/Fragments are created in the 'old' not fully async way
|
|
48
54
|
return oComponent.getRootControl().loaded();
|
|
49
55
|
})
|
|
50
56
|
.then(function(oView) {
|
|
@@ -53,6 +59,7 @@ sap.ui.define([
|
|
|
53
59
|
assert.ok(oController.triple, "Controller should be extended with 'triple' function");
|
|
54
60
|
assert.equal(oController.double(3), 6, "Controller implementation works correctly");
|
|
55
61
|
assert.equal(oController.triple(3), 9, "Controller implementation works correctly");
|
|
62
|
+
oCreatedComponent.destroy();
|
|
56
63
|
done();
|
|
57
64
|
});
|
|
58
65
|
});
|
|
@@ -96,6 +103,10 @@ sap.ui.define([
|
|
|
96
103
|
this._pFragment = Fragment.load({
|
|
97
104
|
name: "testdata.fragments.XMLView",
|
|
98
105
|
type: "XML"
|
|
106
|
+
}).then(function(oControl) {
|
|
107
|
+
//oControl is a view and we must take care of the loaded promise.
|
|
108
|
+
//Actually nested Views/Fragments are created in the 'old' not fully async way
|
|
109
|
+
return oControl.loaded();
|
|
99
110
|
});
|
|
100
111
|
}
|
|
101
112
|
});
|
|
@@ -203,6 +214,10 @@ sap.ui.define([
|
|
|
203
214
|
this._pFragment = Fragment.load({
|
|
204
215
|
name: "testdata.fragments.XMLView",
|
|
205
216
|
type: "XML"
|
|
217
|
+
}).then(function(oControl) {
|
|
218
|
+
//oControl is a view and we must take care of the loaded promise.
|
|
219
|
+
//Actually nested Views/Fragments are created in the 'old' not fully async way
|
|
220
|
+
return oControl.loaded();
|
|
206
221
|
}).then(function(oControl) {
|
|
207
222
|
this.getView().addDependent(oControl);
|
|
208
223
|
}.bind(this));
|
|
@@ -294,6 +309,10 @@ sap.ui.define([
|
|
|
294
309
|
name: "testdata.fragments.XMLView",
|
|
295
310
|
type: "XML",
|
|
296
311
|
id: "horst"
|
|
312
|
+
}).then(function(oControl) {
|
|
313
|
+
//oControl is a view and we must take care of the loaded promise.
|
|
314
|
+
//Actually nested Views/Fragments are created in the 'old' not fully async way
|
|
315
|
+
return oControl.loaded();
|
|
297
316
|
}).then(function() {
|
|
298
317
|
res([]);
|
|
299
318
|
});
|
|
@@ -310,6 +329,7 @@ sap.ui.define([
|
|
|
310
329
|
return pFragmentReady.then(function() {
|
|
311
330
|
assert.equal(oComponent, Component.getOwnerComponentFor(oView.getDependents()[0]), "Owner component set cortrectly for fragment");
|
|
312
331
|
oComponent.destroy();
|
|
332
|
+
oView.destroy();
|
|
313
333
|
});
|
|
314
334
|
});
|
|
315
335
|
});
|
|
@@ -328,8 +348,12 @@ sap.ui.define([
|
|
|
328
348
|
name: "testdata.fragments.XMLView",
|
|
329
349
|
type: "XML",
|
|
330
350
|
addToDependents: false
|
|
331
|
-
}).then(function() {
|
|
332
|
-
|
|
351
|
+
}).then(function(oControl) {
|
|
352
|
+
//oControl is a view and we must take care of the loaded promise.
|
|
353
|
+
//Actually nested Views/Fragments are created in the 'old' not fully async way
|
|
354
|
+
return oControl.loaded();
|
|
355
|
+
}).then(function(oFragment) {
|
|
356
|
+
res(oFragment);
|
|
333
357
|
});
|
|
334
358
|
}.bind(this));
|
|
335
359
|
}
|
|
@@ -340,8 +364,9 @@ sap.ui.define([
|
|
|
340
364
|
definition: "<mvc:View xmlns:mvc='sap.ui.core.mvc' controllerName='my.Controller06'>" +
|
|
341
365
|
"</mvc:View>"
|
|
342
366
|
}).then(function(oView) {
|
|
343
|
-
return pFragmentReady.then(function() {
|
|
367
|
+
return pFragmentReady.then(function(oFragment) {
|
|
344
368
|
assert.equal(oView.getDependents().length, 0, "Fragment is not added to the dependents aggregation of the view");
|
|
369
|
+
oFragment.destroy();
|
|
345
370
|
oView.destroy();
|
|
346
371
|
});
|
|
347
372
|
});
|
|
@@ -360,6 +385,10 @@ sap.ui.define([
|
|
|
360
385
|
name: "testdata.fragments.XMLView",
|
|
361
386
|
type: "XML",
|
|
362
387
|
autoPrefixId: false
|
|
388
|
+
}).then(function(oControl) {
|
|
389
|
+
//oControl is a view and we must take care of the loaded promise.
|
|
390
|
+
//Actually nested Views/Fragments are created in the 'old' not fully async way
|
|
391
|
+
return oControl.loaded();
|
|
363
392
|
}).then(function() {
|
|
364
393
|
res([]);
|
|
365
394
|
});
|
|
@@ -394,6 +423,10 @@ sap.ui.define([
|
|
|
394
423
|
type: "XML",
|
|
395
424
|
id: "myFragment",
|
|
396
425
|
autoPrefixId: false
|
|
426
|
+
}).then(function(oControl) {
|
|
427
|
+
//oControl is a view and we must take care of the loaded promise.
|
|
428
|
+
//Actually nested Views/Fragments are created in the 'old' not fully async way
|
|
429
|
+
return oControl.loaded();
|
|
397
430
|
}).then(function() {
|
|
398
431
|
res([]);
|
|
399
432
|
});
|
|
@@ -416,7 +449,13 @@ sap.ui.define([
|
|
|
416
449
|
|
|
417
450
|
QUnit.module("Controller Lifecycle-Hooks");
|
|
418
451
|
|
|
419
|
-
|
|
452
|
+
/**
|
|
453
|
+
* In 2.x calling a hook will throw an error when a value is returned
|
|
454
|
+
* @deprecated
|
|
455
|
+
*/
|
|
456
|
+
|
|
457
|
+
QUnit.test("Shouldn't return any values (future=false)", async (assert) => {
|
|
458
|
+
future.active = false;
|
|
420
459
|
const aPromises = [];
|
|
421
460
|
sap.ui.define("my/Controller09.controller", ["sap/ui/core/mvc/Controller"], function(Controller) {
|
|
422
461
|
return Controller.extend("my.Controller09", {
|
|
@@ -441,13 +480,14 @@ sap.ui.define([
|
|
|
441
480
|
});
|
|
442
481
|
});
|
|
443
482
|
|
|
444
|
-
/**
|
|
445
|
-
* @deprecated
|
|
446
|
-
*/
|
|
447
483
|
const oErrorLogSpy = sinon.spy(Log, "error");
|
|
448
484
|
const oFatalLogSpy = sinon.spy(Log, "fatal");
|
|
485
|
+
const oController = await Controller.create({
|
|
486
|
+
name: "my.Controller09"
|
|
487
|
+
});
|
|
449
488
|
const oView = await XMLView.create({
|
|
450
|
-
viewName: "example.mvc.asyncHooks"
|
|
489
|
+
viewName: "example.mvc.asyncHooks",
|
|
490
|
+
controller: oController
|
|
451
491
|
});
|
|
452
492
|
assert.ok(oView, "View is created");
|
|
453
493
|
assert.ok(oFatalLogSpy.getCall(0).calledWith("[FUTURE FATAL] The registered Event Listener 'onInit' must not have a return value."), "Correct Fatal Log displayed");
|
|
@@ -462,9 +502,6 @@ sap.ui.define([
|
|
|
462
502
|
oView.destroy();
|
|
463
503
|
assert.ok(oFatalLogSpy.getCall(3).calledWith("[FUTURE FATAL] The registered Event Listener 'onExit' must not have a return value."), "Correct Fatal Log displayed");
|
|
464
504
|
|
|
465
|
-
/**
|
|
466
|
-
* @deprecated
|
|
467
|
-
*/
|
|
468
505
|
await (async () => {
|
|
469
506
|
await Promise.allSettled(aPromises);
|
|
470
507
|
assert.equal(oErrorLogSpy.callCount, 2, "Two error logs should occur reg. rejected Promises.");
|
|
@@ -474,5 +511,120 @@ sap.ui.define([
|
|
|
474
511
|
})();
|
|
475
512
|
|
|
476
513
|
oFatalLogSpy.restore();
|
|
514
|
+
future.active = undefined;
|
|
515
|
+
});
|
|
516
|
+
|
|
517
|
+
QUnit.test("onInit Shouldn't return any values (future=true)", async (assert) => {
|
|
518
|
+
future.active = true;
|
|
519
|
+
sap.ui.define("my/Controller10.controller", ["sap/ui/core/mvc/Controller"], function(Controller) {
|
|
520
|
+
return Controller.extend("my.Controller10", {
|
|
521
|
+
onInit: function() {
|
|
522
|
+
return "onInit returns a String value";
|
|
523
|
+
}
|
|
524
|
+
});
|
|
525
|
+
});
|
|
526
|
+
|
|
527
|
+
const expectedMessage = "The registered Event Listener 'onInit' must not have a return value.";
|
|
528
|
+
const oController = await Controller.create({
|
|
529
|
+
name: "my.Controller10"
|
|
530
|
+
});
|
|
531
|
+
await assert.rejects(XMLView.create({
|
|
532
|
+
viewName: "example.mvc.asyncHooks",
|
|
533
|
+
controller: oController
|
|
534
|
+
}), new Error(expectedMessage), "onInit must throw an error as it has a return value");
|
|
535
|
+
|
|
536
|
+
future.active = undefined;
|
|
537
|
+
});
|
|
538
|
+
|
|
539
|
+
QUnit.test("onExit Shouldn't return any values (future=true)", async (assert) => {
|
|
540
|
+
future.active = true;
|
|
541
|
+
let oOnExitPromise;
|
|
542
|
+
sap.ui.define("my/Controller11.controller", ["sap/ui/core/mvc/Controller"], function(Controller) {
|
|
543
|
+
return Controller.extend("my.Controller11", {
|
|
544
|
+
onExit: function() {
|
|
545
|
+
const oPromise = Promise.reject(new Error("onExit returns rejected Promise."));
|
|
546
|
+
oOnExitPromise = oPromise;
|
|
547
|
+
return oPromise;
|
|
548
|
+
}
|
|
549
|
+
});
|
|
550
|
+
});
|
|
551
|
+
|
|
552
|
+
const expectedMessage = "The registered Event Listener 'onExit' must not have a return value.";
|
|
553
|
+
const oController = await Controller.create({
|
|
554
|
+
name: "my.Controller11"
|
|
555
|
+
});
|
|
556
|
+
const oView = await XMLView.create({
|
|
557
|
+
viewName: "example.mvc.asyncHooks",
|
|
558
|
+
controller: oController
|
|
559
|
+
});
|
|
560
|
+
|
|
561
|
+
assert.throws(() => {
|
|
562
|
+
oView.destroy();
|
|
563
|
+
}, new Error(expectedMessage), "onExit must throw an error as it has a return value");
|
|
564
|
+
|
|
565
|
+
await oOnExitPromise.catch((err) => {
|
|
566
|
+
assert.equal(err.message, "onExit returns rejected Promise.", "onExit promise rejected");
|
|
567
|
+
});
|
|
568
|
+
|
|
569
|
+
future.active = undefined;
|
|
570
|
+
});
|
|
571
|
+
|
|
572
|
+
QUnit.test("onBeforeRendering Shouldn't return any values (future=true)", async (assert) => {
|
|
573
|
+
future.active = true;
|
|
574
|
+
|
|
575
|
+
sap.ui.define("my/Controller12.controller", ["sap/ui/core/mvc/Controller"], function(Controller) {
|
|
576
|
+
return Controller.extend("my.Controller12", {
|
|
577
|
+
onBeforeRendering: async function() {
|
|
578
|
+
const oPromise = Promise.resolve("async onBeforeRendering returns resolved Promise.");
|
|
579
|
+
await oPromise;
|
|
580
|
+
}
|
|
581
|
+
});
|
|
582
|
+
});
|
|
583
|
+
|
|
584
|
+
const expectedMessage = "The registered Event Listener 'onBeforeRendering' must not have a return value.";
|
|
585
|
+
const oController = await Controller.create({
|
|
586
|
+
name: "my.Controller12"
|
|
587
|
+
});
|
|
588
|
+
const oView = await XMLView.create({
|
|
589
|
+
viewName: "example.mvc.asyncHooks",
|
|
590
|
+
controller: oController
|
|
591
|
+
});
|
|
592
|
+
oView.placeAt("qunit-fixture");
|
|
593
|
+
|
|
594
|
+
await assert.rejects(nextUIUpdate(), new Error(expectedMessage), "onBeforeRendering must throw an error as it has a return value");
|
|
595
|
+
|
|
596
|
+
future.active = undefined;
|
|
597
|
+
oView.destroy();
|
|
598
|
+
});
|
|
599
|
+
|
|
600
|
+
QUnit.test("onAfterRendering Shouldn't return any values (future=true)", async (assert) => {
|
|
601
|
+
future.active = true;
|
|
602
|
+
let oOnAfterRenderingPromise;
|
|
603
|
+
sap.ui.define("my/Controller13.controller", ["sap/ui/core/mvc/Controller"], function(Controller) {
|
|
604
|
+
return Controller.extend("my.Controller13", {
|
|
605
|
+
onAfterRendering: async function() {
|
|
606
|
+
const oPromise = Promise.reject(new Error("async onAfterRendering returns rejected Promise."));
|
|
607
|
+
oOnAfterRenderingPromise = oPromise;
|
|
608
|
+
await oPromise;
|
|
609
|
+
}
|
|
610
|
+
});
|
|
611
|
+
});
|
|
612
|
+
|
|
613
|
+
const expectedMessage = "The registered Event Listener 'onAfterRendering' must not have a return value.";
|
|
614
|
+
const oController = await Controller.create({
|
|
615
|
+
name: "my.Controller13"
|
|
616
|
+
});
|
|
617
|
+
const oView = await XMLView.create({
|
|
618
|
+
viewName: "example.mvc.asyncHooks",
|
|
619
|
+
controller: oController
|
|
620
|
+
});
|
|
621
|
+
oView.placeAt("qunit-fixture");
|
|
622
|
+
|
|
623
|
+
await assert.rejects(nextUIUpdate(), new Error(expectedMessage), "onAfterRendering must throw an error as it has a return value");
|
|
624
|
+
await oOnAfterRenderingPromise.catch((err) => {
|
|
625
|
+
assert.equal(err.message, "async onAfterRendering returns rejected Promise.", "onAfterRendering promise rejected");
|
|
626
|
+
});
|
|
627
|
+
future.active = undefined;
|
|
628
|
+
oView.destroy();
|
|
477
629
|
});
|
|
478
630
|
});
|
|
@@ -3,10 +3,12 @@ sap.ui.define([
|
|
|
3
3
|
"sap/ui/core/Control",
|
|
4
4
|
"sap/ui/model/json/JSONModel",
|
|
5
5
|
"sap/ui/core/mvc/EventHandlerResolver",
|
|
6
|
+
"sap/base/future",
|
|
6
7
|
"sap/base/Log",
|
|
7
8
|
"sap/ui/model/type/Integer",
|
|
8
|
-
"sap/ui/model/type/Date"
|
|
9
|
-
|
|
9
|
+
"sap/ui/model/type/Date",
|
|
10
|
+
"sap/ui/model/type/String"
|
|
11
|
+
], function(Control, JSONModel, EventHandlerResolver, future, Log, IntegerType, DateType, StringType) {
|
|
10
12
|
"use strict";
|
|
11
13
|
|
|
12
14
|
var oController;
|
|
@@ -75,8 +77,11 @@ sap.ui.define([
|
|
|
75
77
|
}
|
|
76
78
|
});
|
|
77
79
|
|
|
78
|
-
|
|
79
|
-
|
|
80
|
+
/**
|
|
81
|
+
* @deprecated
|
|
82
|
+
*/
|
|
83
|
+
QUnit.test("Plain handler resolution (future=false)", function(assert) {
|
|
84
|
+
future.active = false;
|
|
80
85
|
var fnController = EventHandlerResolver.resolveEventHandler(".fnControllerMethod", oController)[0];
|
|
81
86
|
assert.equal(fnController, oController.fnControllerMethod, "Controller method should be found");
|
|
82
87
|
|
|
@@ -90,6 +95,28 @@ sap.ui.define([
|
|
|
90
95
|
|
|
91
96
|
var fnGlobal = EventHandlerResolver.resolveEventHandler("ns.deepMethod", oController);
|
|
92
97
|
assert.strictEqual(fnGlobal, undefined, "Function name with deeper path shouldn't be searched in the controller");
|
|
98
|
+
future.active = undefined;
|
|
99
|
+
});
|
|
100
|
+
|
|
101
|
+
QUnit.test("Plain handler resolution (future=true)", function(assert) {
|
|
102
|
+
future.active = true;
|
|
103
|
+
var fnController = EventHandlerResolver.resolveEventHandler(".fnControllerMethod", oController)[0];
|
|
104
|
+
assert.equal(fnController, oController.fnControllerMethod, "Controller method should be found");
|
|
105
|
+
|
|
106
|
+
/**
|
|
107
|
+
* @deprecated
|
|
108
|
+
*/
|
|
109
|
+
(() => {
|
|
110
|
+
var fnGlobal = EventHandlerResolver.resolveEventHandler("testEventHandlerResolver.subobject.someGlobalMethod", oController)[0];
|
|
111
|
+
assert.equal(fnGlobal, window.testEventHandlerResolver.subobject.someGlobalMethod, "Global method should be found");
|
|
112
|
+
})();
|
|
113
|
+
|
|
114
|
+
assert.throws(() => {
|
|
115
|
+
EventHandlerResolver.resolveEventHandler("ns.deepMethod", oController);
|
|
116
|
+
},
|
|
117
|
+
new Error("Event handler name 'ns.deepMethod' could not be resolved to an event handler function"),
|
|
118
|
+
"Function name with deeper path shouldn't be searched in the controller");
|
|
119
|
+
future.active = undefined;
|
|
93
120
|
});
|
|
94
121
|
|
|
95
122
|
QUnit.test("Handler resolution when parentheses are present", function(assert) {
|
|
@@ -141,7 +168,11 @@ sap.ui.define([
|
|
|
141
168
|
assert.equal(oSpy.callCount, 1, "Module method should be called once");
|
|
142
169
|
});
|
|
143
170
|
|
|
171
|
+
/**
|
|
172
|
+
* @deprecated
|
|
173
|
+
*/
|
|
144
174
|
QUnit.test("Log warning for usage of not properly XML-required modules", function(assert) {
|
|
175
|
+
future.active = false;
|
|
145
176
|
var logSpy = sinon.spy(Log, "warning");
|
|
146
177
|
|
|
147
178
|
// immediately call the resolving handler
|
|
@@ -154,6 +185,22 @@ sap.ui.define([
|
|
|
154
185
|
assert.ok(logSpy.calledWith(sinon.match(/Event handler name 'Module.someMethod\(\)' could not be resolved to an event handler function/)));
|
|
155
186
|
|
|
156
187
|
logSpy.restore();
|
|
188
|
+
future.active = undefined;
|
|
189
|
+
});
|
|
190
|
+
|
|
191
|
+
QUnit.test("Throw error for usage of not properly XML-required modules (future=true)", function(assert) {
|
|
192
|
+
future.active = true;
|
|
193
|
+
|
|
194
|
+
const sExpectedMessage = "Event handler name 'Module.someMethod()' could not be resolved to an event handler function";
|
|
195
|
+
// immediately call the resolving handler
|
|
196
|
+
assert.throws(() => EventHandlerResolver.resolveEventHandler("Module.someMethod()", oController, {Module: {}}),
|
|
197
|
+
new Error(sExpectedMessage),
|
|
198
|
+
"Error thrown");
|
|
199
|
+
// test without associated controller
|
|
200
|
+
assert.throws(() => EventHandlerResolver.resolveEventHandler("Module.someMethod()", null, {Module: {}}),
|
|
201
|
+
new Error(sExpectedMessage),
|
|
202
|
+
"Error thrown");
|
|
203
|
+
future.active = undefined;
|
|
157
204
|
});
|
|
158
205
|
|
|
159
206
|
QUnit.test("'this' context when no parenthese is present", function(assert) {
|
|
@@ -432,8 +479,11 @@ sap.ui.define([
|
|
|
432
479
|
}
|
|
433
480
|
});
|
|
434
481
|
|
|
435
|
-
|
|
436
|
-
|
|
482
|
+
/**
|
|
483
|
+
* @deprecated
|
|
484
|
+
*/
|
|
485
|
+
QUnit.test("error cases (and edge cases) (future=false)", function(assert) {
|
|
486
|
+
future.active = false;
|
|
437
487
|
var fnFromController;
|
|
438
488
|
|
|
439
489
|
// unclosed braces
|
|
@@ -519,6 +569,94 @@ sap.ui.define([
|
|
|
519
569
|
}, function(err){
|
|
520
570
|
return err.message.indexOf("Bad") > -1;
|
|
521
571
|
}, "Error should be thrown for non-closed double quotes");
|
|
572
|
+
future.active = undefined;
|
|
573
|
+
});
|
|
574
|
+
|
|
575
|
+
QUnit.test("error cases (and edge cases) (future=true)", function(assert) {
|
|
576
|
+
future.active = true;
|
|
577
|
+
let fnFromController;
|
|
578
|
+
|
|
579
|
+
// unclosed braces
|
|
580
|
+
assert.throws(() => {
|
|
581
|
+
fnFromController = EventHandlerResolver.resolveEventHandler(".fnControllerMethod(${/someModelProperty)", oController)[0];
|
|
582
|
+
fnFromController(oDummyEvent);
|
|
583
|
+
} , (err) => {
|
|
584
|
+
return err.message.indexOf("no closing braces found") > -1;
|
|
585
|
+
}, "Correct error should be thrown for non-matching braces");
|
|
586
|
+
|
|
587
|
+
// unresolvable formatter
|
|
588
|
+
fnFromController = EventHandlerResolver.resolveEventHandler(".fnControllerMethod(${path:'/someModelProperty', formatter: '.myNotExistingFormatter'})", oController)[0];
|
|
589
|
+
assert.throws(() => fnFromController(oDummyEvent),
|
|
590
|
+
new Error("formatter function .myNotExistingFormatter not found!"),
|
|
591
|
+
"Error should be thrown for unresolvable formatter");
|
|
592
|
+
|
|
593
|
+
// globals within the expression
|
|
594
|
+
const spy = sinon.spy(Log, "warning");
|
|
595
|
+
fnFromController = EventHandlerResolver.resolveEventHandler(".fnControllerMethod(Math.max(1))", oController)[0];
|
|
596
|
+
fnFromController(oDummyEvent);
|
|
597
|
+
assert.equal(spy.callCount, 2, "Warning should be logged for globals inside parameter section");
|
|
598
|
+
assert.ok(spy.args[0][0].indexOf("Unsupported global identifier") > -1, "Warning should be logged for globals inside parameter section");
|
|
599
|
+
Log.warning.restore();
|
|
600
|
+
|
|
601
|
+
// wrong expression syntax
|
|
602
|
+
assert.throws(() => {
|
|
603
|
+
fnFromController = EventHandlerResolver.resolveEventHandler(".fnControllerMethod(${/someModelProperty} + {/someModelProperty})", oController)[0];
|
|
604
|
+
fnFromController(oDummyEvent);
|
|
605
|
+
}, (err) => {
|
|
606
|
+
return err.message.indexOf("Expected IDENTIFIER") > -1;
|
|
607
|
+
}, "Error should be thrown for expression syntax error");
|
|
608
|
+
|
|
609
|
+
// no expressions within
|
|
610
|
+
assert.throws(() => EventHandlerResolver.resolveEventHandler(".fnControllerMethod({= 'abc'})", oController),
|
|
611
|
+
new Error("It looks like an event handler parameter contains a binding expression ({=...}). This is not allowed because the entire event handler is already considered an expression: .fnControllerMethod({= 'abc'})"),
|
|
612
|
+
"Error should be thrown for expressions inside parameter section");
|
|
613
|
+
assert.throws(() => {
|
|
614
|
+
fnFromController(oDummyEvent);
|
|
615
|
+
}, (err) => {
|
|
616
|
+
return true; // browser-dependent message
|
|
617
|
+
}, "Error should be thrown for expressions inside parameter section");
|
|
618
|
+
|
|
619
|
+
// starting with a brace
|
|
620
|
+
assert.throws(() => {
|
|
621
|
+
fnFromController = EventHandlerResolver.resolveEventHandler("(${/someModelProperty})", oController)[0];
|
|
622
|
+
fnFromController(oDummyEvent);
|
|
623
|
+
}, (err) => {
|
|
624
|
+
return err.message.indexOf("starts with a bracket") > -1;
|
|
625
|
+
}, "Error should be thrown when starting with a bracket");
|
|
626
|
+
|
|
627
|
+
// wrong binding path
|
|
628
|
+
/* TODO: help the user detect such issues without making too much noise when an empty value is perfectly fine
|
|
629
|
+
spy = sinon.spy(Log, "warning");
|
|
630
|
+
fnFromController = EventHandlerResolver.resolveEventHandler(".fnControllerMethod(${/thisdoesnotExist})", oController)[0];
|
|
631
|
+
fnFromController(oDummyEvent);
|
|
632
|
+
assert.equal(spy.callCount, 1, "Warning should be logged for empty values (which may indicate wrong bindings)");
|
|
633
|
+
assert.ok(spy.args[0][0].indexOf("EventHandlerResolver: no value was returned") > -1, "Warning should be logged for empty values (which may indicate wrong bindings)");
|
|
634
|
+
*/
|
|
635
|
+
|
|
636
|
+
// too many closing braces
|
|
637
|
+
assert.throws(() => {
|
|
638
|
+
fnFromController = EventHandlerResolver.resolveEventHandler(".fnControllerMethod(${/someModelProperty}})", oController)[0];
|
|
639
|
+
fnFromController(oDummyEvent);
|
|
640
|
+
}, (err) => {
|
|
641
|
+
return err.message.indexOf("but instead saw }") > -1;
|
|
642
|
+
}, "Error should be thrown for too many closing braces");
|
|
643
|
+
|
|
644
|
+
// non-closed single quotes
|
|
645
|
+
assert.throws(() => {
|
|
646
|
+
fnFromController = EventHandlerResolver.resolveEventHandler(".fnControllerMethod('x)", oController)[0];
|
|
647
|
+
fnFromController(oDummyEvent);
|
|
648
|
+
}, (err) => {
|
|
649
|
+
return err.message.indexOf("Bad") > -1;
|
|
650
|
+
}, "Error should be thrown for non-closed single quotes");
|
|
651
|
+
|
|
652
|
+
// non-closed double quotes
|
|
653
|
+
assert.throws(() => {
|
|
654
|
+
fnFromController = EventHandlerResolver.resolveEventHandler(".fnControllerMethod(\"x)", oController)[0];
|
|
655
|
+
fnFromController(oDummyEvent);
|
|
656
|
+
}, (err) => {
|
|
657
|
+
return err.message.indexOf("Bad") > -1;
|
|
658
|
+
}, "Error should be thrown for non-closed double quotes");
|
|
659
|
+
future.active = undefined;
|
|
522
660
|
});
|
|
523
661
|
|
|
524
662
|
QUnit.module("sap.ui.core.mvc.EventHandlerResolver - parse()");
|
|
@@ -30,7 +30,7 @@ sap.ui.define([
|
|
|
30
30
|
oView.destroy();
|
|
31
31
|
});
|
|
32
32
|
|
|
33
|
-
|
|
33
|
+
/**
|
|
34
34
|
* @deprecated As of 1.120
|
|
35
35
|
*/
|
|
36
36
|
QUnit.module("sap.ui.core.mvc.View#runPreprocessor(sync)", {
|
|
@@ -828,7 +828,7 @@ sap.ui.define([
|
|
|
828
828
|
}
|
|
829
829
|
});
|
|
830
830
|
|
|
831
|
-
|
|
831
|
+
/**
|
|
832
832
|
* @deprecated As of version 1.110
|
|
833
833
|
*/
|
|
834
834
|
QUnit.test("Sync view created via constructor", function(assert) {
|
|
@@ -5,20 +5,22 @@ sap.ui.define([
|
|
|
5
5
|
"sap/ui/core/mvc/View",
|
|
6
6
|
"sap/ui/core/mvc/XMLView",
|
|
7
7
|
"sap/ui/util/XMLHelper",
|
|
8
|
+
"sap/base/future",
|
|
8
9
|
"sap/base/Log",
|
|
9
10
|
"sap/ui/base/DesignTime",
|
|
10
11
|
"sap/ui/thirdparty/jquery"
|
|
11
|
-
], function (coreLibrary, XMLTemplateProcessor, View, XMLView, XMLHelper, Log, DesignTime, jQuery) {
|
|
12
|
+
], function (coreLibrary, XMLTemplateProcessor, View, XMLView, XMLHelper, future, Log, DesignTime, jQuery) {
|
|
12
13
|
"use strict";
|
|
13
14
|
|
|
14
15
|
// shortcut for sap.ui.core.mvc.ViewType
|
|
15
16
|
var ViewType = coreLibrary.mvc.ViewType;
|
|
16
17
|
|
|
17
18
|
var sRootView =
|
|
18
|
-
'<mvc:View height="100%" xmlns:mvc="sap.ui.core.mvc" xmlns="sap.m"
|
|
19
|
+
'<mvc:View height="100%" xmlns:mvc="sap.ui.core.mvc" xmlns="sap.m">' +
|
|
19
20
|
'</mvc:View>';
|
|
20
21
|
|
|
21
|
-
|
|
22
|
+
|
|
23
|
+
const sView =
|
|
22
24
|
'<mvc:View height="100%" xmlns:mvc="sap.ui.core.mvc" xmlns:core="sap.ui.core" xmlns="sap.m" id="view" ' +
|
|
23
25
|
'xmlns:dt="sap.ui.dt" displayBlock="true" unknownProperty="true">' +
|
|
24
26
|
'<Panel id="panel">' +
|
|
@@ -35,7 +37,42 @@ sap.ui.define([
|
|
|
35
37
|
'</content>' +
|
|
36
38
|
'</Panel>' +
|
|
37
39
|
'</mvc:View>';
|
|
40
|
+
const sView2 =
|
|
41
|
+
'<mvc:View height="100%" xmlns:mvc="sap.ui.core.mvc" xmlns:core="sap.ui.core" xmlns="sap.m" ' +
|
|
42
|
+
'xmlns:dt="sap.ui.dt" displayBlock="true" >' +
|
|
43
|
+
'<Panel id="panel">' +
|
|
44
|
+
'<content>' +
|
|
45
|
+
'<Button text="Button" id="button"></Button>' +
|
|
46
|
+
'<Button text="Button With Designtime Data" id="buttonWithDTData" dt:test="testvalue"></Button>' +
|
|
47
|
+
'<Button text="Button using core:require" id="buttonRequire" core:require="{Link:\'sap/m/Link\'}"></Button>' +
|
|
48
|
+
'<Button text="Button using Designtime Data and core:require" id="buttonWithDTDataAndRequire" dt:test="testvalue2" core:require="{Link:\'sap/m/Link\'}"></Button>' +
|
|
49
|
+
'<Button text="StashedButton" id="stashedButton" stashed="true"></Button>' +
|
|
50
|
+
'<Button text="Wrong Type value" id="brokenButton"></Button>' +
|
|
51
|
+
'<core:ExtensionPoint name="extension">' +
|
|
52
|
+
'<Button text="ExtensionButton" id="extensionButton"></Button>' +
|
|
53
|
+
'</core:ExtensionPoint>' +
|
|
54
|
+
'</content>' +
|
|
55
|
+
'</Panel>' +
|
|
56
|
+
'</mvc:View>';
|
|
38
57
|
|
|
58
|
+
const sView3 =
|
|
59
|
+
'<mvc:View height="100%" xmlns:mvc="sap.ui.core.mvc" xmlns:core="sap.ui.core" xmlns="sap.m" ' +
|
|
60
|
+
'xmlns:dt="sap.ui.dt" displayBlock="true" >' +
|
|
61
|
+
'<Panel id="panel">' +
|
|
62
|
+
'<content>' +
|
|
63
|
+
'<Button text="Button" id="button"></Button>' +
|
|
64
|
+
'<Button text="Button With Designtime Data" id="buttonWithDTData" dt:test="testvalue"></Button>' +
|
|
65
|
+
'<Button text="Button using core:require" id="buttonRequire" core:require="{Link:\'sap/m/Link\'}"></Button>' +
|
|
66
|
+
'<Button text="Button using Designtime Data and core:require" id="buttonWithDTDataAndRequire" dt:test="testvalue2" core:require="{Link:\'sap/m/Link\'}"></Button>' +
|
|
67
|
+
'<Button text="StashedButton" id="stashedButton" stashed="true"></Button>' +
|
|
68
|
+
'<Button text="Wrong Type value" id="brokenButton" type="somethingInvalid"></Button>' +
|
|
69
|
+
'<Button text="Wrong Type value" id="brokenButton"></Button>' +
|
|
70
|
+
'<core:ExtensionPoint name="extension">' +
|
|
71
|
+
'<Button text="ExtensionButton" id="extensionButton"></Button>' +
|
|
72
|
+
'</core:ExtensionPoint>' +
|
|
73
|
+
'</content>' +
|
|
74
|
+
'</Panel>' +
|
|
75
|
+
'</mvc:View>';
|
|
39
76
|
|
|
40
77
|
/**
|
|
41
78
|
* @deprecated As of version 1.120
|
|
@@ -78,8 +115,12 @@ sap.ui.define([
|
|
|
78
115
|
}.bind(this));
|
|
79
116
|
});
|
|
80
117
|
|
|
81
|
-
|
|
118
|
+
/**
|
|
119
|
+
* @deprecated
|
|
120
|
+
*/
|
|
121
|
+
QUnit.module("parseScalarType (future=false)", {
|
|
82
122
|
beforeEach: function() {
|
|
123
|
+
future.active = false;
|
|
83
124
|
this.oLogSpy = sinon.spy(Log, "error");
|
|
84
125
|
this.pViewLoaded = XMLView.create({
|
|
85
126
|
definition: sView
|
|
@@ -90,6 +131,7 @@ sap.ui.define([
|
|
|
90
131
|
return this.pViewLoaded.then(function (oView) {
|
|
91
132
|
this.oLogSpy.restore();
|
|
92
133
|
oView.destroy();
|
|
134
|
+
future.active = undefined;
|
|
93
135
|
}.bind(this));
|
|
94
136
|
}
|
|
95
137
|
});
|
|
@@ -99,6 +141,19 @@ sap.ui.define([
|
|
|
99
141
|
assert.ok(this.oLogSpy.calledWith(sinon.match(/Value 'somethingInvalid' is not valid for type 'sap.m.ButtonType'./)), "Log.error spy was called");
|
|
100
142
|
});
|
|
101
143
|
|
|
144
|
+
QUnit.module("parseScalarType (future=true)", {});
|
|
145
|
+
|
|
146
|
+
QUnit.test("Error Logging of invalid type values", async function (assert) {
|
|
147
|
+
future.active = true;
|
|
148
|
+
const oView = XMLView.create({
|
|
149
|
+
definition: sView3
|
|
150
|
+
});
|
|
151
|
+
assert.rejects(oView);
|
|
152
|
+
await oView.catch((err) => {
|
|
153
|
+
assert.ok(err.message.includes("Value 'somethingInvalid' is not valid for type 'sap.m.ButtonType'.", "View creation rejected with type error"));
|
|
154
|
+
});
|
|
155
|
+
});
|
|
156
|
+
|
|
102
157
|
/**
|
|
103
158
|
* @deprecated As of version 1.110
|
|
104
159
|
*/
|
|
@@ -532,7 +587,7 @@ sap.ui.define([
|
|
|
532
587
|
QUnit.module("Custom Settings",{
|
|
533
588
|
beforeEach: function() {
|
|
534
589
|
this.pView = XMLView.create({
|
|
535
|
-
definition:
|
|
590
|
+
definition: sView2,
|
|
536
591
|
id: "view"
|
|
537
592
|
});
|
|
538
593
|
this.xml = XMLHelper.parse(sView);
|