@openui5/sap.ui.core 1.120.1 → 1.120.2
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/.reuse/dep5 +1 -1
- package/THIRDPARTY.txt +1 -1
- 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/date/TimezoneUtils.js +1 -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/BindingParser.js +4 -4
- package/src/sap/ui/base/DataType.js +5 -5
- 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 +9 -9
- package/src/sap/ui/base/ManagedObjectMetadata.js +1 -1
- package/src/sap/ui/base/ManagedObjectRegistry.js +186 -169
- package/src/sap/ui/base/Metadata.js +1 -1
- 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 +30 -144
- package/src/sap/ui/core/ComponentContainer.js +3 -3
- package/src/sap/ui/core/ComponentMetadata.js +1 -1
- package/src/sap/ui/core/ComponentRegistry.js +153 -0
- package/src/sap/ui/core/ComponentSupport.js +3 -3
- package/src/sap/ui/core/Configuration.js +1 -1
- package/src/sap/ui/core/Control.js +6 -4
- package/src/sap/ui/core/Core.js +6 -4
- 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 +25 -141
- package/src/sap/ui/core/ElementMetadata.js +1 -1
- package/src/sap/ui/core/ElementRegistry.js +159 -0
- 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 +5 -5
- package/src/sap/ui/core/FocusHandler.js +3 -2
- package/src/sap/ui/core/Fragment.js +5 -5
- 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 +1 -1
- package/src/sap/ui/core/LayoutData.js +1 -1
- package/src/sap/ui/core/Lib.js +7 -7
- 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 +55 -11
- package/src/sap/ui/core/Manifest.js +4 -5
- package/src/sap/ui/core/Message.js +2 -1
- package/src/sap/ui/core/Messaging.js +2 -2
- 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/Shortcut.js +15 -9
- package/src/sap/ui/core/StaticArea.js +4 -1
- package/src/sap/ui/core/Theming.js +3 -3
- 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 +51 -13
- package/src/sap/ui/core/UIAreaRegistry.js +150 -0
- package/src/sap/ui/core/UIComponent.js +3 -3
- package/src/sap/ui/core/UIComponentMetadata.js +1 -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 +95 -76
- package/src/sap/ui/core/cldr/Unicode-Data-Files-LICENSE.txt +1 -1
- package/src/sap/ui/core/cldr/cy.json +12 -3
- package/src/sap/ui/core/cldr/en_AU.json +48 -12
- package/src/sap/ui/core/cldr/en_GB.json +24 -6
- package/src/sap/ui/core/cldr/en_HK.json +24 -6
- package/src/sap/ui/core/cldr/en_IE.json +24 -6
- package/src/sap/ui/core/cldr/en_IN.json +24 -6
- package/src/sap/ui/core/cldr/en_NZ.json +24 -6
- package/src/sap/ui/core/cldr/en_PG.json +24 -6
- package/src/sap/ui/core/cldr/en_SG.json +24 -6
- package/src/sap/ui/core/cldr/en_ZA.json +24 -6
- package/src/sap/ui/core/cldr/es.json +288 -72
- package/src/sap/ui/core/cldr/es_AR.json +288 -72
- package/src/sap/ui/core/cldr/es_BO.json +288 -72
- package/src/sap/ui/core/cldr/es_CL.json +144 -36
- package/src/sap/ui/core/cldr/es_CO.json +144 -36
- package/src/sap/ui/core/cldr/es_MX.json +288 -72
- package/src/sap/ui/core/cldr/fa.json +48 -12
- package/src/sap/ui/core/cldr/id.json +56 -14
- package/src/sap/ui/core/cldr/kk.json +184 -46
- package/src/sap/ui/core/cldr/ms.json +56 -14
- package/src/sap/ui/core/cldr/nb.json +36 -9
- package/src/sap/ui/core/cldr/nl.json +264 -66
- package/src/sap/ui/core/cldr/nl_BE.json +264 -66
- package/src/sap/ui/core/cldr/pt.json +288 -72
- package/src/sap/ui/core/cldr/pt_PT.json +288 -72
- package/src/sap/ui/core/cldr/sr.json +96 -24
- package/src/sap/ui/core/cldr/sr_Latn.json +72 -18
- 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/DateFormat.js +25 -13
- package/src/sap/ui/core/format/TimezoneUtil.js +1 -1
- 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 +9 -3
- package/src/sap/ui/core/message/ControlMessageProcessor.js +1 -1
- package/src/sap/ui/core/message/Message.js +7 -7
- 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/message/MessageType.js +1 -1
- package/src/sap/ui/core/mvc/Controller.js +15 -13
- package/src/sap/ui/core/mvc/ControllerExtension.js +7 -5
- package/src/sap/ui/core/mvc/ControllerExtensionProvider.js +1 -1
- package/src/sap/ui/core/mvc/ControllerMetadata.js +1 -1
- package/src/sap/ui/core/mvc/EventHandlerResolver.js +4 -4
- 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 +20 -9
- package/src/sap/ui/core/mvc/XMLView.js +8 -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/History.js +1 -1
- package/src/sap/ui/core/routing/Route.js +6 -6
- package/src/sap/ui/core/routing/Router.js +6 -6
- package/src/sap/ui/core/routing/Targets.js +3 -3
- package/src/sap/ui/core/routing/async/Target.js +2 -2
- package/src/sap/ui/core/routing/async/Targets.js +1 -1
- package/src/sap/ui/core/rules/Misc.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 +6 -4
- 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/theming/Parameters.js +7 -7
- package/src/sap/ui/core/theming/ThemeHelper.js +2 -2
- package/src/sap/ui/core/theming/ThemeManager.js +2 -2
- 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 +34 -3
- 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/Binding.js +2 -2
- package/src/sap/ui/model/ClientModel.js +1 -1
- package/src/sap/ui/model/CompositeDataState.js +5 -5
- package/src/sap/ui/model/CompositeType.js +1 -1
- package/src/sap/ui/model/DataState.js +10 -10
- package/src/sap/ui/model/FilterProcessor.js +8 -5
- package/src/sap/ui/model/ManagedObjectBindingSupport.js +2 -2
- package/src/sap/ui/model/MetaModel.js +1 -1
- package/src/sap/ui/model/Model.js +1 -1
- 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/analytics/odata4analytics.js +6 -6
- 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 -3
- 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 +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 +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 +1 -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 +4 -4
- package/src/sap/ui/model/odata/v2/ODataTreeBinding.js +1 -1
- package/src/sap/ui/model/odata/v4/Context.js +32 -27
- package/src/sap/ui/model/odata/v4/ODataContextBinding.js +1 -1
- package/src/sap/ui/model/odata/v4/ODataListBinding.js +198 -155
- package/src/sap/ui/model/odata/v4/ODataMetaModel.js +1 -1
- package/src/sap/ui/model/odata/v4/ODataModel.js +9 -4
- package/src/sap/ui/model/odata/v4/ODataParentBinding.js +9 -6
- package/src/sap/ui/model/odata/v4/ODataPropertyBinding.js +1 -1
- package/src/sap/ui/model/odata/v4/lib/_AggregationCache.js +220 -85
- package/src/sap/ui/model/odata/v4/lib/_AggregationHelper.js +33 -20
- package/src/sap/ui/model/odata/v4/lib/_Cache.js +70 -18
- package/src/sap/ui/model/odata/v4/lib/_Requestor.js +9 -5
- 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 +5 -5
- package/src/sap/ui/test/BranchTracking.js +4 -0
- package/src/sap/ui/test/actions/EnterText.js +1 -5
- package/src/sap/ui/test/generic/GenericTestCollection.js +1 -0
- package/src/sap/ui/test/generic/TestBase.js +4 -4
- package/src/sap/ui/test/generic/Utils.js +3 -2
- package/src/sap/ui/util/Storage.js +1 -1
- package/src/ui5loader-autoconfig.js +23 -15
- package/src/ui5loader.js +9 -4
- package/test/sap/ui/core/demokit/sample/MessageManager/ODataBackendMessagesComp/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/sample/ViewTemplate/types/Template.controller.js +3 -3
- package/test/sap/ui/core/demokit/sample/common/Controller.js +0 -1
- 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/odata/v4/Ancestry/Main.controller.js +1 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/HierarchyBindAction/Main.controller.js +14 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/HierarchyBindAction/Main.view.xml +6 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/MultipleInlineCreationRowsGrid/MIT.MultipleInlineCreationRowsGrid.html +5 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/MultipleInlineCreationRowsGrid/Main.view.xml +9 -2
- package/test/sap/ui/core/demokit/sample/odata/v4/MultipleInlineCreationRowsGrid/Opa.qunit.js +23 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/MultipleInlineCreationRowsGrid/pages/Main.js +58 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/RecursiveHierarchy/RecursiveHierarchy.controller.js +75 -30
- package/test/sap/ui/core/demokit/sample/odata/v4/RecursiveHierarchy/RecursiveHierarchy.view.xml +19 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/RecursiveHierarchy/SandboxModel.js +84 -28
- package/test/sap/ui/core/demokit/sample/odata/v4/RecursiveHierarchy/data/metadata.xml +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/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/mockserver/02/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/mockserver/03/ui5.yaml +1 -1
- package/test/sap/ui/core/demokit/tutorial/mockserver/04/ui5.yaml +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/qunit/BindingParser.qunit.js +4 -4
- package/test/sap/ui/core/qunit/CommandExecution.qunit.js +3 -1
- package/test/sap/ui/core/qunit/Core.qunit.js +1 -1
- package/test/sap/ui/core/qunit/DataBinding.qunit.js +6 -6
- package/test/sap/ui/core/qunit/Declarative.qunit.js +6 -6
- package/test/sap/ui/core/qunit/Element_base.qunit.js +8 -7
- package/test/sap/ui/core/qunit/Element_base_legacyAPIs.qunit.js +48 -0
- package/test/sap/ui/core/qunit/Element_closestTo.qunit.js +1 -1
- package/test/sap/ui/core/qunit/Fragment.qunit.js +63 -13
- package/test/sap/ui/core/qunit/HTML.qunit.js +5 -5
- package/test/sap/ui/core/qunit/Lib.qunit.js +19 -2
- package/test/sap/ui/core/qunit/PlaceAt.qunit.js +6 -6
- package/test/sap/ui/core/qunit/Shortcut.qunit.js +9 -1
- package/test/sap/ui/core/qunit/UIArea.qunit.js +7 -6
- package/test/sap/ui/core/qunit/analytics/odata4analytics.qunit.js +41 -0
- package/test/sap/ui/core/qunit/base/Config_cascade.qunit.html +7 -5
- package/test/sap/ui/core/qunit/base/Config_cascade.qunit.js +46 -7
- package/test/sap/ui/core/qunit/base/config/GlobalConfigForCascade.js +24 -21
- package/test/sap/ui/core/qunit/component/Component.qunit.js +9 -8
- package/test/sap/ui/core/qunit/component/ComponentContainer.qunit.js +1 -1
- package/test/sap/ui/core/qunit/component/Models.qunit.js +29 -30
- package/test/sap/ui/core/qunit/component/UIComponent.qunit.js +3 -3
- package/test/sap/ui/core/qunit/generic/ControlMemoryLeaks.qunit.js +4 -3
- package/test/sap/ui/core/qunit/generic/legacy/ControlMemoryLeaks.qunit.js +6 -7
- package/test/sap/ui/core/qunit/generic/legacy/DuplicateIdCheck.qunit.js +3 -2
- package/test/sap/ui/core/qunit/generic/legacy/testsuite.generic.qunit.js +3 -0
- package/test/sap/ui/core/qunit/i18n/LocaleData.qunit.js +65 -0
- package/test/sap/ui/core/qunit/jquery.sap.ui.qunit.js +12 -12
- package/test/sap/ui/core/qunit/loader/syncMode_unavoidablySync.qunit.js +54 -1
- package/test/sap/ui/core/qunit/messages/messagesGeneral.qunit.js +3 -1
- package/test/sap/ui/core/qunit/mockserver/testdata/shopping/Products.json +1 -1
- package/test/sap/ui/core/qunit/model/FilterProcessor.qunit.js +22 -8
- package/test/sap/ui/core/qunit/mvc/AnyView.qunit.js +3 -0
- package/test/sap/ui/core/qunit/mvc/Controller.qunit.js +3 -2
- package/test/sap/ui/core/qunit/mvc/EventHandlerResolver.qunit.js +2 -2
- package/test/sap/ui/core/qunit/mvc/View.qunit.js +38 -35
- package/test/sap/ui/core/qunit/mvc/XMLTemplateProcessor.qunit.js +1 -1
- package/test/sap/ui/core/qunit/mvc/XMLTemplateProcessorAsync.qunit.js +1 -1
- package/test/sap/ui/core/qunit/mvc/XMLTemplateProcessorRequireXML.qunit.js +5 -5
- package/test/sap/ui/core/qunit/mvc/XMLView.qunit.js +1 -1
- package/test/sap/ui/core/qunit/mvc/extensions/ControllerMetadata.qunit.js +6 -2
- package/test/sap/ui/core/qunit/mvc/extensions/Controllerextensions.qunit.js +12 -0
- package/test/sap/ui/core/qunit/mvc/extensions/Controllerextensions_legacy.qunit.js +12 -0
- package/test/sap/ui/core/qunit/mvc/extensions/testdata/AnotherMain.controller.js +3 -1
- package/test/sap/ui/core/qunit/mvc/testdata/XMLViewEmbeddingTypedViews.view.xml +1 -1
- package/test/sap/ui/core/qunit/mvc/viewprocessing/ViewProcessing.qunit.js +26 -7
- package/test/sap/ui/core/qunit/mvc_legacyAPIs/XMLTemplateProcessorRequireXML_legacyAPIs.qunit.js +5 -5
- package/test/sap/ui/core/qunit/mvc_legacyAPIs/XMLView_legacyAPIs.qunit.js +2 -2
- package/test/sap/ui/core/qunit/odata/ODataMessageParserNoFakeService.qunit.js +36 -34
- package/test/sap/ui/core/qunit/odata/v2/ODataModel.integration.qunit.js +69 -0
- package/test/sap/ui/core/qunit/odata/v4/Context.qunit.js +43 -22
- package/test/sap/ui/core/qunit/odata/v4/ODataListBinding.qunit.js +318 -217
- package/test/sap/ui/core/qunit/odata/v4/ODataModel.integration.qunit.js +2111 -124
- package/test/sap/ui/core/qunit/odata/v4/ODataParentBinding.qunit.js +43 -35
- package/test/sap/ui/core/qunit/odata/v4/data/metadata_special_cases.xml +20 -2
- package/test/sap/ui/core/qunit/odata/v4/lib/_AggregationCache.qunit.js +453 -125
- package/test/sap/ui/core/qunit/odata/v4/lib/_AggregationHelper.qunit.js +70 -33
- package/test/sap/ui/core/qunit/odata/v4/lib/_Cache.qunit.js +256 -8
- package/test/sap/ui/core/qunit/odata/v4/lib/_Requestor.qunit.js +10 -2
- package/test/sap/ui/core/qunit/opa/actions/EnterText.qunit.js +38 -14
- package/test/sap/ui/core/qunit/routing/async/Router.qunit.js +102 -52
- package/test/sap/ui/core/qunit/routing/async/Target.qunit.js +1 -1
- package/test/sap/ui/core/qunit/routing/async/Targets.qunit.js +4 -5
- package/test/sap/ui/core/qunit/routing/async/TitleHistory.qunit.js +1 -1
- package/test/sap/ui/core/qunit/routing/fixture/router/component/parentRoute/Child/Component.js +1 -0
- package/test/sap/ui/core/qunit/routing/fixture/router/component/parentRoute/Child/manifest.json +1 -5
- package/test/sap/ui/core/qunit/routing/fixture/router/component/parentRoute/Parent/Component.js +1 -0
- package/test/sap/ui/core/qunit/routing/fixture/router/component/parentRoute/Parent/manifest.json +1 -5
- package/test/sap/ui/core/qunit/routing/fixture/router/component/parentRoute/ParentExtended/Component.js +15 -0
- package/test/sap/ui/core/qunit/routing/fixture/router/component/parentRoute/ParentExtended/manifest.json +8 -0
- package/test/sap/ui/core/qunit/routing/sync/Router.qunit.js +2 -2
- package/test/sap/ui/core/qunit/routing/sync/Targets.qunit.js +2 -3
- package/test/sap/ui/core/qunit/testdata/fragments/XMLTestFragmentWithXMLView.fragment.xml +5 -0
- package/test/sap/ui/core/qunit/testsuites/testsuite.base.configuration.qunit.js +1 -1
- package/test/sap/ui/core/qunit/testsuites/testsuite.control.framework.qunit.js +4 -0
- package/test/sap/ui/core/qunit/types/DateFormat.qunit.js +190 -0
- package/test/sap/ui/core/qunit/types/DateInterval.qunit.js +2 -2
- package/test/sap/ui/core/qunit/ui5classes/ManagedObjectRegistry.qunit.js +161 -0
- package/test/sap/ui/core/qunit/ui5classes/ManagedObjectRegistry_legacyAPIs.qunit.js +150 -0
- package/test/sap/ui/core/qunit/ui5classes/testsuite.ui5classes.qunit.js +84 -0
- package/test/sap/ui/core/qunit/util/ViewSerializer.qunit.js +4 -3
- package/test/sap/ui/core/relnotes/changes-1.120.json +225 -0
|
@@ -432,7 +432,7 @@ sap.ui.define([
|
|
|
432
432
|
});
|
|
433
433
|
|
|
434
434
|
|
|
435
|
-
assert.ok(oLogSpy.
|
|
435
|
+
assert.ok(oLogSpy.calledWith(sinon.match(/The 'viewName' option shouldn't be used in Route. please use 'view' instead/)), "The error log is done and the log message is correct");
|
|
436
436
|
});
|
|
437
437
|
|
|
438
438
|
QUnit.test("subroute handling", function(assert) {
|
|
@@ -2476,70 +2476,120 @@ sap.ui.define([
|
|
|
2476
2476
|
QUnit.module("nested components", {
|
|
2477
2477
|
beforeEach: function() {
|
|
2478
2478
|
hasher.setHash("");
|
|
2479
|
-
return Component.create({
|
|
2480
|
-
name: "qunit.router.component.parentRoute.Parent",
|
|
2481
|
-
id: "parent"
|
|
2482
|
-
}).then(function(oComponent) {
|
|
2483
|
-
var that = this;
|
|
2484
|
-
this.oParentComponent = oComponent;
|
|
2485
|
-
this.oParentComponent.getRouter().initialize();
|
|
2486
2479
|
|
|
2487
|
-
|
|
2488
|
-
|
|
2489
|
-
|
|
2490
|
-
|
|
2491
|
-
|
|
2492
|
-
|
|
2493
|
-
|
|
2494
|
-
|
|
2480
|
+
this.createComponent = function(sComponentName) {
|
|
2481
|
+
return Component.create({
|
|
2482
|
+
name: sComponentName,
|
|
2483
|
+
id: "parent"
|
|
2484
|
+
}).then(function(oComponent) {
|
|
2485
|
+
var that = this;
|
|
2486
|
+
this.oParentComponent = oComponent;
|
|
2487
|
+
this.oParentComponent.getRouter().initialize();
|
|
2488
|
+
|
|
2489
|
+
this.oRootView = oComponent.getRootControl();
|
|
2490
|
+
var oComponentContainer = that.oRootView.byId("container");
|
|
2491
|
+
|
|
2492
|
+
return new Promise(function(resolve, reject) {
|
|
2493
|
+
that.oRootView.placeAt("qunit-fixture");
|
|
2494
|
+
oComponentContainer.attachComponentCreated(function(oEvent) {
|
|
2495
|
+
that.oChildComponent = oEvent.getParameter("component");
|
|
2496
|
+
resolve();
|
|
2497
|
+
});
|
|
2495
2498
|
});
|
|
2496
|
-
});
|
|
2497
|
-
}
|
|
2499
|
+
}.bind(this));
|
|
2500
|
+
};
|
|
2498
2501
|
},
|
|
2499
2502
|
afterEach: function () {
|
|
2503
|
+
this.oRootView.destroy();
|
|
2500
2504
|
this.oParentComponent.destroy();
|
|
2501
2505
|
this.oChildComponent.destroy();
|
|
2502
2506
|
}
|
|
2503
2507
|
});
|
|
2504
2508
|
|
|
2505
2509
|
QUnit.test("fire events", function(assert) {
|
|
2506
|
-
|
|
2507
|
-
|
|
2508
|
-
|
|
2509
|
-
|
|
2510
|
-
|
|
2511
|
-
|
|
2512
|
-
|
|
2513
|
-
|
|
2514
|
-
|
|
2515
|
-
|
|
2516
|
-
|
|
2517
|
-
|
|
2518
|
-
|
|
2519
|
-
|
|
2520
|
-
|
|
2521
|
-
|
|
2510
|
+
return this.createComponent("qunit.router.component.parentRoute.Parent")
|
|
2511
|
+
.then(function() {
|
|
2512
|
+
// Arrange
|
|
2513
|
+
var oParentRouteMatchedEvent,
|
|
2514
|
+
oParentRouteMatchedEventSpy = this.spy(function(oEvent) {
|
|
2515
|
+
// save the oEvent because EventProvider will overwrite it otherwise
|
|
2516
|
+
oParentRouteMatchedEvent = deepExtend({}, oEvent);
|
|
2517
|
+
}),
|
|
2518
|
+
oParentRoutePatternMatchedEventSpy = this.spy(),
|
|
2519
|
+
oChildRouteMatchedEvent,
|
|
2520
|
+
oChildRouteMatchedEventSpy = this.spy(function(oEvent) {
|
|
2521
|
+
oChildRouteMatchedEvent = deepExtend({}, oEvent);
|
|
2522
|
+
}),
|
|
2523
|
+
oChildRoutePatternMatchedEventSpy = this.spy(),
|
|
2524
|
+
oParentRoute = this.oParentComponent.getRouter().getRoute("category"),
|
|
2525
|
+
oChildRoute = this.oChildComponent.getRouter().getRoute("product"),
|
|
2526
|
+
oParentRouteMatchedSpy = this.spy(oParentRoute, "_routeMatched"),
|
|
2527
|
+
oChildRouteMatchedSpy = this.spy(oChildRoute, "_routeMatched");
|
|
2528
|
+
|
|
2529
|
+
oParentRoute.attachMatched(oParentRouteMatchedEventSpy);
|
|
2530
|
+
oParentRoute.attachPatternMatched(oParentRoutePatternMatchedEventSpy);
|
|
2531
|
+
oChildRoute.attachMatched(oChildRouteMatchedEventSpy);
|
|
2532
|
+
oChildRoute.attachPatternMatched(oChildRoutePatternMatchedEventSpy);
|
|
2533
|
+
|
|
2534
|
+
// Act
|
|
2535
|
+
hasher.setHash("category/0/product/0");
|
|
2522
2536
|
|
|
2523
|
-
|
|
2524
|
-
|
|
2525
|
-
|
|
2526
|
-
|
|
2537
|
+
// Assert
|
|
2538
|
+
assert.strictEqual(oParentRouteMatchedSpy.callCount, 1, "Parent should be matched");
|
|
2539
|
+
assert.strictEqual(oChildRouteMatchedSpy.callCount, 1, "Child is matched");
|
|
2540
|
+
|
|
2541
|
+
return Promise.all([oParentRouteMatchedSpy.returnValues[0], oChildRouteMatchedSpy.returnValues[0]]).then(function() {
|
|
2542
|
+
assert.strictEqual(oParentRouteMatchedEventSpy.callCount, 1, "routeMatched fired for parent route");
|
|
2543
|
+
assert.strictEqual(oParentRoutePatternMatchedEventSpy.callCount, 0, "routePatternMatched not fired for parent route");
|
|
2544
|
+
assert.strictEqual(oParentRouteMatchedEvent.getParameter("nestedRoute"), oChildRoute, "childRoute is passed to event listeners");
|
|
2545
|
+
assert.strictEqual(oChildRouteMatchedEventSpy.callCount, 1, "routeMatched fired for child route");
|
|
2546
|
+
assert.strictEqual(oChildRoutePatternMatchedEventSpy.callCount, 1, "routePatternMatched fired for child route");
|
|
2547
|
+
assert.strictEqual(oChildRouteMatchedEvent.getParameter("nestedRoute"), undefined, "no route is passed to event listeners");
|
|
2548
|
+
});
|
|
2549
|
+
}.bind(this));
|
|
2550
|
+
});
|
|
2527
2551
|
|
|
2528
|
-
|
|
2529
|
-
|
|
2552
|
+
QUnit.test("fire events with extended parent component", function(assert) {
|
|
2553
|
+
return this.createComponent("qunit.router.component.parentRoute.ParentExtended")
|
|
2554
|
+
.then(function() {
|
|
2555
|
+
// Arrange
|
|
2556
|
+
var oParentRouteMatchedEvent,
|
|
2557
|
+
oParentRouteMatchedEventSpy = this.spy(function(oEvent) {
|
|
2558
|
+
// save the oEvent because EventProvider will overwrite it otherwise
|
|
2559
|
+
oParentRouteMatchedEvent = deepExtend({}, oEvent);
|
|
2560
|
+
}),
|
|
2561
|
+
oParentRoutePatternMatchedEventSpy = this.spy(),
|
|
2562
|
+
oChildRouteMatchedEvent,
|
|
2563
|
+
oChildRouteMatchedEventSpy = this.spy(function(oEvent) {
|
|
2564
|
+
oChildRouteMatchedEvent = deepExtend({}, oEvent);
|
|
2565
|
+
}),
|
|
2566
|
+
oChildRoutePatternMatchedEventSpy = this.spy(),
|
|
2567
|
+
oParentRoute = this.oParentComponent.getRouter().getRoute("category"),
|
|
2568
|
+
oChildRoute = this.oChildComponent.getRouter().getRoute("product"),
|
|
2569
|
+
oParentRouteMatchedSpy = this.spy(oParentRoute, "_routeMatched"),
|
|
2570
|
+
oChildRouteMatchedSpy = this.spy(oChildRoute, "_routeMatched");
|
|
2571
|
+
|
|
2572
|
+
oParentRoute.attachMatched(oParentRouteMatchedEventSpy);
|
|
2573
|
+
oParentRoute.attachPatternMatched(oParentRoutePatternMatchedEventSpy);
|
|
2574
|
+
oChildRoute.attachMatched(oChildRouteMatchedEventSpy);
|
|
2575
|
+
oChildRoute.attachPatternMatched(oChildRoutePatternMatchedEventSpy);
|
|
2576
|
+
|
|
2577
|
+
// Act
|
|
2578
|
+
hasher.setHash("category/0/product/0");
|
|
2530
2579
|
|
|
2531
|
-
|
|
2532
|
-
|
|
2533
|
-
|
|
2534
|
-
|
|
2535
|
-
|
|
2536
|
-
|
|
2537
|
-
|
|
2538
|
-
|
|
2539
|
-
|
|
2540
|
-
|
|
2541
|
-
|
|
2542
|
-
|
|
2580
|
+
// Assert
|
|
2581
|
+
assert.strictEqual(oParentRouteMatchedSpy.callCount, 1, "Parent should be matched");
|
|
2582
|
+
assert.strictEqual(oChildRouteMatchedSpy.callCount, 1, "Child is matched");
|
|
2583
|
+
|
|
2584
|
+
return Promise.all([oParentRouteMatchedSpy.returnValues[0], oChildRouteMatchedSpy.returnValues[0]]).then(function() {
|
|
2585
|
+
assert.strictEqual(oParentRouteMatchedEventSpy.callCount, 1, "routeMatched fired for parent route");
|
|
2586
|
+
assert.strictEqual(oParentRoutePatternMatchedEventSpy.callCount, 0, "routePatternMatched not fired for parent route");
|
|
2587
|
+
assert.strictEqual(oParentRouteMatchedEvent.getParameter("nestedRoute"), oChildRoute, "childRoute is passed to event listeners");
|
|
2588
|
+
assert.strictEqual(oChildRouteMatchedEventSpy.callCount, 1, "routeMatched fired for child route");
|
|
2589
|
+
assert.strictEqual(oChildRoutePatternMatchedEventSpy.callCount, 1, "routePatternMatched fired for child route");
|
|
2590
|
+
assert.strictEqual(oChildRouteMatchedEvent.getParameter("nestedRoute"), undefined, "no route is passed to event listeners");
|
|
2591
|
+
});
|
|
2592
|
+
}.bind(this));
|
|
2543
2593
|
});
|
|
2544
2594
|
|
|
2545
2595
|
function resetBrowserHash() {
|
|
@@ -302,7 +302,7 @@ sap.ui.define([
|
|
|
302
302
|
}, function(oError) {
|
|
303
303
|
// Assert
|
|
304
304
|
assert.ok(oError instanceof Error, "The promise is rejected with an error object");
|
|
305
|
-
assert.
|
|
305
|
+
assert.ok(oError.message.includes("The target myTarget has a control id or a parent but no 'controlAggregation' was set, so the target could not be displayed. - Target: myTarget"), "The error message is correct");
|
|
306
306
|
});
|
|
307
307
|
});
|
|
308
308
|
|
|
@@ -355,7 +355,7 @@ sap.ui.define([
|
|
|
355
355
|
// Act
|
|
356
356
|
return this.oTargets.display("foo").then(function(aViewInfos) {
|
|
357
357
|
assert.strictEqual(aViewInfos[0].name, "foo", "Matching target info is returned");
|
|
358
|
-
assert.
|
|
358
|
+
assert.ok(aViewInfos[0].error.includes("The target with the name \"foo\" does not exist!"), "Matching error message is returned");
|
|
359
359
|
// Assert
|
|
360
360
|
sinon.assert.calledWith(oErrorStub, sinon.match(/does not exist/), sinon.match(this.oTargets));
|
|
361
361
|
}.bind(this));
|
|
@@ -377,7 +377,7 @@ sap.ui.define([
|
|
|
377
377
|
assert.ok(Array.isArray(aViewInfos), "Did resolve with an array of the view infos");
|
|
378
378
|
assert.strictEqual(aViewInfos.length, 2, "Did resolve with two viewinfos");
|
|
379
379
|
assert.strictEqual(aViewInfos[1].name, "firstTarget", "Did resolve with first target");
|
|
380
|
-
assert.
|
|
380
|
+
assert.ok(aViewInfos[0].error.includes("The target with the name \"foo\" does not exist!"), "Did resolve with the error message of the erroneous target");
|
|
381
381
|
}.bind(this));
|
|
382
382
|
});
|
|
383
383
|
|
|
@@ -1030,9 +1030,8 @@ sap.ui.define([
|
|
|
1030
1030
|
return oDisplayed.then(function() {
|
|
1031
1031
|
// Assert
|
|
1032
1032
|
assert.ok(fnEventSpy.notCalled, "the event isn't fired");
|
|
1033
|
-
|
|
1034
|
-
oLogSpy,
|
|
1035
|
-
"The target with the name \"foo\" where the titleChanged event should be fired does not exist!",
|
|
1033
|
+
assert.ok(
|
|
1034
|
+
oLogSpy.calledWith(sinon.match(/The target with the name \"foo\" where the titleChanged event should be fired does not exist!/)),
|
|
1036
1035
|
this.oTargets
|
|
1037
1036
|
);
|
|
1038
1037
|
}.bind(this));
|
|
@@ -634,7 +634,7 @@ sap.ui.define([
|
|
|
634
634
|
|
|
635
635
|
return this.oRouteMatchedSpies["product"].returnValues[0].then(function() {
|
|
636
636
|
// Assert
|
|
637
|
-
|
|
637
|
+
assert.ok(this.spy.calledWith(sinon.match(/Routes with dynamic parts cannot be resolved as home route./)));
|
|
638
638
|
assert.strictEqual(oParameters.history.length, 0, "Home route shouldn't be added to history.");
|
|
639
639
|
assert.deepEqual(this.oRouter.getTitleHistory()[0], {
|
|
640
640
|
hash: "/product",
|
package/test/sap/ui/core/qunit/routing/fixture/router/component/parentRoute/Child/manifest.json
CHANGED
|
@@ -8,13 +8,9 @@
|
|
|
8
8
|
"sap.ui5": {
|
|
9
9
|
"rootView": {
|
|
10
10
|
"viewName": "qunit.router.component.parentRoute.Child.view.RootView",
|
|
11
|
-
"type": "XML"
|
|
12
|
-
"async": true
|
|
11
|
+
"type": "XML"
|
|
13
12
|
},
|
|
14
13
|
"routing": {
|
|
15
|
-
"config": {
|
|
16
|
-
"async": true
|
|
17
|
-
},
|
|
18
14
|
"routes": [
|
|
19
15
|
{
|
|
20
16
|
"pattern": "product/{id}",
|
package/test/sap/ui/core/qunit/routing/fixture/router/component/parentRoute/Parent/manifest.json
CHANGED
|
@@ -8,13 +8,9 @@
|
|
|
8
8
|
"sap.ui5": {
|
|
9
9
|
"rootView": {
|
|
10
10
|
"viewName": "qunit.router.component.parentRoute.Parent.view.RootView",
|
|
11
|
-
"type": "XML"
|
|
12
|
-
"async": true
|
|
11
|
+
"type": "XML"
|
|
13
12
|
},
|
|
14
13
|
"routing": {
|
|
15
|
-
"config": {
|
|
16
|
-
"async": true
|
|
17
|
-
},
|
|
18
14
|
"routes": [
|
|
19
15
|
{
|
|
20
16
|
"pattern": "category/{id}",
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
sap.ui.define([
|
|
2
|
+
'qunit/router/component/parentRoute/Parent/Component'
|
|
3
|
+
], function(ParentComponent) {
|
|
4
|
+
"use strict";
|
|
5
|
+
|
|
6
|
+
var Component = ParentComponent.extend("qunit.router.component.parentRoute.ParentExtended.Component", {
|
|
7
|
+
metadata : {
|
|
8
|
+
interfaces: ["sap.ui.core.IAsyncContentCreation"],
|
|
9
|
+
manifest: "json"
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
|
|
13
|
+
return Component;
|
|
14
|
+
|
|
15
|
+
});
|
|
@@ -330,7 +330,7 @@ sap.ui.define([
|
|
|
330
330
|
router.parse("view1");
|
|
331
331
|
|
|
332
332
|
assert.strictEqual(oRoute._oConfig.name, "name", "Route has correct name");
|
|
333
|
-
assert.ok(oLogSpy.
|
|
333
|
+
assert.ok(oLogSpy.calledWith(sinon.match(/The 'viewName' option shouldn't be used in Route. please use 'view' instead/)), "The error log is done and the log message is correct");
|
|
334
334
|
|
|
335
335
|
oViewCreateStub.restore();
|
|
336
336
|
oLogSpy.restore();
|
|
@@ -1976,7 +1976,7 @@ sap.ui.define([
|
|
|
1976
1976
|
|
|
1977
1977
|
this.oRouter.attachRouteMatched(function() {
|
|
1978
1978
|
// Assert
|
|
1979
|
-
|
|
1979
|
+
assert.ok(this.spy.calledWith(sinon.match(/Routes with dynamic parts cannot be resolved as home route./)));
|
|
1980
1980
|
assert.strictEqual(oParameters.history.length, 0, "Home route shouldn't be added to history.");
|
|
1981
1981
|
assert.deepEqual(this.oRouter.getTitleHistory()[0], {
|
|
1982
1982
|
hash: "/product",
|
|
@@ -757,9 +757,8 @@ sap.ui.define([
|
|
|
757
757
|
|
|
758
758
|
// Assert
|
|
759
759
|
assert.ok(fnEventSpy.notCalled, "the event isn't fired");
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
"The target with the name \"foo\" where the titleChanged event should be fired does not exist!",
|
|
760
|
+
assert.ok(oLogSpy.calledWith(
|
|
761
|
+
sinon.match(/The target with the name \"foo\" where the titleChanged event should be fired does not exist!/)),
|
|
763
762
|
this.oTargets
|
|
764
763
|
);
|
|
765
764
|
});
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
<layout:HorizontalLayout xmlns:layout="sap.ui.layout" xmlns:mvc="sap.ui.core.mvc" xmlns="sap.m">
|
|
2
|
+
<Button id="btn1InXmlFragment" text="Hello XML World" press="doSomething"/>
|
|
3
|
+
<Button text="{/someText}" />
|
|
4
|
+
<mvc:View viewName="testdata.fragments.views.View" async="true" type="XML" />
|
|
5
|
+
</layout:HorizontalLayout>
|
|
@@ -20,7 +20,7 @@ sap.ui.define([], function() {
|
|
|
20
20
|
page: "test-resources/sap/ui/core/qunit/base/Config_bootstrap.qunit.html"
|
|
21
21
|
},
|
|
22
22
|
"base/Config_cascade": {
|
|
23
|
-
page: "test-resources/sap/ui/core/qunit/base/Config_cascade.qunit.html?sap-ui-paramA=url"
|
|
23
|
+
page: "test-resources/sap/ui/core/qunit/base/Config_cascade.qunit.html?sap-ui-paramA=url&sap-ui-param-merged-object={\"objectKeyUrl\":\"urlObject\"}"
|
|
24
24
|
},
|
|
25
25
|
"base/Config_noUrl": {
|
|
26
26
|
page: "test-resources/sap/ui/core/qunit/base/Config_noUrl.qunit.html?sap-ui-foo-bar=url"
|
|
@@ -51,6 +51,9 @@ sap.ui.define(function() {
|
|
|
51
51
|
libs: "sap.m"
|
|
52
52
|
}
|
|
53
53
|
},
|
|
54
|
+
/**
|
|
55
|
+
* @deprecated since 1.120
|
|
56
|
+
*/
|
|
54
57
|
ControlRenderer: {
|
|
55
58
|
title: "sap.ui.core.Control (ControlRenderer)"
|
|
56
59
|
},
|
|
@@ -75,6 +78,7 @@ sap.ui.define(function() {
|
|
|
75
78
|
},
|
|
76
79
|
module: [
|
|
77
80
|
"testdata/core/Element_base.qunit",
|
|
81
|
+
"testdata/core/Element_base_legacyAPIs.qunit",
|
|
78
82
|
"testdata/core/Element_contextualSettings.qunit",
|
|
79
83
|
"testdata/core/Element_data.qunit",
|
|
80
84
|
"testdata/core/Element_delegates.qunit",
|
|
@@ -5225,4 +5225,194 @@ sap.ui.define([
|
|
|
5225
5225
|
// code under test
|
|
5226
5226
|
assert.strictEqual(DateFormat.prototype.parse.call(oFormat, "~value"), "~dateObject");
|
|
5227
5227
|
});
|
|
5228
|
+
|
|
5229
|
+
//*****************************************************************************************************************
|
|
5230
|
+
// BCP: 2380137559
|
|
5231
|
+
QUnit.test("DateFormat: alternative month abbreviations (integrative test)", function (assert) {
|
|
5232
|
+
Configuration.setLanguage("en_GB");
|
|
5233
|
+
const oDateFormat = DateFormat.getDateInstance();
|
|
5234
|
+
const oDate = UI5Date.getInstance(2023, 8, 15);
|
|
5235
|
+
|
|
5236
|
+
// code under test - format based on current CLDR version
|
|
5237
|
+
assert.strictEqual(oDateFormat.format(oDate), "15 Sept 2023");
|
|
5238
|
+
|
|
5239
|
+
// code under test - parse abreviated month based on current CLDR version (43.0)
|
|
5240
|
+
assert.strictEqual(oDateFormat.parse("15 Sept 2023").getTime(), oDate.getTime());
|
|
5241
|
+
|
|
5242
|
+
// code under test - parsing abreviated month based on older CLDR version (41.0) still possible
|
|
5243
|
+
assert.strictEqual(oDateFormat.parse("15 Sep 2023").getTime(), oDate.getTime());
|
|
5244
|
+
});
|
|
5245
|
+
|
|
5246
|
+
//*****************************************************************************************************************
|
|
5247
|
+
QUnit.test("DateFormat#init", function (assert) {
|
|
5248
|
+
const oLocalData = {
|
|
5249
|
+
_getMonthsWithAlternatives() {},
|
|
5250
|
+
_getMonthsStandAloneWithAlternatives() {},
|
|
5251
|
+
getDayPeriods() {},
|
|
5252
|
+
getDays() {},
|
|
5253
|
+
getDaysStandAlone() {},
|
|
5254
|
+
getEras() {},
|
|
5255
|
+
getFlexibleDayPeriods() {},
|
|
5256
|
+
getFlexibleDayPeriodsStandAlone() {},
|
|
5257
|
+
getMonths() {},
|
|
5258
|
+
getMonthsStandAlone() {},
|
|
5259
|
+
getQuarters() {},
|
|
5260
|
+
getQuartersStandAlone() {}
|
|
5261
|
+
};
|
|
5262
|
+
const oDateFormat = {
|
|
5263
|
+
oFormatOptions: {calendarType: "~calendarType", pattern: "~pattern"},
|
|
5264
|
+
oLocaleData: oLocalData,
|
|
5265
|
+
getAllowedCharacters() {},
|
|
5266
|
+
parseCldrDatePattern() {}
|
|
5267
|
+
};
|
|
5268
|
+
const oLocalDataMock = this.mock(oLocalData);
|
|
5269
|
+
oLocalDataMock.expects("_getMonthsWithAlternatives").withExactArgs("abbreviated", "~calendarType")
|
|
5270
|
+
.returns("~aMonthsAbbrev");
|
|
5271
|
+
oLocalDataMock.expects("getMonths").withExactArgs("wide", "~calendarType").returns("~aMonthsWide");
|
|
5272
|
+
oLocalDataMock.expects("getMonths").withExactArgs("narrow", "~calendarType").returns("~aMonthsNarrow");
|
|
5273
|
+
oLocalDataMock.expects("_getMonthsStandAloneWithAlternatives").withExactArgs("abbreviated", "~calendarType")
|
|
5274
|
+
.returns("~aMonthsAbbrevSt");
|
|
5275
|
+
oLocalDataMock.expects("getMonthsStandAlone").withExactArgs("wide", "~calendarType").returns("~aMonthsWideSt");
|
|
5276
|
+
oLocalDataMock.expects("getMonthsStandAlone").withExactArgs("narrow", "~calendarType")
|
|
5277
|
+
.returns("~aMonthsNarrowSt");
|
|
5278
|
+
oLocalDataMock.expects("getDays").withExactArgs("abbreviated", "~calendarType").returns("~aDaysAbbrev");
|
|
5279
|
+
oLocalDataMock.expects("getDays").withExactArgs("wide", "~calendarType").returns("~aDaysWide");
|
|
5280
|
+
oLocalDataMock.expects("getDays").withExactArgs("narrow", "~calendarType").returns("~aDaysNarrow");
|
|
5281
|
+
oLocalDataMock.expects("getDays").withExactArgs("short", "~calendarType").returns("~aDaysShort");
|
|
5282
|
+
oLocalDataMock.expects("getDaysStandAlone").withExactArgs("abbreviated", "~calendarType")
|
|
5283
|
+
.returns("~aDaysAbbrevSt");
|
|
5284
|
+
oLocalDataMock.expects("getDaysStandAlone").withExactArgs("wide", "~calendarType").returns("~aDaysWideSt");
|
|
5285
|
+
oLocalDataMock.expects("getDaysStandAlone").withExactArgs("narrow", "~calendarType").returns("~aDaysNarrowSt");
|
|
5286
|
+
oLocalDataMock.expects("getDaysStandAlone").withExactArgs("short", "~calendarType").returns("~aDaysShortSt");
|
|
5287
|
+
oLocalDataMock.expects("getQuarters").withExactArgs("abbreviated", "~calendarType").returns("~aQuartersAbbrev");
|
|
5288
|
+
oLocalDataMock.expects("getQuarters").withExactArgs("wide", "~calendarType").returns("~aQuartersWide");
|
|
5289
|
+
oLocalDataMock.expects("getQuarters").withExactArgs("narrow", "~calendarType").returns("~aQuartersNarrow");
|
|
5290
|
+
oLocalDataMock.expects("getQuartersStandAlone").withExactArgs("abbreviated", "~calendarType")
|
|
5291
|
+
.returns("~aQuartersAbbrevSt");
|
|
5292
|
+
oLocalDataMock.expects("getQuartersStandAlone").withExactArgs("wide", "~calendarType")
|
|
5293
|
+
.returns("~aQuartersWideSt");
|
|
5294
|
+
oLocalDataMock.expects("getQuartersStandAlone").withExactArgs("narrow", "~calendarType")
|
|
5295
|
+
.returns("~aQuartersNarrowSt");
|
|
5296
|
+
oLocalDataMock.expects("getEras").withExactArgs("abbreviated", "~calendarType").returns("~aErasAbbrev");
|
|
5297
|
+
oLocalDataMock.expects("getEras").withExactArgs("wide", "~calendarType").returns("~aErasWide");
|
|
5298
|
+
oLocalDataMock.expects("getEras").withExactArgs("narrow", "~calendarType").returns("~aErasNarrow");
|
|
5299
|
+
oLocalDataMock.expects("getDayPeriods").withExactArgs("abbreviated", "~calendarType")
|
|
5300
|
+
.returns("~aDayPeriodsAbbrev");
|
|
5301
|
+
oLocalDataMock.expects("getDayPeriods").withExactArgs("wide", "~calendarType").returns("~aDayPeriodsWide");
|
|
5302
|
+
oLocalDataMock.expects("getDayPeriods").withExactArgs("narrow", "~calendarType").returns("~aDayPeriodsNarrow");
|
|
5303
|
+
oLocalDataMock.expects("getFlexibleDayPeriods").withExactArgs("abbreviated", "~calendarType")
|
|
5304
|
+
.returns("~oFlexibleDayPeriodsAbbrev");
|
|
5305
|
+
oLocalDataMock.expects("getFlexibleDayPeriods").withExactArgs("wide", "~calendarType")
|
|
5306
|
+
.returns("~oFlexibleDayPeriodsWide");
|
|
5307
|
+
oLocalDataMock.expects("getFlexibleDayPeriods").withExactArgs("narrow", "~calendarType")
|
|
5308
|
+
.returns("~oFlexibleDayPeriodsNarrow");
|
|
5309
|
+
oLocalDataMock.expects("getFlexibleDayPeriodsStandAlone").withExactArgs("abbreviated", "~calendarType")
|
|
5310
|
+
.returns("~oFlexibleDayPeriodsAbbrevSt");
|
|
5311
|
+
oLocalDataMock.expects("getFlexibleDayPeriodsStandAlone").withExactArgs("wide", "~calendarType")
|
|
5312
|
+
.returns("~oFlexibleDayPeriodsWideSt");
|
|
5313
|
+
oLocalDataMock.expects("getFlexibleDayPeriodsStandAlone").withExactArgs("narrow", "~calendarType")
|
|
5314
|
+
.returns("~oFlexibleDayPeriodsNarrowSt");
|
|
5315
|
+
this.mock(oDateFormat).expects("parseCldrDatePattern").withExactArgs("~pattern").returns("~aFormatArray");
|
|
5316
|
+
this.mock(oDateFormat).expects("getAllowedCharacters").withExactArgs("~aFormatArray")
|
|
5317
|
+
.returns("~sAllowedCharacters");
|
|
5318
|
+
|
|
5319
|
+
// code under test
|
|
5320
|
+
DateFormat.prototype.init.call(oDateFormat);
|
|
5321
|
+
|
|
5322
|
+
assert.strictEqual(oDateFormat.aMonthsAbbrev, "~aMonthsAbbrev");
|
|
5323
|
+
assert.strictEqual(oDateFormat.aMonthsWide, "~aMonthsWide");
|
|
5324
|
+
assert.strictEqual(oDateFormat.aMonthsNarrow, "~aMonthsNarrow");
|
|
5325
|
+
assert.strictEqual(oDateFormat.aMonthsAbbrevSt, "~aMonthsAbbrevSt");
|
|
5326
|
+
assert.strictEqual(oDateFormat.aMonthsWideSt, "~aMonthsWideSt");
|
|
5327
|
+
assert.strictEqual(oDateFormat.aMonthsNarrowSt, "~aMonthsNarrowSt");
|
|
5328
|
+
assert.strictEqual(oDateFormat.aDaysAbbrev, "~aDaysAbbrev");
|
|
5329
|
+
assert.strictEqual(oDateFormat.aDaysWide, "~aDaysWide");
|
|
5330
|
+
assert.strictEqual(oDateFormat.aDaysNarrow, "~aDaysNarrow");
|
|
5331
|
+
assert.strictEqual(oDateFormat.aDaysShort, "~aDaysShort");
|
|
5332
|
+
assert.strictEqual(oDateFormat.aDaysAbbrevSt, "~aDaysAbbrevSt");
|
|
5333
|
+
assert.strictEqual(oDateFormat.aDaysWideSt, "~aDaysWideSt");
|
|
5334
|
+
assert.strictEqual(oDateFormat.aDaysNarrowSt, "~aDaysNarrowSt");
|
|
5335
|
+
assert.strictEqual(oDateFormat.aDaysShortSt, "~aDaysShortSt");
|
|
5336
|
+
assert.strictEqual(oDateFormat.aQuartersAbbrev, "~aQuartersAbbrev");
|
|
5337
|
+
assert.strictEqual(oDateFormat.aQuartersWide, "~aQuartersWide");
|
|
5338
|
+
assert.strictEqual(oDateFormat.aQuartersNarrow, "~aQuartersNarrow");
|
|
5339
|
+
assert.strictEqual(oDateFormat.aQuartersAbbrevSt, "~aQuartersAbbrevSt");
|
|
5340
|
+
assert.strictEqual(oDateFormat.aQuartersWideSt, "~aQuartersWideSt");
|
|
5341
|
+
assert.strictEqual(oDateFormat.aQuartersNarrowSt, "~aQuartersNarrowSt");
|
|
5342
|
+
assert.strictEqual(oDateFormat.aErasNarrow, "~aErasNarrow");
|
|
5343
|
+
assert.strictEqual(oDateFormat.aErasAbbrev, "~aErasAbbrev");
|
|
5344
|
+
assert.strictEqual(oDateFormat.aErasWide, "~aErasWide");
|
|
5345
|
+
assert.strictEqual(oDateFormat.aDayPeriodsAbbrev, "~aDayPeriodsAbbrev");
|
|
5346
|
+
assert.strictEqual(oDateFormat.aDayPeriodsNarrow, "~aDayPeriodsNarrow");
|
|
5347
|
+
assert.strictEqual(oDateFormat.aDayPeriodsWide, "~aDayPeriodsWide");
|
|
5348
|
+
assert.strictEqual(oDateFormat.oFlexibleDayPeriodsAbbrev, "~oFlexibleDayPeriodsAbbrev");
|
|
5349
|
+
assert.strictEqual(oDateFormat.oFlexibleDayPeriodsNarrow, "~oFlexibleDayPeriodsNarrow");
|
|
5350
|
+
assert.strictEqual(oDateFormat.oFlexibleDayPeriodsWide, "~oFlexibleDayPeriodsWide");
|
|
5351
|
+
assert.strictEqual(oDateFormat.oFlexibleDayPeriodsAbbrevSt, "~oFlexibleDayPeriodsAbbrevSt");
|
|
5352
|
+
assert.strictEqual(oDateFormat.oFlexibleDayPeriodsNarrowSt, "~oFlexibleDayPeriodsNarrowSt");
|
|
5353
|
+
assert.strictEqual(oDateFormat.oFlexibleDayPeriodsWideSt, "~oFlexibleDayPeriodsWideSt");
|
|
5354
|
+
assert.strictEqual(oDateFormat.aFormatArray, "~aFormatArray");
|
|
5355
|
+
assert.strictEqual(oDateFormat.sAllowedCharacters, "~sAllowedCharacters");
|
|
5356
|
+
});
|
|
5357
|
+
|
|
5358
|
+
//*****************************************************************************************************************
|
|
5359
|
+
QUnit.test("DateFormat#findEntry", function (assert) {
|
|
5360
|
+
const oParseHelperMock = this.mock(DateFormat._oParseHelper);
|
|
5361
|
+
oParseHelperMock.expects("startsWithIgnoreCase").never();
|
|
5362
|
+
|
|
5363
|
+
// code under test
|
|
5364
|
+
assert.deepEqual(DateFormat._oParseHelper.findEntry("foo", [], "~sLocale"), {index: -1, length: 0});
|
|
5365
|
+
|
|
5366
|
+
oParseHelperMock.expects("startsWithIgnoreCase").withExactArgs("~value", "f", "~sLocale").returns(true);
|
|
5367
|
+
oParseHelperMock.expects("startsWithIgnoreCase").withExactArgs("~value", "foo", "~sLocale").returns(true);
|
|
5368
|
+
oParseHelperMock.expects("startsWithIgnoreCase").withExactArgs("~value", "FooBar", "~sLocale").returns(false);
|
|
5369
|
+
|
|
5370
|
+
// code under test
|
|
5371
|
+
assert.deepEqual(
|
|
5372
|
+
DateFormat._oParseHelper.findEntry("~value", ["f", "foo", "fo", "FooBar", "baz"], "~sLocale"),
|
|
5373
|
+
{index: 1, length: 3});
|
|
5374
|
+
|
|
5375
|
+
oParseHelperMock.expects("startsWithIgnoreCase").withExactArgs("~value", "a", "~sLocale").returns(false);
|
|
5376
|
+
oParseHelperMock.expects("startsWithIgnoreCase").withExactArgs("~value", "f", "~sLocale").returns(true);
|
|
5377
|
+
oParseHelperMock.expects("startsWithIgnoreCase").withExactArgs("~value", "alt1", "~sLocale").returns(false);
|
|
5378
|
+
oParseHelperMock.expects("startsWithIgnoreCase").withExactArgs("~value", "alt2", "~sLocale").returns(true);
|
|
5379
|
+
oParseHelperMock.expects("startsWithIgnoreCase").withExactArgs("~value", "alt99", "~sLocale").returns(true);
|
|
5380
|
+
oParseHelperMock.expects("startsWithIgnoreCase").withExactArgs("~value", "FooBar", "~sLocale").returns(false);
|
|
5381
|
+
|
|
5382
|
+
// code under test
|
|
5383
|
+
assert.deepEqual(
|
|
5384
|
+
DateFormat._oParseHelper.findEntry("~value", ["a", "f", "x", ["alt1", "alt2", "alt3", "alt99"], "FooBar"],
|
|
5385
|
+
"~sLocale"),
|
|
5386
|
+
{index: 3, length: 5});
|
|
5387
|
+
});
|
|
5388
|
+
|
|
5389
|
+
//*****************************************************************************************************************
|
|
5390
|
+
QUnit.test("oSymbols.M#format: abbreviations contains array", function (assert) {
|
|
5391
|
+
const oField = {digits: 3};
|
|
5392
|
+
const oFormat = {aMonthsAbbrev: ["foo", "bar", ["baz", "qux"]]};
|
|
5393
|
+
// code under test
|
|
5394
|
+
assert.strictEqual(
|
|
5395
|
+
DateFormat.prototype.oSymbols.M.format(oField, new Date(Date.UTC(2023, 1, 1)), undefined, oFormat),
|
|
5396
|
+
"bar");
|
|
5397
|
+
|
|
5398
|
+
// code under test
|
|
5399
|
+
assert.strictEqual(
|
|
5400
|
+
DateFormat.prototype.oSymbols.M.format(oField, new Date(Date.UTC(2023, 2, 1)), undefined, oFormat),
|
|
5401
|
+
"baz");
|
|
5402
|
+
});
|
|
5403
|
+
|
|
5404
|
+
//*****************************************************************************************************************
|
|
5405
|
+
QUnit.test("oSymbols.L#format: abbreviations contains array", function (assert) {
|
|
5406
|
+
const oField = {digits: 3};
|
|
5407
|
+
const oFormat = {aMonthsAbbrevSt: ["foo", "bar", ["baz", "qux"]]};
|
|
5408
|
+
// code under test
|
|
5409
|
+
assert.strictEqual(
|
|
5410
|
+
DateFormat.prototype.oSymbols.L.format(oField, new Date(Date.UTC(2023, 1, 1)), undefined, oFormat),
|
|
5411
|
+
"bar");
|
|
5412
|
+
|
|
5413
|
+
// code under test
|
|
5414
|
+
assert.strictEqual(
|
|
5415
|
+
DateFormat.prototype.oSymbols.L.format(oField, new Date(Date.UTC(2023, 2, 1)), undefined, oFormat),
|
|
5416
|
+
"baz");
|
|
5417
|
+
});
|
|
5228
5418
|
});
|
|
@@ -110,7 +110,7 @@ sap.ui.define([
|
|
|
110
110
|
"Cannot format date interval: " + oDate1 + " is expected as an Array but given the wrong format");
|
|
111
111
|
assert.strictEqual(oDateInterval.formatValue([oDate1], "string"), "", "format type with invalid parameter");
|
|
112
112
|
// logged by DataType.getType
|
|
113
|
-
this.oLogMock.expects("error").withExactArgs("data type 'untype' could not be found.");
|
|
113
|
+
this.oLogMock.expects("error").withExactArgs("[FUTURE FATAL] data type 'untype' could not be found.");
|
|
114
114
|
checkFormatException(assert, oDateInterval, [oDate1, oDate2], "untype",
|
|
115
115
|
"Don't know how to format Date to untype");
|
|
116
116
|
|
|
@@ -142,7 +142,7 @@ sap.ui.define([
|
|
|
142
142
|
[oDate1, oDate2], "Interval string can be parsed into an array of dates");
|
|
143
143
|
checkParseException(assert, oDateInterval, "Nov 6", "string", "DateInterval.Invalid");
|
|
144
144
|
// logged by DataType.getType
|
|
145
|
-
this.oLogMock.expects("error").withExactArgs("data type 'untype' could not be found.");
|
|
145
|
+
this.oLogMock.expects("error").withExactArgs("[FUTURE FATAL] data type 'untype' could not be found.");
|
|
146
146
|
checkParseException(assert, oDateInterval, "Nov 6 - Dec 6, 2003", "untype",
|
|
147
147
|
"Don't know how to parse a date interval from untype");
|
|
148
148
|
|