@situm/cordova 3.0.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/CHANGELOG.md +3 -0
- package/CHANGELOG_UNRELEASED.md +28 -0
- package/Jenkinsfile +84 -0
- package/LICENSE +21 -0
- package/README.md +472 -0
- package/azure/common-steps.yaml +5 -0
- package/azure-pipelines.yml +336 -0
- package/docs/JSDoc/MapView.html +300 -0
- package/docs/JSDoc/MapViewControllerImpl.html +299 -0
- package/docs/JSDoc/Situm.html +5257 -0
- package/docs/JSDoc/android_Interfaces.js.html +825 -0
- package/docs/JSDoc/android_situm.js.html +380 -0
- package/docs/JSDoc/fonts/glyphicons-halflings-regular.eot +0 -0
- package/docs/JSDoc/fonts/glyphicons-halflings-regular.svg +288 -0
- package/docs/JSDoc/fonts/glyphicons-halflings-regular.ttf +0 -0
- package/docs/JSDoc/fonts/glyphicons-halflings-regular.woff +0 -0
- package/docs/JSDoc/fonts/glyphicons-halflings-regular.woff2 +0 -0
- package/docs/JSDoc/global.html +7538 -0
- package/docs/JSDoc/img/toast-ui.png +0 -0
- package/docs/JSDoc/index.html +90 -0
- package/docs/JSDoc/map-view-controller.js.html +307 -0
- package/docs/JSDoc/map-view.js.html +172 -0
- package/docs/JSDoc/scripts/jquery.min.js +2 -0
- package/docs/JSDoc/scripts/linenumber.js +30 -0
- package/docs/JSDoc/scripts/prettify/Apache-License-2.0.txt +202 -0
- package/docs/JSDoc/scripts/prettify/lang-css.js +2 -0
- package/docs/JSDoc/scripts/prettify/prettify.js +28 -0
- package/docs/JSDoc/scripts/tui-doc.js +200 -0
- package/docs/JSDoc/styles/bootstrap.min.css +6 -0
- package/docs/JSDoc/styles/custom.css +23 -0
- package/docs/JSDoc/styles/prettify-jsdoc.css +111 -0
- package/docs/JSDoc/styles/prettify-tomorrow.css +132 -0
- package/docs/JSDoc/styles/tui-doc.css +485 -0
- package/docs/conf.json +28 -0
- package/docs/getting-started.md +298 -0
- package/docs/imagotype-SITUM-transparent-90.png +0 -0
- package/docs/static/styles/custom.css +23 -0
- package/package.json +60 -0
- package/plugin.xml +102 -0
- package/scripts/update_changelog.sh +22 -0
- package/src/android/app/build.gradle +51 -0
- package/src/android/app/proguard-rules.pro +21 -0
- package/src/android/app/src/main/AndroidManifest.xml +11 -0
- package/src/android/app/src/main/java/es/situm/plugin/DateUtils.java +15 -0
- package/src/android/app/src/main/java/es/situm/plugin/PluginHelper.java +919 -0
- package/src/android/app/src/main/java/es/situm/plugin/SitumMapper.java +968 -0
- package/src/android/app/src/main/java/es/situm/plugin/SitumPlugin.java +109 -0
- package/src/android/app/src/main/res/drawable/ic_launcher_background.xml +170 -0
- package/src/android/app/src/main/res/drawable-v24/ic_launcher_foreground.xml +34 -0
- package/src/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml +5 -0
- package/src/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml +5 -0
- package/src/android/app/src/main/res/mipmap-hdpi/ic_launcher.png +0 -0
- package/src/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png +0 -0
- package/src/android/app/src/main/res/mipmap-mdpi/ic_launcher.png +0 -0
- package/src/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png +0 -0
- package/src/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png +0 -0
- package/src/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png +0 -0
- package/src/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png +0 -0
- package/src/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png +0 -0
- package/src/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png +0 -0
- package/src/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png +0 -0
- package/src/android/app/src/main/res/values/colors.xml +6 -0
- package/src/android/app/src/main/res/values/strings.xml +3 -0
- package/src/android/app/src/main/res/values/styles.xml +11 -0
- package/src/android/app/src/test/java/es/situm/plugin/PluginHelperTest.java +27 -0
- package/src/android/app/src/test/java/es/situm/plugin/SitumMapperTest.java +1485 -0
- package/src/android/app/src/test/java/es/situm/plugin/angle/AngleCreator.java +46 -0
- package/src/android/app/src/test/java/es/situm/plugin/bounds/BoundsCreator.java +50 -0
- package/src/android/app/src/test/java/es/situm/plugin/building/BuildingCreator.java +76 -0
- package/src/android/app/src/test/java/es/situm/plugin/cartesianCoordinate/CartesianCoordinateCreator.java +31 -0
- package/src/android/app/src/test/java/es/situm/plugin/circle/CircleCreator.java +41 -0
- package/src/android/app/src/test/java/es/situm/plugin/coordinate/CoordinateCreator.java +32 -0
- package/src/android/app/src/test/java/es/situm/plugin/dimensions/DimensionsCreator.java +31 -0
- package/src/android/app/src/test/java/es/situm/plugin/directionsRequest/DirectionsRequestCreator.java +105 -0
- package/src/android/app/src/test/java/es/situm/plugin/event/EventCreator.java +108 -0
- package/src/android/app/src/test/java/es/situm/plugin/floor/FloorCreator.java +58 -0
- package/src/android/app/src/test/java/es/situm/plugin/indication/IndicationCreator.java +40 -0
- package/src/android/app/src/test/java/es/situm/plugin/location/LocationCreator.java +197 -0
- package/src/android/app/src/test/java/es/situm/plugin/locationRequest/LocationRequestCreator.java +45 -0
- package/src/android/app/src/test/java/es/situm/plugin/locationStatus/LocationStatusCreator.java +211 -0
- package/src/android/app/src/test/java/es/situm/plugin/navigationProgress/NavigationProgressCreator.java +154 -0
- package/src/android/app/src/test/java/es/situm/plugin/poi/PoiCreator.java +126 -0
- package/src/android/app/src/test/java/es/situm/plugin/poiCategory/PoiCategoryCreator.java +38 -0
- package/src/android/app/src/test/java/es/situm/plugin/point/PointCreator.java +200 -0
- package/src/android/app/src/test/java/es/situm/plugin/route/RouteCreator.java +142 -0
- package/src/android/app/src/test/java/es/situm/plugin/routeStep/RouteStepCreator.java +173 -0
- package/src/android/app/src/test/java/es/situm/plugin/situmConversionArea/SitumConversionAreaCreator.java +35 -0
- package/src/android/build.gradle +31 -0
- package/src/android/gradle/wrapper/gradle-wrapper.jar +0 -0
- package/src/android/gradle/wrapper/gradle-wrapper.properties +6 -0
- package/src/android/gradle.properties +16 -0
- package/src/android/gradlew +172 -0
- package/src/android/gradlew.bat +84 -0
- package/src/android/settings.gradle +3 -0
- package/src/android/situm.gradle +19 -0
- package/src/ios/Classes/Private/CDVDebug.h +25 -0
- package/src/ios/Classes/Private/CDVJSON_private.h +31 -0
- package/src/ios/Classes/Private/CDVJSON_private.m +99 -0
- package/src/ios/Classes/Private/CDVPlugin+Private.h +24 -0
- package/src/ios/Classes/Private/CDVPlugins/CDVGestureHandler/CDVGestureHandler.h +26 -0
- package/src/ios/Classes/Private/CDVPlugins/CDVGestureHandler/CDVGestureHandler.m +70 -0
- package/src/ios/Classes/Private/CDVPlugins/CDVHandleOpenURL/CDVHandleOpenURL.h +27 -0
- package/src/ios/Classes/Private/CDVPlugins/CDVHandleOpenURL/CDVHandleOpenURL.m +86 -0
- package/src/ios/Classes/Private/CDVPlugins/CDVIntentAndNavigationFilter/CDVIntentAndNavigationFilter.h +34 -0
- package/src/ios/Classes/Private/CDVPlugins/CDVIntentAndNavigationFilter/CDVIntentAndNavigationFilter.m +153 -0
- package/src/ios/Classes/Private/CDVPlugins/CDVLocalStorage/CDVLocalStorage.h +50 -0
- package/src/ios/Classes/Private/CDVPlugins/CDVLocalStorage/CDVLocalStorage.m +487 -0
- package/src/ios/Classes/Private/CDVPlugins/CDVLogger/CDVLogger.h +26 -0
- package/src/ios/Classes/Private/CDVPlugins/CDVLogger/CDVLogger.m +37 -0
- package/src/ios/Classes/Private/CDVPlugins/CDVUIWebViewEngine/CDVUIWebViewDelegate.h +41 -0
- package/src/ios/Classes/Private/CDVPlugins/CDVUIWebViewEngine/CDVUIWebViewDelegate.m +399 -0
- package/src/ios/Classes/Private/CDVPlugins/CDVUIWebViewEngine/CDVUIWebViewEngine.h +27 -0
- package/src/ios/Classes/Private/CDVPlugins/CDVUIWebViewEngine/CDVUIWebViewEngine.m +202 -0
- package/src/ios/Classes/Private/CDVPlugins/CDVUIWebViewEngine/CDVUIWebViewNavigationDelegate.h +29 -0
- package/src/ios/Classes/Private/CDVPlugins/CDVUIWebViewEngine/CDVUIWebViewNavigationDelegate.m +153 -0
- package/src/ios/Classes/Public/CDV.h +32 -0
- package/src/ios/Classes/Public/CDVAppDelegate.h +28 -0
- package/src/ios/Classes/Public/CDVAppDelegate.m +118 -0
- package/src/ios/Classes/Public/CDVAvailability.h +111 -0
- package/src/ios/Classes/Public/CDVAvailabilityDeprecated.h +26 -0
- package/src/ios/Classes/Public/CDVCommandDelegate.h +51 -0
- package/src/ios/Classes/Public/CDVCommandDelegateImpl.h +36 -0
- package/src/ios/Classes/Public/CDVCommandDelegateImpl.m +186 -0
- package/src/ios/Classes/Public/CDVCommandQueue.h +39 -0
- package/src/ios/Classes/Public/CDVCommandQueue.m +194 -0
- package/src/ios/Classes/Public/CDVConfigParser.h +30 -0
- package/src/ios/Classes/Public/CDVConfigParser.m +81 -0
- package/src/ios/Classes/Public/CDVInvokedUrlCommand.h +52 -0
- package/src/ios/Classes/Public/CDVInvokedUrlCommand.m +116 -0
- package/src/ios/Classes/Public/CDVPlugin+Resources.h +39 -0
- package/src/ios/Classes/Public/CDVPlugin+Resources.m +38 -0
- package/src/ios/Classes/Public/CDVPlugin.h +85 -0
- package/src/ios/Classes/Public/CDVPlugin.m +202 -0
- package/src/ios/Classes/Public/CDVPluginResult.h +66 -0
- package/src/ios/Classes/Public/CDVPluginResult.m +186 -0
- package/src/ios/Classes/Public/CDVScreenOrientationDelegate.h +33 -0
- package/src/ios/Classes/Public/CDVTimer.h +27 -0
- package/src/ios/Classes/Public/CDVTimer.m +123 -0
- package/src/ios/Classes/Public/CDVURLProtocol.h +27 -0
- package/src/ios/Classes/Public/CDVURLProtocol.m +113 -0
- package/src/ios/Classes/Public/CDVUserAgentUtil.h +27 -0
- package/src/ios/Classes/Public/CDVUserAgentUtil.m +124 -0
- package/src/ios/Classes/Public/CDVViewController.h +92 -0
- package/src/ios/Classes/Public/CDVViewController.m +821 -0
- package/src/ios/Classes/Public/CDVWebViewEngineProtocol.h +42 -0
- package/src/ios/Classes/Public/CDVWhitelist.h +34 -0
- package/src/ios/Classes/Public/CDVWhitelist.m +285 -0
- package/src/ios/Classes/Public/NSDictionary+CordovaPreferences.h +35 -0
- package/src/ios/Classes/Public/NSDictionary+CordovaPreferences.m +63 -0
- package/src/ios/Classes/Public/NSMutableArray+QueueAdditions.h +29 -0
- package/src/ios/Classes/Public/NSMutableArray+QueueAdditions.m +58 -0
- package/src/ios/Cordova/Cordova.h +51 -0
- package/src/ios/Cordova/Info.plist +24 -0
- package/src/ios/Podfile +5 -0
- package/src/ios/SitumCordovaPlugin.xcodeproj/project.pbxproj +1324 -0
- package/src/ios/SitumCordovaPlugin.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
- package/src/ios/SitumCordovaPlugin.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
- package/src/ios/SitumCordovaPlugin.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings +8 -0
- package/src/ios/SitumCordovaPlugin.xcodeproj/xcshareddata/xcschemes/CordovaLib.xcscheme +100 -0
- package/src/ios/SitumCordovaPlugin.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
- package/src/ios/SitumCordovaPlugin_Prefix.pch +22 -0
- package/src/ios/VERSION +1 -0
- package/src/ios/cordova.js +2432 -0
- package/src/ios/situmcordovaplugin/AppDelegate.h +22 -0
- package/src/ios/situmcordovaplugin/AppDelegate.m +98 -0
- package/src/ios/situmcordovaplugin/Assets.xcassets/AppIcon.appiconset/Contents.json +98 -0
- package/src/ios/situmcordovaplugin/Base.lproj/LaunchScreen.storyboard +25 -0
- package/src/ios/situmcordovaplugin/Base.lproj/Main.storyboard +24 -0
- package/src/ios/situmcordovaplugin/Constants.h +14 -0
- package/src/ios/situmcordovaplugin/Constants.m +14 -0
- package/src/ios/situmcordovaplugin/Info.plist +45 -0
- package/src/ios/situmcordovaplugin/SITUtils.h +7 -0
- package/src/ios/situmcordovaplugin/SITUtils.m +13 -0
- package/src/ios/situmcordovaplugin/SitumLocationWrapper.h +109 -0
- package/src/ios/situmcordovaplugin/SitumLocationWrapper.m +983 -0
- package/src/ios/situmcordovaplugin/SitumPlugin.h +41 -0
- package/src/ios/situmcordovaplugin/SitumPlugin.m +752 -0
- package/src/ios/situmcordovaplugin/ViewController.h +15 -0
- package/src/ios/situmcordovaplugin/ViewController.m +29 -0
- package/src/ios/situmcordovaplugin/main.m +16 -0
- package/src/ios/situmcordovaplugin/situmcordovaplugin.xcdatamodeld/.xccurrentversion +8 -0
- package/src/ios/situmcordovaplugin/situmcordovaplugin.xcdatamodeld/situmcordovaplugin.xcdatamodel/contents +4 -0
- package/src/ios/situmcordovaplugintests/AngleTests.m +53 -0
- package/src/ios/situmcordovaplugintests/BoundTests.m +51 -0
- package/src/ios/situmcordovaplugintests/BuildingTests.m +41 -0
- package/src/ios/situmcordovaplugintests/CartesianCoordinateTests.m +42 -0
- package/src/ios/situmcordovaplugintests/ConversionAreaTests.m +43 -0
- package/src/ios/situmcordovaplugintests/CoordinateTests.m +42 -0
- package/src/ios/situmcordovaplugintests/DimensionTests.m +43 -0
- package/src/ios/situmcordovaplugintests/EventTests.m +42 -0
- package/src/ios/situmcordovaplugintests/FloorTests.m +52 -0
- package/src/ios/situmcordovaplugintests/Info.plist +38 -0
- package/src/ios/situmcordovaplugintests/InputTests/DirectionsRequestTest.m +108 -0
- package/src/ios/situmcordovaplugintests/InputTests/InputCartesianCoordinateTests.m +45 -0
- package/src/ios/situmcordovaplugintests/InputTests/InputCoordinateTests.m +45 -0
- package/src/ios/situmcordovaplugintests/InputTests/InputFloorTests.m +59 -0
- package/src/ios/situmcordovaplugintests/InputTests/InputIndicationTests.m +45 -0
- package/src/ios/situmcordovaplugintests/InputTests/InputLocationTests.m +163 -0
- package/src/ios/situmcordovaplugintests/InputTests/InputPoiCategoryTests.m +46 -0
- package/src/ios/situmcordovaplugintests/InputTests/InputPointTests.m +137 -0
- package/src/ios/situmcordovaplugintests/InputTests/LocationRequestTest.m +79 -0
- package/src/ios/situmcordovaplugintests/LocationStatusTests.m +60 -0
- package/src/ios/situmcordovaplugintests/LocationTests.m +114 -0
- package/src/ios/situmcordovaplugintests/NavigationProgressTests.m +50 -0
- package/src/ios/situmcordovaplugintests/PoiCategoryIconTests.m +43 -0
- package/src/ios/situmcordovaplugintests/PoiCategoryTests.m +42 -0
- package/src/ios/situmcordovaplugintests/PoiTests.m +83 -0
- package/src/ios/situmcordovaplugintests/PointTests.m +107 -0
- package/src/ios/situmcordovaplugintests/RouteStepTests.m +78 -0
- package/src/ios/situmcordovaplugintests/RouteTests.m +42 -0
- package/src/ios/situmcordovaplugintests/SitumCreatorTests.h +91 -0
- package/src/ios/situmcordovaplugintests/SitumCreatorTests.m +928 -0
- package/src/ios/situmcordovaplugintests/TestingHelper.h +48 -0
- package/src/ios/situmcordovaplugintests/TestingHelper.m +342 -0
- package/src/ios/situmcordovaplugintests/indicationTests.m +43 -0
- package/tests/common-resources/angle/angle1.json +6 -0
- package/tests/common-resources/angle/angle2.json +6 -0
- package/tests/common-resources/bounds/bounds1.json +18 -0
- package/tests/common-resources/bounds/bounds2.json +18 -0
- package/tests/common-resources/building/building1.json +64 -0
- package/tests/common-resources/cartesianCoordinate/cartesianCoordinate1.json +4 -0
- package/tests/common-resources/circle/circle1.json +17 -0
- package/tests/common-resources/coordinate/coordinate1.json +4 -0
- package/tests/common-resources/dimensions/dimensions1.json +4 -0
- package/tests/common-resources/directionsRequest/directionsRequest1.json +166 -0
- package/tests/common-resources/directionsRequest/directionsRequest2.json +167 -0
- package/tests/common-resources/directionsRequest/directionsRequest3.json +166 -0
- package/tests/common-resources/directionsRequest/directionsRequest4.json +166 -0
- package/tests/common-resources/directionsRequest/directionsRequest5.json +167 -0
- package/tests/common-resources/directionsRequest/directionsRequest6.json +153 -0
- package/tests/common-resources/events/event1.json +66 -0
- package/tests/common-resources/floor/floor1.json +13 -0
- package/tests/common-resources/floor/floor2.json +13 -0
- package/tests/common-resources/indication/indication1.json +10 -0
- package/tests/common-resources/location/location1.json +48 -0
- package/tests/common-resources/location/location10.json +48 -0
- package/tests/common-resources/location/location2.json +48 -0
- package/tests/common-resources/location/location3.json +48 -0
- package/tests/common-resources/location/location4.json +48 -0
- package/tests/common-resources/location/location5.json +48 -0
- package/tests/common-resources/location/location6.json +48 -0
- package/tests/common-resources/location/location7.json +48 -0
- package/tests/common-resources/location/location8.json +48 -0
- package/tests/common-resources/location/location9.json +48 -0
- package/tests/common-resources/locationRequest/locationRequest1.json +6 -0
- package/tests/common-resources/locationRequest/locationRequest2.json +32 -0
- package/tests/common-resources/locationRequest/locationRequest3.json +33 -0
- package/tests/common-resources/locationRequest/locationRequest4.json +31 -0
- package/tests/common-resources/locationStatus/locationStatus1.json +4 -0
- package/tests/common-resources/locationStatus/locationStatus10.json +4 -0
- package/tests/common-resources/locationStatus/locationStatus11.json +4 -0
- package/tests/common-resources/locationStatus/locationStatus12.json +4 -0
- package/tests/common-resources/locationStatus/locationStatus13.json +4 -0
- package/tests/common-resources/locationStatus/locationStatus2.json +4 -0
- package/tests/common-resources/locationStatus/locationStatus3.json +4 -0
- package/tests/common-resources/locationStatus/locationStatus4.json +4 -0
- package/tests/common-resources/locationStatus/locationStatus5.json +4 -0
- package/tests/common-resources/locationStatus/locationStatus6.json +4 -0
- package/tests/common-resources/locationStatus/locationStatus7.json +4 -0
- package/tests/common-resources/locationStatus/locationStatus8.json +4 -0
- package/tests/common-resources/locationStatus/locationStatus9.json +4 -0
- package/tests/common-resources/navigationProgress/navigationProgress1.json +77 -0
- package/tests/common-resources/navigationProgress/navigationProgress2.json +77 -0
- package/tests/common-resources/poi/poi1.json +35 -0
- package/tests/common-resources/poi/poi2.json +35 -0
- package/tests/common-resources/poi/poi3.json +35 -0
- package/tests/common-resources/poi/poi4.json +38 -0
- package/tests/common-resources/poi/poi5.json +35 -0
- package/tests/common-resources/poiCategory/poiCategory1.json +7 -0
- package/tests/common-resources/poiCategoryIcon/poiCategoryIcon1.json +1 -0
- package/tests/common-resources/poiCategoryIcon/poiCategoryIcon1.png +0 -0
- package/tests/common-resources/point/point1.json +14 -0
- package/tests/common-resources/point/point2.json +14 -0
- package/tests/common-resources/point/point3.json +14 -0
- package/tests/common-resources/point/point4.json +14 -0
- package/tests/common-resources/point/point5.json +14 -0
- package/tests/common-resources/point/point6.json +14 -0
- package/tests/common-resources/point/point7.json +14 -0
- package/tests/common-resources/point/point8.json +14 -0
- package/tests/common-resources/route/route1.json +530 -0
- package/tests/common-resources/routeStep/routeStep1.json +35 -0
- package/tests/common-resources/routeStep/routeStep2.json +35 -0
- package/tests/common-resources/routeStep/routeStep3.json +35 -0
- package/tests/common-resources/routeStep/routeStep4.json +35 -0
- package/tests/common-resources/routeStep/routeStep5.json +35 -0
- package/tests/common-resources/situmConversionArea/situmConversionArea1.json +19 -0
- package/tests/js/resources/fetchBuildings.json +176 -0
- package/tests/js/resources/fetchEventsFromBuilding.json +201 -0
- package/tests/js/resources/fetchFloorsFromBuilding.json +34 -0
- package/tests/js/resources/fetchIndoorPOIsFromBuilding.json +574 -0
- package/tests/js/resources/fetchMapFromFloor.json +3 -0
- package/tests/js/resources/fetchOutdoorPOIsFromBuilding.json +68 -0
- package/tests/js/resources/fetchPoiCategories.json +72 -0
- package/tests/js/resources/fetchPoiCategoryIconNormal.json +3 -0
- package/tests/js/resources/fetchPoiCategoryIconSelected.json +3 -0
- package/tests/js/resources/requestDirections.json +1167 -0
- package/tests/js/resources/startPositioning/0_starting.json +4 -0
- package/tests/js/resources/startPositioning/1_preparingPositioningModel.json +4 -0
- package/tests/js/resources/startPositioning/2_startingPositioning.json +4 -0
- package/tests/js/resources/startPositioning/3_calculating.json +4 -0
- package/tests/js/resources/startPositioning/4_position.json +48 -0
- package/tests/js/resources/startPositioning/5_position.json +48 -0
- package/tests/js/test.js +416 -0
- package/tests/scripts/clean_android_resources.sh +3 -0
- package/tests/scripts/clean_ios_resources.sh +3 -0
- package/tests/scripts/copy_android_resources.sh +3 -0
- package/tests/scripts/copy_ios_resources.sh +3 -0
- package/tests/scripts/self-destruct.sh +1 -0
- package/www/android/Interfaces.js +742 -0
- package/www/android/situm.js +296 -0
- package/www/ios/situm.js +99 -0
- package/www/map-view-controller.js +223 -0
- package/www/map-view.js +88 -0
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
//
|
|
2
|
+
// TestingHelper.h
|
|
3
|
+
// situmcordovapluginTests
|
|
4
|
+
//
|
|
5
|
+
// Created by Situm on 24/7/18.
|
|
6
|
+
// Copyright © 2018 Situm. All rights reserved.
|
|
7
|
+
//
|
|
8
|
+
|
|
9
|
+
#import <XCTest/XCTest.h>
|
|
10
|
+
#import <Foundation/Foundation.h>
|
|
11
|
+
#import "SitumLocationWrapper.h"
|
|
12
|
+
|
|
13
|
+
@interface TestingHelper : XCTestCase
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
+ (id)dataFromJSONFileNamed:(NSString *)fileName inDirectory:(NSString *) pathResources;
|
|
17
|
+
- (void) assertCoordinate: (NSDictionary *) jsonCoordinateFile : (NSDictionary *) coordinateJO;
|
|
18
|
+
- (void) assertCartesianCoordinate: (NSDictionary *) jsonCartesianCoordinateFile : (NSDictionary *) cartesianCoordinateJO;
|
|
19
|
+
- (void) assertAngle: (NSDictionary *) jsonAngleFile : (NSDictionary *) angleJO;
|
|
20
|
+
- (void) assertBound: (NSDictionary *) jsonBoundFile : (NSDictionary *) boundJO;
|
|
21
|
+
- (void) assertBuilding: (NSDictionary *) jsonBuildingFile : (NSDictionary *) buildingJO;
|
|
22
|
+
- (void) assertDimension: (NSDictionary *) jsonDimensionFile : (NSDictionary *) dimensionJO;
|
|
23
|
+
- (void) assertEvent: (NSDictionary *) jsonEventFile : (NSDictionary *) eventJO;
|
|
24
|
+
- (void) assertFloor: (NSDictionary *) jsonFloorFile : (NSDictionary *) floorJO;
|
|
25
|
+
- (void) assertIndication: (NSDictionary *) jsonIndicationFile : (NSDictionary *) indicationJO;
|
|
26
|
+
- (void) assertLocation: (NSDictionary *) jsonLocationFile : (NSDictionary *) locationJO;
|
|
27
|
+
- (void) assertLocationStatus: (NSDictionary *) jsonLocationStatusFile : (NSDictionary *) locationStatusJO;
|
|
28
|
+
- (void) assertNavigationProgress: (NSDictionary *) jsonNavigationProgressFile : (NSDictionary *) navigationProgressJO;
|
|
29
|
+
- (void) assertPoi: (NSDictionary *) jsonPoiFile : (NSDictionary *) poiJO;
|
|
30
|
+
- (void) assertImage: (NSDictionary *) jsonImageFile : (NSDictionary *) imageJO;
|
|
31
|
+
- (void) assertPoint: (NSDictionary *) jsonPointFile : (NSDictionary *) pointJO;
|
|
32
|
+
- (void) assertRoute: (NSDictionary *) jsonRouteFile : (NSDictionary *) routeJO;
|
|
33
|
+
- (void) assertRouteStep: (NSDictionary *) jsonRouteStepFile : (NSDictionary *) routeStepJO;
|
|
34
|
+
- (void) assertConversionArea:(NSDictionary *) jsonConversionAreaFile : (NSDictionary *) conversionAreaJO;
|
|
35
|
+
|
|
36
|
+
#pragma MARK Input tests methods
|
|
37
|
+
|
|
38
|
+
- (void) assertCoordinate: (CLLocationCoordinate2D) coordinateA isEqualToCoordinate: (CLLocationCoordinate2D) coordinateB;
|
|
39
|
+
- (void) assertCartesianCoordinate: (SITCartesianCoordinate*) coordinateA isEqualToCartesianCoordinate: (SITCartesianCoordinate*) coordinateB;
|
|
40
|
+
- (void) assertPoint: (SITPoint*) pointA isEqualToPoint: (SITPoint*) pointB;
|
|
41
|
+
- (void) assertLocationRequest: (SITLocationRequest *) requestA isEqualToLocationRequest: (SITLocationRequest *) requestB;
|
|
42
|
+
- (void) assertDirectionsRequest: (SITDirectionsRequest *) requestA isEqualToDirectionsRequest: (SITDirectionsRequest *) requestB;
|
|
43
|
+
- (void) assertLocation: (SITLocation*) locationA isEqualToLocation: (SITLocation*) locationB;
|
|
44
|
+
- (void) assertPoiCategory: (SITPOICategory*) poiCategoryA isEqualToPoiCategory: (SITPOICategory*) poiCategoryB;
|
|
45
|
+
- (void) assertIndication: (SITIndication*) indicationA isEqualToIndication: (SITIndication*) indicationB;
|
|
46
|
+
- (void) assertFloor: (SITFloor *) floorA isEqualToFloor :(SITFloor *) floorB;
|
|
47
|
+
|
|
48
|
+
@end
|
|
@@ -0,0 +1,342 @@
|
|
|
1
|
+
//
|
|
2
|
+
// TestingHelper.m
|
|
3
|
+
// situmcordovapluginTests
|
|
4
|
+
//
|
|
5
|
+
// Created by Situm on 24/7/18.
|
|
6
|
+
// Copyright © 2018 Situm. All rights reserved.
|
|
7
|
+
//
|
|
8
|
+
#import "TestingHelper.h"
|
|
9
|
+
#import <XCTest/XCTest.h>
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
@implementation TestingHelper
|
|
14
|
+
|
|
15
|
+
+ (id)dataFromJSONFileNamed:(NSString *)fileName inDirectory: (NSString *)pathResources {
|
|
16
|
+
//get file path relative to project for avoiding CI integration problems
|
|
17
|
+
NSString *filePath = [[NSBundle bundleForClass:[self class]] pathForResource:fileName
|
|
18
|
+
ofType:@"json"
|
|
19
|
+
inDirectory:pathResources];
|
|
20
|
+
NSDictionary *json = [[NSMutableDictionary alloc] init];
|
|
21
|
+
//check file exists
|
|
22
|
+
if (filePath) {
|
|
23
|
+
//retrieve file content
|
|
24
|
+
NSData *data = [[NSData alloc] initWithContentsOfFile:filePath];
|
|
25
|
+
|
|
26
|
+
//convert JSON NSData to a usable NSDictionary
|
|
27
|
+
NSError *error;
|
|
28
|
+
json = [NSJSONSerialization JSONObjectWithData:data
|
|
29
|
+
options:0
|
|
30
|
+
error:&error];
|
|
31
|
+
if (error) {
|
|
32
|
+
NSLog(@"Something went wrong! %@", error.localizedDescription);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
NSLog(@"Couldn't find file!");
|
|
37
|
+
}
|
|
38
|
+
return json.copy;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
- (void) assertCoordinate: (NSDictionary *) jsonCoordinateFile : (NSDictionary *) coordinateJO {
|
|
42
|
+
XCTAssertEqualWithAccuracy([jsonCoordinateFile[@"longitude"] doubleValue], [coordinateJO[@"longitude"] doubleValue], 0.001);
|
|
43
|
+
XCTAssertEqualWithAccuracy([jsonCoordinateFile[@"latitude"] doubleValue], [coordinateJO[@"latitude"] doubleValue], 0.001);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
- (void) assertCartesianCoordinate: (NSDictionary *) jsonCartesianCoordinateFile : (NSDictionary *) cartesianCoordinateJO {
|
|
47
|
+
XCTAssertEqualWithAccuracy([jsonCartesianCoordinateFile[@"x"] doubleValue], [cartesianCoordinateJO[@"x"] doubleValue], 0.0001);
|
|
48
|
+
XCTAssertEqualWithAccuracy([jsonCartesianCoordinateFile[@"y"] doubleValue], [cartesianCoordinateJO[@"y"] doubleValue], 0.0001);
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
- (void) assertAngle: (NSDictionary *) jsonAngleFile : (NSDictionary *) angleJO;
|
|
52
|
+
{
|
|
53
|
+
XCTAssertEqualWithAccuracy([jsonAngleFile[@"radiansMinusPiPi"] doubleValue], [angleJO[@"radiansMinusPiPi"] doubleValue], 0.0001);
|
|
54
|
+
XCTAssertEqualWithAccuracy([jsonAngleFile[@"radians"] doubleValue], [angleJO[@"radians"] doubleValue], 0.0001);
|
|
55
|
+
XCTAssertEqualWithAccuracy([jsonAngleFile[@"degreesClockwise"] doubleValue], [angleJO[@"degreesClockwise"] doubleValue], 0.0001);
|
|
56
|
+
XCTAssertEqualWithAccuracy([jsonAngleFile[@"degrees"] doubleValue], [angleJO[@"degrees"] doubleValue], 0.0001);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
- (void) assertBound: (NSDictionary *) jsonBoundFile : (NSDictionary *) boundJO {
|
|
60
|
+
XCTAssertEqualWithAccuracy([jsonBoundFile[@"northWest"][@"latitude"] doubleValue], [boundJO[@"northWest"][@"latitude"] doubleValue], 0.0001);
|
|
61
|
+
XCTAssertEqualWithAccuracy([jsonBoundFile[@"northWest"][@"longitude"] doubleValue], [boundJO[@"northWest"][@"longitude"] doubleValue], 0.0001);
|
|
62
|
+
XCTAssertEqualWithAccuracy([jsonBoundFile[@"northEast"][@"latitude"] doubleValue], [boundJO[@"northEast"][@"latitude"] doubleValue], 0.0001);
|
|
63
|
+
XCTAssertEqualWithAccuracy([jsonBoundFile[@"northEast"][@"longitude"] doubleValue], [boundJO[@"northEast"][@"longitude"] doubleValue], 0.0001);
|
|
64
|
+
XCTAssertEqualWithAccuracy([jsonBoundFile[@"southWest"][@"latitude"] doubleValue], [boundJO[@"southWest"][@"latitude"] doubleValue], 0.0001);
|
|
65
|
+
XCTAssertEqualWithAccuracy([jsonBoundFile[@"southWest"][@"longitude"] doubleValue], [boundJO[@"southWest"][@"longitude"] doubleValue], 0.0001);
|
|
66
|
+
XCTAssertEqualWithAccuracy([jsonBoundFile[@"southEast"][@"latitude"] doubleValue], [boundJO[@"southEast"][@"latitude"] doubleValue], 0.0001);
|
|
67
|
+
XCTAssertEqualWithAccuracy([jsonBoundFile[@"southEast"][@"longitude"] doubleValue], [boundJO[@"southEast"][@"longitude"] doubleValue], 0.0001);
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
- (void) assertBuilding: (NSDictionary *) jsonBuildingFile : (NSDictionary *) buildingJO {
|
|
71
|
+
XCTAssertEqualObjects(jsonBuildingFile[@"address"], buildingJO[@"address"]);
|
|
72
|
+
[self assertBound: jsonBuildingFile[@"bounds"][@"northEast"]: buildingJO[@"bounds"][@"northEast"]];
|
|
73
|
+
[self assertBound: jsonBuildingFile[@"bounds"][@"northWest"]: buildingJO[@"bounds"][@"northWest"]];
|
|
74
|
+
[self assertBound: jsonBuildingFile[@"bounds"][@"southEast"]: buildingJO[@"bounds"][@"southEast"]];
|
|
75
|
+
[self assertBound: jsonBuildingFile[@"bounds"][@"southWest"]: buildingJO[@"bounds"][@"southWest"]];
|
|
76
|
+
[self assertBound: jsonBuildingFile[@"boundsRotated"][@"northEast"]: buildingJO[@"boundsRotated"][@"northEast"]];
|
|
77
|
+
[self assertBound: jsonBuildingFile[@"boundsRotated"][@"northWest"]: buildingJO[@"boundsRotated"][@"northWest"]];
|
|
78
|
+
[self assertBound: jsonBuildingFile[@"boundsRotated"][@"southEast"]: buildingJO[@"boundsRotated"][@"southEast"]];
|
|
79
|
+
[self assertBound: jsonBuildingFile[@"boundsRotated"][@"southWest"]: buildingJO[@"boundsRotated"][@"southWest"]];
|
|
80
|
+
[self assertBound: jsonBuildingFile[@"center"]: buildingJO[@"center"]];
|
|
81
|
+
[self assertDimension: jsonBuildingFile[@"dimensions"]: buildingJO[@"dimensions"]];
|
|
82
|
+
XCTAssertEqualObjects(jsonBuildingFile[@"infoHtml"], buildingJO[@"infoHtml"]);
|
|
83
|
+
XCTAssertEqualObjects(jsonBuildingFile[@"pictureThumbUrl"], buildingJO[@"pictureThumbUrl"]);
|
|
84
|
+
XCTAssertEqualObjects(jsonBuildingFile[@"pictureUrl"], buildingJO[@"pictureUrl"]);
|
|
85
|
+
XCTAssertEqualWithAccuracy([jsonBuildingFile[@"pictureUrl"] doubleValue], [buildingJO[@"pictureUrl"] doubleValue], 0.0001);
|
|
86
|
+
XCTAssertEqualObjects(jsonBuildingFile[@"name"], buildingJO[@"name"]);
|
|
87
|
+
XCTAssertEqualWithAccuracy([jsonBuildingFile[@"rotation"] doubleValue], [buildingJO[@"rotation"] doubleValue], 0.0001);
|
|
88
|
+
XCTAssertEqualObjects(jsonBuildingFile[@"updatedAt"], buildingJO[@"updatedAt"]);
|
|
89
|
+
XCTAssertEqualObjects(jsonBuildingFile[@"createdAt"], buildingJO[@"createdAt"]);
|
|
90
|
+
XCTAssertEqualObjects(jsonBuildingFile[@"userIdentifier"], buildingJO[@"userIdentifier"]);
|
|
91
|
+
XCTAssertEqualObjects(jsonBuildingFile[@"customFields"], buildingJO[@"customFields"]);
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
- (void) assertDimension: (NSDictionary *) jsonDimensionFile : (NSDictionary *) dimensionJO {
|
|
95
|
+
XCTAssertEqualWithAccuracy([jsonDimensionFile[@"width"] doubleValue], [dimensionJO[@"width"] doubleValue], 0.0001);
|
|
96
|
+
XCTAssertEqualWithAccuracy([jsonDimensionFile[@"height"] doubleValue], [dimensionJO[@"height"] doubleValue], 0.0001);
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
- (void) assertEvent: (NSDictionary *) jsonEventFile : (NSDictionary *) eventJO {
|
|
100
|
+
XCTAssertEqualObjects(jsonEventFile[@"identifier"], eventJO[@"identifier"]);
|
|
101
|
+
XCTAssertEqualObjects(jsonEventFile[@"buildingIdentifier"], eventJO[@"buildingIdentifier"]);
|
|
102
|
+
XCTAssertEqualObjects(jsonEventFile[@"infoHtml"], eventJO[@"infoHtml"]);
|
|
103
|
+
[self assertCircularArea:jsonEventFile[@"trigger"] :eventJO[@"trigger"]];
|
|
104
|
+
[self assertCircularArea:jsonEventFile[@"conversion"] :eventJO[@"conversion"]];
|
|
105
|
+
XCTAssertEqualObjects(jsonEventFile[@"name"], eventJO[@"name"]);
|
|
106
|
+
XCTAssertEqualObjects(jsonEventFile[@"customFields"], eventJO[@"customFields"]);
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
- (void) assertCircularArea: (NSDictionary *) jsonCircularAreaFile : (NSDictionary *) circularAreaJO {
|
|
110
|
+
[self assertPoint:jsonCircularAreaFile[@"center"] :circularAreaJO[@"center"]];
|
|
111
|
+
XCTAssertEqualObjects(jsonCircularAreaFile[@"radius"], circularAreaJO[@"radius"]);
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
- (void) assertFloor: (NSDictionary *) jsonFloorFile : (NSDictionary *) floorJO {
|
|
115
|
+
XCTAssertEqualWithAccuracy([jsonFloorFile[@"altitude"] doubleValue], [floorJO[@"altitude"] doubleValue], 0.0001);
|
|
116
|
+
XCTAssertEqualWithAccuracy([jsonFloorFile[@"level"] doubleValue], [floorJO[@"level"] doubleValue], 0.0001);
|
|
117
|
+
XCTAssertEqualWithAccuracy([jsonFloorFile[@"scale"] doubleValue], [floorJO[@"scale"] doubleValue], 0.0001);
|
|
118
|
+
XCTAssertEqualObjects(jsonFloorFile[@"floorIdentifier"], jsonFloorFile[@"floorIdentifier"]);
|
|
119
|
+
XCTAssertEqualObjects(jsonFloorFile[@"mapUrl"], jsonFloorFile[@"mapUrl"]);
|
|
120
|
+
XCTAssertEqualObjects(jsonFloorFile[@"buildingIdentifier"], jsonFloorFile[@"buildingIdentifier"]);
|
|
121
|
+
XCTAssertEqualObjects(jsonFloorFile[@"createdAt"], jsonFloorFile[@"createdAt"]);
|
|
122
|
+
XCTAssertEqualObjects(jsonFloorFile[@"updatedAt"], jsonFloorFile[@"updatedAt"]);
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
- (void) assertIndication: (NSDictionary *) jsonIndicationFile : (NSDictionary *) indicationJO {
|
|
126
|
+
XCTAssertEqualWithAccuracy([jsonIndicationFile[@"orientation"] doubleValue], [indicationJO[@"orientation"] doubleValue], 0.0001);
|
|
127
|
+
XCTAssertEqualWithAccuracy([jsonIndicationFile[@"stepIdxDestination"] doubleValue], [indicationJO[@"stepIdxDestination"] doubleValue], 0.0001);
|
|
128
|
+
XCTAssertEqualWithAccuracy([jsonIndicationFile[@"distance"] doubleValue], [indicationJO[@"distance"] doubleValue], 0.0001);
|
|
129
|
+
XCTAssertEqualWithAccuracy([jsonIndicationFile[@"stepIdxOrigin"] doubleValue], [indicationJO[@"stepIdxOrigin"] doubleValue], 0.0001);
|
|
130
|
+
XCTAssertEqualWithAccuracy([jsonIndicationFile[@"distanceToNextLevel"] doubleValue], [indicationJO[@"distanceToNextLevel"] doubleValue], 0.0001);
|
|
131
|
+
XCTAssertEqualObjects(jsonIndicationFile[@"orientationType"], indicationJO[@"orientationType"]);
|
|
132
|
+
XCTAssertEqualObjects(jsonIndicationFile[@"indicationType"], indicationJO[@"indicationType"]);
|
|
133
|
+
XCTAssertEqualObjects(jsonIndicationFile[@"stepIdxOrigin"], indicationJO[@"stepIdxOrigin"]);
|
|
134
|
+
XCTAssertEqualObjects(jsonIndicationFile[@"buildingIdentifier"], indicationJO[@"buildingIdentifier"]);
|
|
135
|
+
XCTAssertEqualObjects(jsonIndicationFile[@"neededLevelChange"], indicationJO[@"neededLevelChange"]);
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
- (void) assertLocation: (NSDictionary *) jsonLocationFile : (NSDictionary *) locationJO {
|
|
139
|
+
XCTAssertEqualObjects(jsonLocationFile[@"accuracy"], locationJO[@"accuracy"]);
|
|
140
|
+
XCTAssertEqualObjects(jsonLocationFile[@"provider"], locationJO[@"provider"]);
|
|
141
|
+
XCTAssertEqualObjects(jsonLocationFile[@"buildingIdentifier"], locationJO[@"buildingIdentifier"]);
|
|
142
|
+
XCTAssertEqualObjects(jsonLocationFile[@"floorIdentifier"], locationJO[@"floorIdentifier"]);
|
|
143
|
+
XCTAssertEqualObjects(jsonLocationFile[@"bearingQuality"], locationJO[@"bearingQuality"]);
|
|
144
|
+
XCTAssertEqualObjects(jsonLocationFile[@"quality"], locationJO[@"quality"]);
|
|
145
|
+
[self assertPoint:jsonLocationFile[@"position"]:locationJO[@"position"]];
|
|
146
|
+
[self assertCoordinate:jsonLocationFile[@"coordinate"]:locationJO[@"coordinate"]];
|
|
147
|
+
[self assertCartesianCoordinate:jsonLocationFile[@"cartesianCoordinate"]:locationJO[@"cartesianCoordinate"]];
|
|
148
|
+
[self assertAngle:jsonLocationFile[@"cartesianBearing"]:locationJO[@"cartesianBearing"]];
|
|
149
|
+
XCTAssertEqual(jsonLocationFile[@"hasBearing"], locationJO[@"hasBearing"]);
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
- (void) assertLocationStatus: (NSDictionary *) jsonLocationStatusFile : (NSDictionary *) locationStatusJO;
|
|
153
|
+
{
|
|
154
|
+
XCTAssert([jsonLocationStatusFile[@"statusName"] isEqualToString: locationStatusJO[@"statusName"]]);
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
- (void) assertNavigationProgress: (NSDictionary *) jsonNavigationProgressFile : (NSDictionary *) navigationProgressJO;
|
|
158
|
+
{
|
|
159
|
+
[self assertIndication:jsonNavigationProgressFile[@"currentIndication"]:navigationProgressJO[@"currentIndication"]];
|
|
160
|
+
[self assertIndication:jsonNavigationProgressFile[@"nextIndication"]:navigationProgressJO[@"nextIndication"]];
|
|
161
|
+
XCTAssertEqualWithAccuracy([jsonNavigationProgressFile[@"distanceToEndStep"] doubleValue], [navigationProgressJO[@"distanceToEndStep"] doubleValue], 0.0001);
|
|
162
|
+
XCTAssertEqualWithAccuracy([jsonNavigationProgressFile[@"distanceToClosestPointInRoute"] doubleValue], [navigationProgressJO[@"distanceToClosestPointInRoute"] doubleValue], 0.0001);
|
|
163
|
+
XCTAssertEqualObjects(jsonNavigationProgressFile[@"closestPointInRoute"], jsonNavigationProgressFile[@"closestPointInRoute"]);
|
|
164
|
+
XCTAssertEqualWithAccuracy([jsonNavigationProgressFile[@"timeToEndStep"] doubleValue], [navigationProgressJO[@"timeToEndStep"] doubleValue], 0.0001);
|
|
165
|
+
XCTAssertEqualWithAccuracy([jsonNavigationProgressFile[@"timeToGoal"] doubleValue], [navigationProgressJO[@"timeToGoal"] doubleValue], 0.0001);
|
|
166
|
+
XCTAssertEqualWithAccuracy([jsonNavigationProgressFile[@"currentStepIndex"] doubleValue], [navigationProgressJO[@"currentStepIndex"] doubleValue], 0.0001);
|
|
167
|
+
XCTAssertEqualWithAccuracy([jsonNavigationProgressFile[@"distanceToGoal"] doubleValue], [navigationProgressJO[@"distanceToGoal"] doubleValue], 0.0001);
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
- (void) assertPoi: (NSDictionary *) jsonPoiFile : (NSDictionary *) poiJO {
|
|
171
|
+
XCTAssertEqualObjects(jsonPoiFile[@"identifier"], poiJO[@"identifier"]);
|
|
172
|
+
[self assertCoordinate:jsonPoiFile[@"coordinate"]:poiJO[@"coordinate"]];
|
|
173
|
+
XCTAssertEqualObjects(jsonPoiFile[@"poiName"], poiJO[@"poiName"]);
|
|
174
|
+
XCTAssertEqualObjects(jsonPoiFile[@"customFields"], poiJO[@"customFields"]);
|
|
175
|
+
XCTAssertEqualObjects(jsonPoiFile[@"isIndoor"], poiJO[@"isIndoor"]);
|
|
176
|
+
XCTAssertEqualObjects(jsonPoiFile[@"infoHtml"], poiJO[@"infoHtml"]);
|
|
177
|
+
XCTAssertEqualObjects(jsonPoiFile[@"buildingIdentifier"], poiJO[@"buildingIdentifier"]);
|
|
178
|
+
XCTAssertEqualObjects(jsonPoiFile[@"isOutdoor"], poiJO[@"isOutdoor"]);
|
|
179
|
+
XCTAssertEqualObjects(jsonPoiFile[@"createdAt"], poiJO[@"createdAt"]);
|
|
180
|
+
XCTAssertEqualObjects(jsonPoiFile[@"floorIdentifier"], poiJO[@"floorIdentifier"]);
|
|
181
|
+
[self assertCartesianCoordinate:jsonPoiFile[@"cartesianCoordinate"] :poiJO[@"cartesianCoordinate"]];
|
|
182
|
+
[self assertPoint: jsonPoiFile[@"position"]:poiJO[@"position"]];
|
|
183
|
+
XCTAssertEqualObjects(jsonPoiFile[@"category"], poiJO[@"category"]);
|
|
184
|
+
XCTAssertEqualObjects(jsonPoiFile[@"updatedAt"], poiJO[@"updatedAt"]);
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
- (void) assertImage: (NSDictionary *) jsonImageFile : (NSDictionary *) imageJO {
|
|
188
|
+
XCTAssert([jsonImageFile[@"data"] isEqualToString: imageJO[@"data"]]);
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
- (void) assertPoint: (NSDictionary *) jsonPointFile : (NSDictionary *) pointJO {
|
|
192
|
+
[self assertCoordinate:jsonPointFile[@"coordinate"]:pointJO[@"coordinate"]];
|
|
193
|
+
[self assertCartesianCoordinate:jsonPointFile[@"cartesianCoordinate"]:pointJO[@"cartesianCoordinate"]];
|
|
194
|
+
XCTAssertEqualObjects(jsonPointFile[@"floorIdentifier"], pointJO[@"floorIdentifier"]);
|
|
195
|
+
XCTAssert(jsonPointFile[@"isIndoor"] == pointJO[@"isIndoor"]);
|
|
196
|
+
XCTAssertEqualObjects(jsonPointFile[@"buildingIdentifier"], pointJO[@"buildingIdentifier"]);
|
|
197
|
+
XCTAssert(jsonPointFile[@"isOutdoor"] == pointJO[@"isOutdoor"]);
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
- (void) assertRoute: (NSDictionary *) jsonRouteFile : (NSDictionary *) routeJO {
|
|
201
|
+
[self assertRouteStep:[jsonRouteFile[@"steps"] objectAtIndex:0]:[routeJO[@"steps"] objectAtIndex:0]];
|
|
202
|
+
[self assertRouteStep:[jsonRouteFile[@"steps"] objectAtIndex:1]:[routeJO[@"steps"] objectAtIndex:1]];
|
|
203
|
+
[self assertRouteStep:[jsonRouteFile[@"steps"] objectAtIndex:2]:[routeJO[@"steps"] objectAtIndex:2]];
|
|
204
|
+
[self assertIndication:[jsonRouteFile[@"indications"] objectAtIndex:0]:[routeJO[@"indications"] objectAtIndex:0]];
|
|
205
|
+
[self assertIndication:[jsonRouteFile[@"indications"] objectAtIndex:1]:[routeJO[@"indications"] objectAtIndex:1]];
|
|
206
|
+
[self assertIndication:[jsonRouteFile[@"indications"] objectAtIndex:2]:[routeJO[@"indications"] objectAtIndex:2]];
|
|
207
|
+
[self assertPoint:jsonRouteFile[@"from"]:routeJO[@"from"]];
|
|
208
|
+
//TODO review TO vs to
|
|
209
|
+
[self assertPoint:jsonRouteFile[@"TO"]:routeJO[@"to"]];
|
|
210
|
+
[self assertRouteSegment: [jsonRouteFile[@"segments"] objectAtIndex: 0] : [routeJO[@"segments"] objectAtIndex: 0]];
|
|
211
|
+
[self assertRouteSegment: [jsonRouteFile[@"segments"] objectAtIndex: 1] : [routeJO[@"segments"] objectAtIndex: 1]];
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
- (void) assertRouteStep: (NSDictionary *) jsonRouteStepFile : (NSDictionary *) routeStepJO;
|
|
215
|
+
{
|
|
216
|
+
XCTAssertEqualObjects(jsonRouteStepFile[@"isFirst"], routeStepJO[@"isFirst"]);
|
|
217
|
+
//TODO review constructor for SITRouteStep and stepDistance parameter passed
|
|
218
|
+
XCTAssertEqualWithAccuracy([jsonRouteStepFile[@"distance"] doubleValue], [routeStepJO[@"distance"] doubleValue], 0.0001);
|
|
219
|
+
XCTAssertEqualObjects(jsonRouteStepFile[@"isLast"], routeStepJO[@"isLast"]);
|
|
220
|
+
XCTAssertEqualWithAccuracy([jsonRouteStepFile[@"distanceToGoal"] doubleValue], [routeStepJO[@"distanceToGoal"] doubleValue], 0.0001);
|
|
221
|
+
XCTAssertEqualObjects(jsonRouteStepFile[@"id"], routeStepJO[@"id"]);
|
|
222
|
+
[self assertPoint:jsonRouteStepFile[@"from"]:routeStepJO[@"from"]];
|
|
223
|
+
[self assertPoint:jsonRouteStepFile[@"TO"]:routeStepJO[@"TO"]];
|
|
224
|
+
}
|
|
225
|
+
|
|
226
|
+
- (void) assertRouteSegment: (NSDictionary *) jsonRouteStepFile : (NSDictionary *) routeStepJO {
|
|
227
|
+
|
|
228
|
+
XCTAssertEqualObjects(jsonRouteStepFile[@"floorIdentifier"], routeStepJO[@"floorIdentifier"]);
|
|
229
|
+
for(int i = 0; i < [jsonRouteStepFile[@"points"] count]; i++) {
|
|
230
|
+
[self assertPoint: [jsonRouteStepFile[@"points"] objectAtIndex: i] : [routeStepJO[@"points"] objectAtIndex: i]];
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
- (void) assertConversionArea:(NSDictionary *) jsonConversionAreaFile : (NSDictionary *) conversionAreaJO;
|
|
235
|
+
{
|
|
236
|
+
XCTAssertEqualWithAccuracy([jsonConversionAreaFile[@"bottomLeft"][@"x"] doubleValue], [conversionAreaJO[@"bottomLeft"][@"x"] doubleValue], 0.0001);
|
|
237
|
+
XCTAssertEqualWithAccuracy([jsonConversionAreaFile[@"bottomLeft"][@"y"] doubleValue], [conversionAreaJO[@"bottomLeft"][@"y"] doubleValue], 0.0001);
|
|
238
|
+
XCTAssertEqualWithAccuracy([jsonConversionAreaFile[@"bottomRight"][@"x"] doubleValue], [conversionAreaJO[@"bottomRight"][@"x"] doubleValue], 0.0001);
|
|
239
|
+
XCTAssertEqualWithAccuracy([jsonConversionAreaFile[@"bottomRight"][@"y"] doubleValue], [conversionAreaJO[@"bottomRight"][@"y"] doubleValue], 0.0001);
|
|
240
|
+
XCTAssertEqualWithAccuracy([jsonConversionAreaFile[@"topLeft"][@"x"] doubleValue], [conversionAreaJO[@"topLeft"][@"x"] doubleValue], 0.0001);
|
|
241
|
+
XCTAssertEqualWithAccuracy([jsonConversionAreaFile[@"topLeft"][@"y"] doubleValue], [conversionAreaJO[@"topLeft"][@"y"] doubleValue], 0.0001);
|
|
242
|
+
XCTAssertEqualWithAccuracy([jsonConversionAreaFile[@"topRight"][@"x"] doubleValue], [conversionAreaJO[@"topRight"][@"x"] doubleValue], 0.0001);
|
|
243
|
+
XCTAssertEqualWithAccuracy([jsonConversionAreaFile[@"topRight"][@"y"] doubleValue], [conversionAreaJO[@"topRight"][@"y"] doubleValue], 0.0001);
|
|
244
|
+
//TODO floorIdentifier is set in indoorPoint
|
|
245
|
+
//XCTAssertEqualWithAccuracy([jsonConversionAreaFile[@"floorIdentifier"] doubleValue], [conversionAreaJO[@"floorIdentifier"] doubleValue], 0.0001);
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
- (void) assertCoordinate: (CLLocationCoordinate2D) coordinateA isEqualToCoordinate: (CLLocationCoordinate2D) coordinateB {
|
|
249
|
+
XCTAssertEqualWithAccuracy(coordinateA.latitude, coordinateB.latitude, 0.001, @"Coordinate: latitude wasn't equal.");
|
|
250
|
+
XCTAssertEqualWithAccuracy(coordinateA.longitude, coordinateB.longitude, 0.001, @"Coordinate: longitude wasn't equal.");
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
- (void) assertCartesianCoordinate: (SITCartesianCoordinate*) coordinateA isEqualToCartesianCoordinate: (SITCartesianCoordinate*) coordinateB {
|
|
254
|
+
XCTAssertEqualWithAccuracy(coordinateA.x, coordinateB.x, 0.0001, @"SITCartesianCoordinate: X value wasn't equal.");
|
|
255
|
+
XCTAssertEqualWithAccuracy(coordinateA.y, coordinateB.y, 0.0001, @"SITCartesianCoordinate: Y value wasn't equal.");
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
- (void) assertAngle: (SITAngle*) angleA isEqualToAngle: (SITAngle*) angleB {
|
|
259
|
+
XCTAssertEqualWithAccuracy(angleA.degrees, angleB.degrees, 0.0001);
|
|
260
|
+
XCTAssertEqualWithAccuracy(angleA.radians, angleB.radians, 0.0001);
|
|
261
|
+
XCTAssertEqualWithAccuracy(angleA.degressClockwise, angleB.degressClockwise, 0.0001);
|
|
262
|
+
XCTAssertEqualWithAccuracy(angleA.radiansMinusPiPi, angleB.radiansMinusPiPi, 0.0001);
|
|
263
|
+
}
|
|
264
|
+
|
|
265
|
+
- (void) assertPoint: (SITPoint*) pointA isEqualToPoint: (SITPoint*) pointB {
|
|
266
|
+
[self assertCoordinate: pointA.coordinate isEqualToCoordinate: pointB.coordinate];
|
|
267
|
+
[self assertCartesianCoordinate: pointA.cartesianCoordinate isEqualToCartesianCoordinate: pointB.cartesianCoordinate];
|
|
268
|
+
XCTAssertEqualObjects(pointA.buildingIdentifier, pointB.buildingIdentifier, @"SITPoint: building identifier wasn't equal.");
|
|
269
|
+
XCTAssertEqualObjects(pointA.floorIdentifier, pointB.floorIdentifier, @"SITPoint: floor identifier wasn't equal.");
|
|
270
|
+
XCTAssertTrue(pointA.isIndoor == pointB.isIndoor, @"SITPoint: isIndoor bool wasn't equal.");
|
|
271
|
+
XCTAssertTrue(pointA.isOutdoor == pointB.isOutdoor, @"SITPoint: isOutdoor bool wasn't equal.");
|
|
272
|
+
}
|
|
273
|
+
|
|
274
|
+
- (void) assertLocationRequest: (SITLocationRequest *) requestA isEqualToLocationRequest: (SITLocationRequest *) requestB {
|
|
275
|
+
XCTAssertEqualObjects(requestA.buildingID, requestB.buildingID, @"LocationRequest: building identifier wasn't equal");
|
|
276
|
+
XCTAssertEqual(requestA.useDeadReckoning, requestB.useDeadReckoning, @"LocationRequest: useDeadReckoning value wasn't equal");
|
|
277
|
+
XCTAssertEqual(requestA.useGps, requestB.useGps, @"LocationRequest: useGps value wasn't equal");
|
|
278
|
+
XCTAssertEqual(requestA.updateInterval, requestB.updateInterval, @"LocationRequest: updateInterval wasn`t equal");
|
|
279
|
+
XCTAssertEqual(requestA.interval, requestB.interval, @"LocationRequest: interval wasn't equal");
|
|
280
|
+
XCTAssertEqual(requestA.smallestDisplacement, requestB.smallestDisplacement, @"LocationRequest: smallestDisplacement wasn't equal");
|
|
281
|
+
}
|
|
282
|
+
|
|
283
|
+
- (void) assertDirectionsRequest: (SITDirectionsRequest *) requestA isEqualToDirectionsRequest: (SITDirectionsRequest *) requestB {
|
|
284
|
+
[self assertPoint:requestA.origin isEqualToPoint:requestB.origin];
|
|
285
|
+
[self assertPoint:requestA.destination isEqualToPoint:requestB.destination];
|
|
286
|
+
XCTAssertEqual(requestA.options.count, requestB.options.count);
|
|
287
|
+
XCTAssertEqual(requestA.options[@"initialBearing"], requestB.options[@"initialBearing"]);
|
|
288
|
+
XCTAssertEqual(requestA.options[@"minimizeFloorChanges"], requestB.options[@"minimizeFloorChanges"]);
|
|
289
|
+
XCTAssertEqual(requestA.options[@"accessible"], requestB.options[@"accessible"]);
|
|
290
|
+
}
|
|
291
|
+
|
|
292
|
+
- (void) assertLocation: (SITLocation *) locationA isEqualToLocation:(SITLocation *)locationB {
|
|
293
|
+
XCTAssertEqualWithAccuracy(locationA.accuracy, locationB.accuracy, 0.001);
|
|
294
|
+
XCTAssertEqualObjects(locationA.provider, locationB.provider);
|
|
295
|
+
XCTAssertEqualObjects(locationA.deviceId, locationB.deviceId);
|
|
296
|
+
XCTAssertEqual(locationA.quality, locationB.quality);
|
|
297
|
+
XCTAssertEqual(locationA.bearingQuality, locationB.bearingQuality);
|
|
298
|
+
XCTAssertEqual(locationA.hasBearing, locationB.hasBearing);
|
|
299
|
+
[self assertPoint: locationA.position isEqualToPoint: locationB.position];
|
|
300
|
+
[self assertAngle: locationA.bearing isEqualToAngle: locationB.bearing];
|
|
301
|
+
[self assertAngle: locationA.cartesianBearing isEqualToAngle: locationB.cartesianBearing];
|
|
302
|
+
}
|
|
303
|
+
|
|
304
|
+
- (void) assertPoiCategory: (SITPOICategory*) poiCategoryA isEqualToPoiCategory: (SITPOICategory*) poiCategoryB {
|
|
305
|
+
XCTAssertEqualObjects(poiCategoryA.iconURL.direction, poiCategoryB.iconURL.direction);
|
|
306
|
+
XCTAssertEqualObjects(poiCategoryA.selectedIconURL.direction, poiCategoryB.selectedIconURL.direction);
|
|
307
|
+
XCTAssertEqualObjects(poiCategoryA.name.value , poiCategoryB.name.value);
|
|
308
|
+
XCTAssertEqualObjects(poiCategoryA.code, poiCategoryB.code);
|
|
309
|
+
}
|
|
310
|
+
|
|
311
|
+
- (void) assertIndication: (SITIndication*) indicationA isEqualToIndication: (SITIndication*) indicationB {
|
|
312
|
+
XCTAssertEqual(indicationA.orientation, indicationB.orientation);
|
|
313
|
+
XCTAssertEqual(indicationA.originStepIndex, indicationB.originStepIndex);
|
|
314
|
+
XCTAssertEqual(indicationA.destinationStepIndex, indicationB.destinationStepIndex);
|
|
315
|
+
XCTAssertEqualWithAccuracy(indicationA.horizontalDistance, indicationB.horizontalDistance, 0.0001);
|
|
316
|
+
XCTAssertEqualWithAccuracy(indicationA.verticalDistance, indicationB.verticalDistance, 0.0001);
|
|
317
|
+
XCTAssertEqual(indicationA.needLevelChange, indicationB.needLevelChange);
|
|
318
|
+
XCTAssertEqual([indicationA.nextLevel intValue], [indicationB.nextLevel intValue]);
|
|
319
|
+
XCTAssertEqualWithAccuracy(indicationA.orientationChange, indicationB.orientationChange, 0.0001);
|
|
320
|
+
XCTAssertEqual(indicationA.orientation, indicationB.orientation);
|
|
321
|
+
XCTAssertEqual(indicationA.action, indicationB.action);
|
|
322
|
+
}
|
|
323
|
+
|
|
324
|
+
- (void) assertFloor: (SITFloor *) floorA isEqualToFloor :(SITFloor *) floorB {
|
|
325
|
+
XCTAssertEqualObjects(floorA.identifier, floorB.identifier);
|
|
326
|
+
XCTAssertEqualObjects(@(floorA.altitude), @(floorB.altitude));
|
|
327
|
+
XCTAssertEqualObjects(@(floorA.level), @(floorB.level));
|
|
328
|
+
XCTAssertEqualObjects(@(floorA.floor), @(floorB.floor));
|
|
329
|
+
XCTAssertEqualObjects(@(floorA.scale), @(floorB.scale));
|
|
330
|
+
[self assertUrl:floorA.mapURL isEqualToUrl:floorB.mapURL];
|
|
331
|
+
XCTAssertEqualObjects(floorA.buildingIdentifier, floorB.buildingIdentifier);
|
|
332
|
+
XCTAssertEqualObjects(floorA.customFields, floorB.customFields);
|
|
333
|
+
XCTAssertEqualObjects(floorA.createdAt, floorB.createdAt);
|
|
334
|
+
XCTAssertEqualObjects(floorA.updatedAt, floorB.updatedAt);
|
|
335
|
+
}
|
|
336
|
+
|
|
337
|
+
- (void) assertUrl: (SITURL *) urlA isEqualToUrl: (SITURL *) urlB {
|
|
338
|
+
XCTAssert(urlA.isAbsolute == urlB.isAbsolute);
|
|
339
|
+
XCTAssertEqualObjects(urlA.direction, urlB.direction);
|
|
340
|
+
}
|
|
341
|
+
|
|
342
|
+
@end
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
//
|
|
2
|
+
// indicationTests.m
|
|
3
|
+
// situmcordovaplugintests
|
|
4
|
+
//
|
|
5
|
+
// Created by Cristina Sánchez Barreiro on 13/09/2018.
|
|
6
|
+
//
|
|
7
|
+
|
|
8
|
+
#import <XCTest/XCTest.h>
|
|
9
|
+
#import "SitumCreatorTests.h"
|
|
10
|
+
#import "SitumLocationWrapper.h"
|
|
11
|
+
#import "TestingHelper.h"
|
|
12
|
+
|
|
13
|
+
@interface indicationTests : XCTestCase
|
|
14
|
+
|
|
15
|
+
@property (nonatomic, strong) NSString *filePath;
|
|
16
|
+
@property (nonatomic, strong) TestingHelper *helper;
|
|
17
|
+
|
|
18
|
+
@end
|
|
19
|
+
|
|
20
|
+
@implementation indicationTests
|
|
21
|
+
|
|
22
|
+
- (void)setUp {
|
|
23
|
+
[super setUp];
|
|
24
|
+
_filePath = @"resources/indication";
|
|
25
|
+
_helper = [TestingHelper new];
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
- (void)tearDown {
|
|
29
|
+
// Put teardown code here. This method is called after the invocation of each test method in the class.
|
|
30
|
+
[super tearDown];
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
- (void) testIndication {
|
|
34
|
+
// ### INDICATION1.JSON ###
|
|
35
|
+
SITIndication *indication1 = [SitumCreatorTests createIndication];
|
|
36
|
+
NSDictionary *indicationJO1 = [SitumLocationWrapper.shared indicationToJsonObject:indication1];
|
|
37
|
+
NSString *fileName1 = @"indication1";
|
|
38
|
+
//read from json object in resources
|
|
39
|
+
NSDictionary *jsonIndication1 = [TestingHelper dataFromJSONFileNamed: fileName1 inDirectory : _filePath];
|
|
40
|
+
[_helper assertIndication: jsonIndication1: indicationJO1];
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
@end
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
{
|
|
2
|
+
"address": "",
|
|
3
|
+
"bounds": {
|
|
4
|
+
"northEast": {
|
|
5
|
+
"latitude": 42.87253907829066,
|
|
6
|
+
"longitude": -8.562817801731425
|
|
7
|
+
},
|
|
8
|
+
"northWest": {
|
|
9
|
+
"latitude": 42.87253907829066,
|
|
10
|
+
"longitude": -8.563687573151498
|
|
11
|
+
},
|
|
12
|
+
"southEast": {
|
|
13
|
+
"latitude": 42.87215551039662,
|
|
14
|
+
"longitude": -8.562817801731425
|
|
15
|
+
},
|
|
16
|
+
"southWest": {
|
|
17
|
+
"latitude": 42.87215551039662,
|
|
18
|
+
"longitude": -8.563687573151498
|
|
19
|
+
}
|
|
20
|
+
},
|
|
21
|
+
"boundsRotated": {
|
|
22
|
+
"northEast": {
|
|
23
|
+
"latitude": 42.87210212173802,
|
|
24
|
+
"longitude": -8.56363479235278
|
|
25
|
+
},
|
|
26
|
+
"northWest": {
|
|
27
|
+
"latitude": 42.8722149069941,
|
|
28
|
+
"longitude": -8.562778644442083
|
|
29
|
+
},
|
|
30
|
+
"southEast": {
|
|
31
|
+
"latitude": 42.87247968165883,
|
|
32
|
+
"longitude": -8.56372673044084
|
|
33
|
+
},
|
|
34
|
+
"southWest": {
|
|
35
|
+
"latitude": 42.87259246691492,
|
|
36
|
+
"longitude": -8.56287058257683
|
|
37
|
+
}
|
|
38
|
+
},
|
|
39
|
+
"center": {
|
|
40
|
+
"latitude": 42.8723472943445,
|
|
41
|
+
"longitude": -8.56325268745422
|
|
42
|
+
},
|
|
43
|
+
"dimensions": {
|
|
44
|
+
"width": 71.0686153823893,
|
|
45
|
+
"height": 42.6106416714803
|
|
46
|
+
},
|
|
47
|
+
"infoHtml": "<p>http://Prueba/actualizador/recibirAlarmas</p>",
|
|
48
|
+
"name": "Ed. Emprendia - Situm",
|
|
49
|
+
"pictureThumbUrl": "",
|
|
50
|
+
"pictureUrl": "",
|
|
51
|
+
"rotation": -3.31881803875501,
|
|
52
|
+
"userIdentifier": "-1",
|
|
53
|
+
"buildingIdentifier": "1051",
|
|
54
|
+
"customFields": {
|
|
55
|
+
"notification_url": "http://testUrl.com",
|
|
56
|
+
"pin": "1234",
|
|
57
|
+
"positioning-mode": "Trilateration",
|
|
58
|
+
"beacons_uuids": "7f6cc424-aae2-47fd-b5e9-476ad15e4733, fa4b8d11-9c13-4ad9-9859-cecd41c58000, 1876b5fa-3e4b-4d09-9252-627032fe9312",
|
|
59
|
+
"filter-beacon": "56C98FAD0C9, D5784F5A73CA",
|
|
60
|
+
"asset-localization": "True"
|
|
61
|
+
},
|
|
62
|
+
"createdAt": "Wed Jan 04 18:41:43 +0000 2017",
|
|
63
|
+
"updatedAt": "Wed Sep 12 12:10:25 +0000 2018"
|
|
64
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
{
|
|
2
|
+
"center": {
|
|
3
|
+
"coordinate": {
|
|
4
|
+
"latitude": 42.8723364829157,
|
|
5
|
+
"longitude": -8.56308907270432
|
|
6
|
+
},
|
|
7
|
+
"floorIdentifier": "2767",
|
|
8
|
+
"cartesianCoordinate": {
|
|
9
|
+
"x": 22.5865678493934,
|
|
10
|
+
"y": 24.8444747467106
|
|
11
|
+
},
|
|
12
|
+
"isIndoor": true,
|
|
13
|
+
"buildingIdentifier": "1051",
|
|
14
|
+
"isOutdoor": false
|
|
15
|
+
},
|
|
16
|
+
"radius" : 2.7458453630437
|
|
17
|
+
}
|