webdav.client 5.20.5664

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.
Files changed (253) hide show
  1. package/.npmignore +2 -0
  2. package/Help/ClassReference/Create.html +3026 -0
  3. package/Help/ClassReference/ITHit.Environment.html +2961 -0
  4. package/Help/ClassReference/ITHit.LogLevel.html +3198 -0
  5. package/Help/ClassReference/ITHit.Logger.html +3381 -0
  6. package/Help/ClassReference/ITHit.WebDAV.Client.AsyncResult.html +3096 -0
  7. package/Help/ClassReference/ITHit.WebDAV.Client.BrowserExtension.html +3493 -0
  8. package/Help/ClassReference/ITHit.WebDAV.Client.CancellableResult.html +3262 -0
  9. package/Help/ClassReference/ITHit.WebDAV.Client.DavConstants.html +4368 -0
  10. package/Help/ClassReference/ITHit.WebDAV.Client.Depth.html +3035 -0
  11. package/Help/ClassReference/ITHit.WebDAV.Client.DocManager.html +4756 -0
  12. package/Help/ClassReference/ITHit.WebDAV.Client.Encoder.html +3006 -0
  13. package/Help/ClassReference/ITHit.WebDAV.Client.Error.html +3006 -0
  14. package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.BadRequestException.html +3102 -0
  15. package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.ConflictException.html +3102 -0
  16. package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.DependencyFailedException.html +3102 -0
  17. package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.ForbiddenException.html +3102 -0
  18. package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.Info.Error.html +2969 -0
  19. package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.Info.Multistatus.html +2920 -0
  20. package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.Info.MultistatusResponse.html +2920 -0
  21. package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.Info.PropertyMultistatus.html +2972 -0
  22. package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.Info.PropertyMultistatusResponse.html +2920 -0
  23. package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.InsufficientStorageException.html +3102 -0
  24. package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.IntegrationException.html +2912 -0
  25. package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.LockedException.html +3102 -0
  26. package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.MethodNotAllowedException.html +3102 -0
  27. package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.NotFoundException.html +3102 -0
  28. package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.NotImplementedException.html +3102 -0
  29. package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.Parsers.InsufficientStorage.html +3022 -0
  30. package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.PreconditionFailedException.html +3102 -0
  31. package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.PropertyConflictException.html +3147 -0
  32. package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.PropertyException.html +3147 -0
  33. package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.PropertyForbiddenException.html +3147 -0
  34. package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.PropertyNotFoundException.html +3147 -0
  35. package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.QuotaNotExceededException.html +3102 -0
  36. package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.SufficientDiskSpaceException.html +3102 -0
  37. package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.UnauthorizedException.html +3102 -0
  38. package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.WebDavException.html +2912 -0
  39. package/Help/ClassReference/ITHit.WebDAV.Client.Exceptions.WebDavHttpException.html +3102 -0
  40. package/Help/ClassReference/ITHit.WebDAV.Client.Features.html +3423 -0
  41. package/Help/ClassReference/ITHit.WebDAV.Client.File.html +9512 -0
  42. package/Help/ClassReference/ITHit.WebDAV.Client.Folder.html +11207 -0
  43. package/Help/ClassReference/ITHit.WebDAV.Client.HierarchyItem.html +8575 -0
  44. package/Help/ClassReference/ITHit.WebDAV.Client.HttpStatus.html +4945 -0
  45. package/Help/ClassReference/ITHit.WebDAV.Client.LockInfo.html +3141 -0
  46. package/Help/ClassReference/ITHit.WebDAV.Client.LockScope.html +3020 -0
  47. package/Help/ClassReference/ITHit.WebDAV.Client.LockUriTokenPair.html +3006 -0
  48. package/Help/ClassReference/ITHit.WebDAV.Client.Methods.CancelUpload.html +2914 -0
  49. package/Help/ClassReference/ITHit.WebDAV.Client.Methods.CopyMove.html +2967 -0
  50. package/Help/ClassReference/ITHit.WebDAV.Client.Methods.Delete.html +2914 -0
  51. package/Help/ClassReference/ITHit.WebDAV.Client.Methods.ErrorResponse.html +2968 -0
  52. package/Help/ClassReference/ITHit.WebDAV.Client.Methods.Get.GoAsync.html +3047 -0
  53. package/Help/ClassReference/ITHit.WebDAV.Client.Methods.Get.html +2921 -0
  54. package/Help/ClassReference/ITHit.WebDAV.Client.Methods.Head.html +2914 -0
  55. package/Help/ClassReference/ITHit.WebDAV.Client.Methods.HttpMethod.html +2982 -0
  56. package/Help/ClassReference/ITHit.WebDAV.Client.Methods.Lock.Go.html +3083 -0
  57. package/Help/ClassReference/ITHit.WebDAV.Client.Methods.Lock.GoAsync.html +3101 -0
  58. package/Help/ClassReference/ITHit.WebDAV.Client.Methods.Lock.html +2924 -0
  59. package/Help/ClassReference/ITHit.WebDAV.Client.Methods.LockRefresh.Go.html +3083 -0
  60. package/Help/ClassReference/ITHit.WebDAV.Client.Methods.LockRefresh.GoAsync.html +3101 -0
  61. package/Help/ClassReference/ITHit.WebDAV.Client.Methods.LockRefresh.html +2924 -0
  62. package/Help/ClassReference/ITHit.WebDAV.Client.Methods.Mkcol.html +2914 -0
  63. package/Help/ClassReference/ITHit.WebDAV.Client.Methods.MultiResponse.html +2968 -0
  64. package/Help/ClassReference/ITHit.WebDAV.Client.Methods.Options.html +2965 -0
  65. package/Help/ClassReference/ITHit.WebDAV.Client.Methods.Propfind.html +2967 -0
  66. package/Help/ClassReference/ITHit.WebDAV.Client.Methods.Proppatch.html +2914 -0
  67. package/Help/ClassReference/ITHit.WebDAV.Client.Methods.Propstat.html +2950 -0
  68. package/Help/ClassReference/ITHit.WebDAV.Client.Methods.Put.html +2914 -0
  69. package/Help/ClassReference/ITHit.WebDAV.Client.Methods.Report.html +2978 -0
  70. package/Help/ClassReference/ITHit.WebDAV.Client.Methods.Response.html +2968 -0
  71. package/Help/ClassReference/ITHit.WebDAV.Client.Methods.ResponseFactory.html +2912 -0
  72. package/Help/ClassReference/ITHit.WebDAV.Client.Methods.Search.html +2914 -0
  73. package/Help/ClassReference/ITHit.WebDAV.Client.Methods.SingleResponse.html +2959 -0
  74. package/Help/ClassReference/ITHit.WebDAV.Client.Methods.Undelete.html +2908 -0
  75. package/Help/ClassReference/ITHit.WebDAV.Client.Methods.Unlock.html +2914 -0
  76. package/Help/ClassReference/ITHit.WebDAV.Client.Methods.UpdateToVersion.html +2914 -0
  77. package/Help/ClassReference/ITHit.WebDAV.Client.Methods.VersionControl.html +2914 -0
  78. package/Help/ClassReference/ITHit.WebDAV.Client.MsOfficeEditExtensions.html +3289 -0
  79. package/Help/ClassReference/ITHit.WebDAV.Client.Multistatus.html +3006 -0
  80. package/Help/ClassReference/ITHit.WebDAV.Client.MultistatusResponse.html +3051 -0
  81. package/Help/ClassReference/ITHit.WebDAV.Client.OptionsInfo.html +2961 -0
  82. package/Help/ClassReference/ITHit.WebDAV.Client.OrderProperty.html +3172 -0
  83. package/Help/ClassReference/ITHit.WebDAV.Client.PageResults.html +3006 -0
  84. package/Help/ClassReference/ITHit.WebDAV.Client.Property.html +3229 -0
  85. package/Help/ClassReference/ITHit.WebDAV.Client.PropertyList.html +3265 -0
  86. package/Help/ClassReference/ITHit.WebDAV.Client.PropertyMultistatusResponse.html +3102 -0
  87. package/Help/ClassReference/ITHit.WebDAV.Client.PropertyName.html +3184 -0
  88. package/Help/ClassReference/ITHit.WebDAV.Client.Request.html +3818 -0
  89. package/Help/ClassReference/ITHit.WebDAV.Client.RequestProgress.html +3186 -0
  90. package/Help/ClassReference/ITHit.WebDAV.Client.ResourceType.html +2973 -0
  91. package/Help/ClassReference/ITHit.WebDAV.Client.ResumableUpload.html +3482 -0
  92. package/Help/ClassReference/ITHit.WebDAV.Client.SPSManager.html +3170 -0
  93. package/Help/ClassReference/ITHit.WebDAV.Client.SearchQuery.html +3186 -0
  94. package/Help/ClassReference/ITHit.WebDAV.Client.Source.html +3006 -0
  95. package/Help/ClassReference/ITHit.WebDAV.Client.Tests.DocManager.MsOfficeEditExtensions.html +2908 -0
  96. package/Help/ClassReference/ITHit.WebDAV.Client.Tests.HierarchyItems.CopyMove.html +2908 -0
  97. package/Help/ClassReference/ITHit.WebDAV.Client.Tests.HierarchyItems.CreateFile.html +2908 -0
  98. package/Help/ClassReference/ITHit.WebDAV.Client.Tests.HierarchyItems.CreateFolder.html +2908 -0
  99. package/Help/ClassReference/ITHit.WebDAV.Client.Tests.HierarchyItems.Delete.html +2908 -0
  100. package/Help/ClassReference/ITHit.WebDAV.Client.Tests.HierarchyItems.GetFolderItems.html +2908 -0
  101. package/Help/ClassReference/ITHit.WebDAV.Client.Tests.HierarchyItems.GetHeadRequests.html +2908 -0
  102. package/Help/ClassReference/ITHit.WebDAV.Client.Tests.HierarchyItems.GetItemByFolder.html +2908 -0
  103. package/Help/ClassReference/ITHit.WebDAV.Client.Tests.HierarchyItems.GetItemBySession.html +2908 -0
  104. package/Help/ClassReference/ITHit.WebDAV.Client.Tests.HierarchyItems.GetParent.html +2908 -0
  105. package/Help/ClassReference/ITHit.WebDAV.Client.Tests.HierarchyItems.ItemExists.html +2908 -0
  106. package/Help/ClassReference/ITHit.WebDAV.Client.Tests.HierarchyItems.MicrosoftOfficeDiscovery.html +2908 -0
  107. package/Help/ClassReference/ITHit.WebDAV.Client.Tests.HierarchyItems.NameCheck.html +2908 -0
  108. package/Help/ClassReference/ITHit.WebDAV.Client.Tests.HierarchyItems.Progress.html +2908 -0
  109. package/Help/ClassReference/ITHit.WebDAV.Client.Tests.HierarchyItems.Refresh.html +2908 -0
  110. package/Help/ClassReference/ITHit.WebDAV.Client.Tests.HierarchyItems.Search.html +2908 -0
  111. package/Help/ClassReference/ITHit.WebDAV.Client.Tests.HierarchyItems.SupportedFeatures.html +2908 -0
  112. package/Help/ClassReference/ITHit.WebDAV.Client.Tests.HierarchyProperties.GetProperties.html +2908 -0
  113. package/Help/ClassReference/ITHit.WebDAV.Client.Tests.HierarchyProperties.UpdateProperties.html +2908 -0
  114. package/Help/ClassReference/ITHit.WebDAV.Client.Tests.Locks.CheckSupport.html +2908 -0
  115. package/Help/ClassReference/ITHit.WebDAV.Client.Tests.Locks.Etag.html +2908 -0
  116. package/Help/ClassReference/ITHit.WebDAV.Client.Tests.Locks.GetLocks.html +2908 -0
  117. package/Help/ClassReference/ITHit.WebDAV.Client.Tests.Locks.Lock.html +2908 -0
  118. package/Help/ClassReference/ITHit.WebDAV.Client.Tests.Locks.RefreshLock.html +2908 -0
  119. package/Help/ClassReference/ITHit.WebDAV.Client.Tests.Versions.GetVersions.html +2908 -0
  120. package/Help/ClassReference/ITHit.WebDAV.Client.Tests.Versions.ManageVersions.html +2908 -0
  121. package/Help/ClassReference/ITHit.WebDAV.Client.Tests.Versions.PutUnderVersion.html +2908 -0
  122. package/Help/ClassReference/ITHit.WebDAV.Client.Tests.Versions.ReadContent.html +2908 -0
  123. package/Help/ClassReference/ITHit.WebDAV.Client.Tests.WebDavSession.Events.html +2908 -0
  124. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.AutoUploader.html +2970 -0
  125. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Collections.Map.html +3130 -0
  126. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Collections.Pair.html +3004 -0
  127. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.ContentWriter.html +3158 -0
  128. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Controls.DropZone.html +3012 -0
  129. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Controls.FSEntryFactory.html +2912 -0
  130. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Controls.HtmlControl.html +3002 -0
  131. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Controls.Input.html +3012 -0
  132. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.DropZoneCollection.html +3354 -0
  133. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Events.AsyncEvent.html +3102 -0
  134. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Events.BaseEvent.html +2908 -0
  135. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Events.BeforeUploadStarted.html +3242 -0
  136. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Events.Error.html +2918 -0
  137. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Events.EventName.html +3059 -0
  138. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Events.ProgressChanged.html +2918 -0
  139. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Events.QueueChanged.html +2914 -0
  140. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Events.StateChanged.html +2918 -0
  141. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Events.UploadError.html +3371 -0
  142. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Events.UploadItemsCreated.html +3358 -0
  143. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.FSEntry.html +3039 -0
  144. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.FileSpan.html +3023 -0
  145. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Groups.Group.html +2978 -0
  146. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Groups.GroupManager.html +2912 -0
  147. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.InputCollection.html +3354 -0
  148. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.ItemSettings.html +2908 -0
  149. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Path.Generator.html +3102 -0
  150. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Path.PathCache.html +2910 -0
  151. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Progress.html +3186 -0
  152. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Providers.ProgressTracker.html +2961 -0
  153. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Providers.UploadDiff.html +3003 -0
  154. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Providers.UploadProvider.html +3049 -0
  155. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Queue.html +3824 -0
  156. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.ServerItem.html +2978 -0
  157. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Settings.html +3060 -0
  158. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.State.html +3243 -0
  159. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.States.BaseState.html +2908 -0
  160. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.States.CanceledState.html +2914 -0
  161. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.States.CompletedState.html +2914 -0
  162. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.States.Factory.html +2912 -0
  163. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.States.PausedState.html +2914 -0
  164. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.States.QueuedState.html +2914 -0
  165. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.States.ResumeState.html +2914 -0
  166. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.States.SkippedState.html +2914 -0
  167. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.States.UploadingState.html +2914 -0
  168. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.UploadItem.html +6147 -0
  169. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.UploadLocation.html +2978 -0
  170. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Uploader.html +3314 -0
  171. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.UploaderSession.html +4374 -0
  172. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Utils.DavUrl.html +2996 -0
  173. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Utils.DavUrlBuilder.html +2961 -0
  174. package/Help/ClassReference/ITHit.WebDAV.Client.Upload.Utils.RepeatableAction.html +3077 -0
  175. package/Help/ClassReference/ITHit.WebDAV.Client.UploadProgressInfo.html +3096 -0
  176. package/Help/ClassReference/ITHit.WebDAV.Client.Version.html +4373 -0
  177. package/Help/ClassReference/ITHit.WebDAV.Client.WebDavRequest.html +2912 -0
  178. package/Help/ClassReference/ITHit.WebDAV.Client.WebDavResponse.html +2912 -0
  179. package/Help/ClassReference/ITHit.WebDAV.Client.WebDavSession.html +5097 -0
  180. package/Help/ClassReference/ITHit.WebDAV.Client.WebDavUtil.html +2912 -0
  181. package/Help/ClassReference/fonts/glyphicons-halflings-regular.eot +0 -0
  182. package/Help/ClassReference/fonts/glyphicons-halflings-regular.svg +229 -0
  183. package/Help/ClassReference/fonts/glyphicons-halflings-regular.ttf +0 -0
  184. package/Help/ClassReference/fonts/glyphicons-halflings-regular.woff +0 -0
  185. package/Help/ClassReference/global.html +8985 -0
  186. package/Help/ClassReference/index.html +3889 -0
  187. package/Help/ClassReference/scripts/bootstrap.min.js +7 -0
  188. package/Help/ClassReference/scripts/jquery.min.js +6 -0
  189. package/Help/ClassReference/scripts/jquery.min.map +1 -0
  190. package/Help/ClassReference/scripts/linenumber.js +29 -0
  191. package/Help/ClassReference/scripts/main.js +104 -0
  192. package/Help/ClassReference/scripts/prettify/Apache-License-2.0.txt +202 -0
  193. package/Help/ClassReference/scripts/prettify/lang-css.js +2 -0
  194. package/Help/ClassReference/scripts/prettify/prettify.js +28 -0
  195. package/Help/ClassReference/scripts/underscore-min.js +6 -0
  196. package/Help/ClassReference/scripts/underscore-min.map +1 -0
  197. package/Help/ClassReference/styles/bootstrap.min.css +7 -0
  198. package/Help/ClassReference/styles/jaguar.css +406 -0
  199. package/Help/ClassReference/styles/prettify-jsdoc.css +111 -0
  200. package/Help/ClassReference/styles/prettify-tomorrow.css +132 -0
  201. package/Help/index.html +6 -0
  202. package/IT Hit WebDAV AJAX Library License Agreement.rtf +314 -0
  203. package/ITHitWebDAVClient.js +87 -0
  204. package/Plugins/ITHitEditDocumentOpener.deb +0 -0
  205. package/Plugins/ITHitEditDocumentOpener.msi +0 -0
  206. package/Plugins/ITHitEditDocumentOpener.pkg +0 -0
  207. package/Plugins/ITHitEditDocumentOpener.rpm +0 -0
  208. package/README.md +98 -0
  209. package/Tests/DocManager/MsOfficeEditExtensions.js +53 -0
  210. package/Tests/Helper.js +214 -0
  211. package/Tests/HierarchyItems/CopyMove.js +341 -0
  212. package/Tests/HierarchyItems/CreateFile.js +157 -0
  213. package/Tests/HierarchyItems/CreateFolder.js +156 -0
  214. package/Tests/HierarchyItems/Delete.js +73 -0
  215. package/Tests/HierarchyItems/GetFolderItems.js +87 -0
  216. package/Tests/HierarchyItems/GetHeadRequests.js +73 -0
  217. package/Tests/HierarchyItems/GetItemByFolder.js +91 -0
  218. package/Tests/HierarchyItems/GetItemBySession.js +135 -0
  219. package/Tests/HierarchyItems/GetParent.js +58 -0
  220. package/Tests/HierarchyItems/ItemExists.js +73 -0
  221. package/Tests/HierarchyItems/MicrosoftOfficeDiscovery.js +51 -0
  222. package/Tests/HierarchyItems/NameCheck.js +184 -0
  223. package/Tests/HierarchyItems/Progress.js +89 -0
  224. package/Tests/HierarchyItems/Quota.js +35 -0
  225. package/Tests/HierarchyItems/Refresh.js +68 -0
  226. package/Tests/HierarchyItems/Search.js +187 -0
  227. package/Tests/HierarchyItems/SupportedFeatures.js +53 -0
  228. package/Tests/HierarchyProperties/GetProperties.js +192 -0
  229. package/Tests/HierarchyProperties/UpdateFolderProperties.js +138 -0
  230. package/Tests/HierarchyProperties/UpdateProperties.js +187 -0
  231. package/Tests/ITHitTests.css +72 -0
  232. package/Tests/ITHitTests.js +560 -0
  233. package/Tests/Locks/CheckSupport.js +66 -0
  234. package/Tests/Locks/CopyLock.js +67 -0
  235. package/Tests/Locks/Etag.js +277 -0
  236. package/Tests/Locks/GetLocks.js +117 -0
  237. package/Tests/Locks/Lock.js +134 -0
  238. package/Tests/Locks/RefreshLock.js +94 -0
  239. package/Tests/Upload/CancelUpload.js +34 -0
  240. package/Tests/Upload/GetBytesUploaded.js +47 -0
  241. package/Tests/Versions/GetVersions.js +84 -0
  242. package/Tests/Versions/ManageVersions.js +180 -0
  243. package/Tests/Versions/PutUnderVersion.js +98 -0
  244. package/Tests/Versions/ReadContent.js +82 -0
  245. package/Tests/WebDavSession/Events.js +125 -0
  246. package/Tests/index.html +9 -0
  247. package/Tests/qunit-runner/highlight/github.css +124 -0
  248. package/Tests/qunit-runner/highlight/highlight.js +1 -0
  249. package/Tests/qunit-runner/main.js +340 -0
  250. package/Tests/qunit-runner/qunit/jquery.js +10308 -0
  251. package/Tests/qunit-runner/qunit/qunit.css +237 -0
  252. package/Tests/qunit-runner/qunit/qunit.js +2495 -0
  253. package/package.json +25 -0
@@ -0,0 +1,124 @@
1
+ /*
2
+
3
+ github.com style (c) Vasily Polovnyov <vast@whiteants.net>
4
+
5
+ */
6
+
7
+ .hljs {
8
+ display: block;
9
+ overflow-x: auto;
10
+ padding: 0.5em;
11
+ color: #333;
12
+ background: #f8f8f8;
13
+ -webkit-text-size-adjust: none;
14
+ }
15
+
16
+ .hljs-comment,
17
+ .diff .hljs-header,
18
+ .hljs-javadoc {
19
+ color: #998;
20
+ font-style: italic;
21
+ }
22
+
23
+ .hljs-keyword,
24
+ .css .rule .hljs-keyword,
25
+ .hljs-winutils,
26
+ .nginx .hljs-title,
27
+ .hljs-subst,
28
+ .hljs-request,
29
+ .hljs-status {
30
+ color: #333;
31
+ font-weight: bold;
32
+ }
33
+
34
+ .hljs-number,
35
+ .hljs-hexcolor,
36
+ .ruby .hljs-constant {
37
+ color: #008080;
38
+ }
39
+
40
+ .hljs-string,
41
+ .hljs-tag .hljs-value,
42
+ .hljs-phpdoc,
43
+ .hljs-dartdoc,
44
+ .tex .hljs-formula {
45
+ color: #d14;
46
+ }
47
+
48
+ .hljs-title,
49
+ .hljs-id,
50
+ .scss .hljs-preprocessor {
51
+ color: #900;
52
+ font-weight: bold;
53
+ }
54
+
55
+ .hljs-list .hljs-keyword,
56
+ .hljs-subst {
57
+ font-weight: normal;
58
+ }
59
+
60
+ .hljs-class .hljs-title,
61
+ .hljs-type,
62
+ .vhdl .hljs-literal,
63
+ .tex .hljs-command {
64
+ color: #458;
65
+ font-weight: bold;
66
+ }
67
+
68
+ .hljs-tag,
69
+ .hljs-tag .hljs-title,
70
+ .hljs-rules .hljs-property,
71
+ .django .hljs-tag .hljs-keyword {
72
+ color: #000080;
73
+ font-weight: normal;
74
+ }
75
+
76
+ .hljs-attribute,
77
+ .hljs-variable,
78
+ .lisp .hljs-body {
79
+ color: #008080;
80
+ }
81
+
82
+ .hljs-regexp {
83
+ color: #009926;
84
+ }
85
+
86
+ .hljs-symbol,
87
+ .ruby .hljs-symbol .hljs-string,
88
+ .lisp .hljs-keyword,
89
+ .clojure .hljs-keyword,
90
+ .scheme .hljs-keyword,
91
+ .tex .hljs-special,
92
+ .hljs-prompt {
93
+ color: #990073;
94
+ }
95
+
96
+ .hljs-built_in {
97
+ color: #0086b3;
98
+ }
99
+
100
+ .hljs-preprocessor,
101
+ .hljs-pragma,
102
+ .hljs-pi,
103
+ .hljs-doctype,
104
+ .hljs-shebang,
105
+ .hljs-cdata {
106
+ color: #999;
107
+ font-weight: bold;
108
+ }
109
+
110
+ .hljs-deletion {
111
+ background: #fdd;
112
+ }
113
+
114
+ .hljs-addition {
115
+ background: #dfd;
116
+ }
117
+
118
+ .diff .hljs-change {
119
+ background: #0086b3;
120
+ }
121
+
122
+ .hljs-chunk {
123
+ color: #aaa;
124
+ }
@@ -0,0 +1 @@
1
+ !function(e){"undefined"!=typeof exports?e(exports):(window.hljs=e({}),"function"==typeof define&&define.amd&&define([],function(){return window.hljs}))}(function(e){function n(e){return e.replace(/&/gm,"&amp;").replace(/</gm,"&lt;").replace(/>/gm,"&gt;")}function t(e){return e.nodeName.toLowerCase()}function r(e,n){var t=e&&e.exec(n);return t&&0==t.index}function a(e){var n=(e.className+" "+(e.parentNode?e.parentNode.className:"")).split(/\s+/);return n=n.map(function(e){return e.replace(/^lang(uage)?-/,"")}),n.filter(function(e){return N(e)||/no(-?)highlight/.test(e)})[0]}function o(e,n){var t={};for(var r in e)t[r]=e[r];if(n)for(var r in n)t[r]=n[r];return t}function i(e){var n=[];return function r(e,a){for(var o=e.firstChild;o;o=o.nextSibling)3==o.nodeType?a+=o.nodeValue.length:1==o.nodeType&&(n.push({event:"start",offset:a,node:o}),a=r(o,a),t(o).match(/br|hr|img|input/)||n.push({event:"stop",offset:a,node:o}));return a}(e,0),n}function c(e,r,a){function o(){return e.length&&r.length?e[0].offset!=r[0].offset?e[0].offset<r[0].offset?e:r:"start"==r[0].event?e:r:e.length?e:r}function i(e){function r(e){return" "+e.nodeName+'="'+n(e.value)+'"'}l+="<"+t(e)+Array.prototype.map.call(e.attributes,r).join("")+">"}function c(e){l+="</"+t(e)+">"}function u(e){("start"==e.event?i:c)(e.node)}for(var s=0,l="",f=[];e.length||r.length;){var g=o();if(l+=n(a.substr(s,g[0].offset-s)),s=g[0].offset,g==e){f.reverse().forEach(c);do u(g.splice(0,1)[0]),g=o();while(g==e&&g.length&&g[0].offset==s);f.reverse().forEach(i)}else"start"==g[0].event?f.push(g[0].node):f.pop(),u(g.splice(0,1)[0])}return l+n(a.substr(s))}function u(e){function n(e){return e&&e.source||e}function t(t,r){return RegExp(n(t),"m"+(e.cI?"i":"")+(r?"g":""))}function r(a,i){if(!a.compiled){if(a.compiled=!0,a.k=a.k||a.bK,a.k){var c={},u=function(n,t){e.cI&&(t=t.toLowerCase()),t.split(" ").forEach(function(e){var t=e.split("|");c[t[0]]=[n,t[1]?Number(t[1]):1]})};"string"==typeof a.k?u("keyword",a.k):Object.keys(a.k).forEach(function(e){u(e,a.k[e])}),a.k=c}a.lR=t(a.l||/\b[A-Za-z0-9_]+\b/,!0),i&&(a.bK&&(a.b="\\b("+a.bK.split(" ").join("|")+")\\b"),a.b||(a.b=/\B|\b/),a.bR=t(a.b),a.e||a.eW||(a.e=/\B|\b/),a.e&&(a.eR=t(a.e)),a.tE=n(a.e)||"",a.eW&&i.tE&&(a.tE+=(a.e?"|":"")+i.tE)),a.i&&(a.iR=t(a.i)),void 0===a.r&&(a.r=1),a.c||(a.c=[]);var s=[];a.c.forEach(function(e){e.v?e.v.forEach(function(n){s.push(o(e,n))}):s.push("self"==e?a:e)}),a.c=s,a.c.forEach(function(e){r(e,a)}),a.starts&&r(a.starts,i);var l=a.c.map(function(e){return e.bK?"\\.?("+e.b+")\\.?":e.b}).concat([a.tE,a.i]).map(n).filter(Boolean);a.t=l.length?t(l.join("|"),!0):{exec:function(){return null}}}}r(e)}function s(e,t,a,o){function i(e,n){for(var t=0;t<n.c.length;t++)if(r(n.c[t].bR,e))return n.c[t]}function c(e,n){return r(e.eR,n)?e:e.eW?c(e.parent,n):void 0}function f(e,n){return!a&&r(n.iR,e)}function g(e,n){var t=x.cI?n[0].toLowerCase():n[0];return e.k.hasOwnProperty(t)&&e.k[t]}function p(e,n,t,r){var a=r?"":E.classPrefix,o='<span class="'+a,i=t?"":"</span>";return o+=e+'">',o+n+i}function d(){if(!w.k)return n(y);var e="",t=0;w.lR.lastIndex=0;for(var r=w.lR.exec(y);r;){e+=n(y.substr(t,r.index-t));var a=g(w,r);a?(B+=a[1],e+=p(a[0],n(r[0]))):e+=n(r[0]),t=w.lR.lastIndex,r=w.lR.exec(y)}return e+n(y.substr(t))}function h(){if(w.sL&&!R[w.sL])return n(y);var e=w.sL?s(w.sL,y,!0,L[w.sL]):l(y);return w.r>0&&(B+=e.r),"continuous"==w.subLanguageMode&&(L[w.sL]=e.top),p(e.language,e.value,!1,!0)}function v(){return void 0!==w.sL?h():d()}function b(e,t){var r=e.cN?p(e.cN,"",!0):"";e.rB?(M+=r,y=""):e.eB?(M+=n(t)+r,y=""):(M+=r,y=t),w=Object.create(e,{parent:{value:w}})}function m(e,t){if(y+=e,void 0===t)return M+=v(),0;var r=i(t,w);if(r)return M+=v(),b(r,t),r.rB?0:t.length;var a=c(w,t);if(a){var o=w;o.rE||o.eE||(y+=t),M+=v();do w.cN&&(M+="</span>"),B+=w.r,w=w.parent;while(w!=a.parent);return o.eE&&(M+=n(t)),y="",a.starts&&b(a.starts,""),o.rE?0:t.length}if(f(t,w))throw new Error('Illegal lexeme "'+t+'" for mode "'+(w.cN||"<unnamed>")+'"');return y+=t,t.length||1}var x=N(e);if(!x)throw new Error('Unknown language: "'+e+'"');u(x);for(var w=o||x,L={},M="",k=w;k!=x;k=k.parent)k.cN&&(M=p(k.cN,"",!0)+M);var y="",B=0;try{for(var C,j,I=0;;){if(w.t.lastIndex=I,C=w.t.exec(t),!C)break;j=m(t.substr(I,C.index-I),C[0]),I=C.index+j}m(t.substr(I));for(var k=w;k.parent;k=k.parent)k.cN&&(M+="</span>");return{r:B,value:M,language:e,top:w}}catch(A){if(-1!=A.message.indexOf("Illegal"))return{r:0,value:n(t)};throw A}}function l(e,t){t=t||E.languages||Object.keys(R);var r={r:0,value:n(e)},a=r;return t.forEach(function(n){if(N(n)){var t=s(n,e,!1);t.language=n,t.r>a.r&&(a=t),t.r>r.r&&(a=r,r=t)}}),a.language&&(r.second_best=a),r}function f(e){return E.tabReplace&&(e=e.replace(/^((<[^>]+>|\t)+)/gm,function(e,n){return n.replace(/\t/g,E.tabReplace)})),E.useBR&&(e=e.replace(/\n/g,"<br>")),e}function g(e,n,t){var r=n?x[n]:t,a=[e.trim()];return e.match(/(\s|^)hljs(\s|$)/)||a.push("hljs"),r&&a.push(r),a.join(" ").trim()}function p(e){var n=a(e);if(!/no(-?)highlight/.test(n)){var t;E.useBR?(t=document.createElementNS("http://www.w3.org/1999/xhtml","div"),t.innerHTML=e.innerHTML.replace(/\n/g,"").replace(/<br[ \/]*>/g,"\n")):t=e;var r=t.textContent,o=n?s(n,r,!0):l(r),u=i(t);if(u.length){var p=document.createElementNS("http://www.w3.org/1999/xhtml","div");p.innerHTML=o.value,o.value=c(u,i(p),r)}o.value=f(o.value),e.innerHTML=o.value,e.className=g(e.className,n,o.language),e.result={language:o.language,re:o.r},o.second_best&&(e.second_best={language:o.second_best.language,re:o.second_best.r})}}function d(e){E=o(E,e)}function h(){if(!h.called){h.called=!0;var e=document.querySelectorAll("pre code");Array.prototype.forEach.call(e,p)}}function v(){addEventListener("DOMContentLoaded",h,!1),addEventListener("load",h,!1)}function b(n,t){var r=R[n]=t(e);r.aliases&&r.aliases.forEach(function(e){x[e]=n})}function m(){return Object.keys(R)}function N(e){return R[e]||R[x[e]]}var E={classPrefix:"hljs-",tabReplace:null,useBR:!1,languages:void 0},R={},x={};return e.highlight=s,e.highlightAuto=l,e.fixMarkup=f,e.highlightBlock=p,e.configure=d,e.initHighlighting=h,e.initHighlightingOnLoad=v,e.registerLanguage=b,e.listLanguages=m,e.getLanguage=N,e.inherit=o,e.IR="[a-zA-Z][a-zA-Z0-9_]*",e.UIR="[a-zA-Z_][a-zA-Z0-9_]*",e.NR="\\b\\d+(\\.\\d+)?",e.CNR="(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",e.BNR="\\b(0b[01]+)",e.RSR="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",e.BE={b:"\\\\[\\s\\S]",r:0},e.ASM={cN:"string",b:"'",e:"'",i:"\\n",c:[e.BE]},e.QSM={cN:"string",b:'"',e:'"',i:"\\n",c:[e.BE]},e.PWM={b:/\b(a|an|the|are|I|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such)\b/},e.CLCM={cN:"comment",b:"//",e:"$",c:[e.PWM]},e.CBCM={cN:"comment",b:"/\\*",e:"\\*/",c:[e.PWM]},e.HCM={cN:"comment",b:"#",e:"$",c:[e.PWM]},e.NM={cN:"number",b:e.NR,r:0},e.CNM={cN:"number",b:e.CNR,r:0},e.BNM={cN:"number",b:e.BNR,r:0},e.CSSNM={cN:"number",b:e.NR+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",r:0},e.RM={cN:"regexp",b:/\//,e:/\/[gimuy]*/,i:/\n/,c:[e.BE,{b:/\[/,e:/\]/,r:0,c:[e.BE]}]},e.TM={cN:"title",b:e.IR,r:0},e.UTM={cN:"title",b:e.UIR,r:0},e});hljs.registerLanguage("xml",function(){var t="[A-Za-z0-9\\._:-]+",e={b:/<\?(php)?(?!\w)/,e:/\?>/,sL:"php",subLanguageMode:"continuous"},c={eW:!0,i:/</,r:0,c:[e,{cN:"attribute",b:t,r:0},{b:"=",r:0,c:[{cN:"value",c:[e],v:[{b:/"/,e:/"/},{b:/'/,e:/'/},{b:/[^\s\/>]+/}]}]}]};return{aliases:["html","xhtml","rss","atom","xsl","plist"],cI:!0,c:[{cN:"doctype",b:"<!DOCTYPE",e:">",r:10,c:[{b:"\\[",e:"\\]"}]},{cN:"comment",b:"<!--",e:"-->",r:10},{cN:"cdata",b:"<\\!\\[CDATA\\[",e:"\\]\\]>",r:10},{cN:"tag",b:"<style(?=\\s|>|$)",e:">",k:{title:"style"},c:[c],starts:{e:"</style>",rE:!0,sL:"css"}},{cN:"tag",b:"<script(?=\\s|>|$)",e:">",k:{title:"script"},c:[c],starts:{e:"</script>",rE:!0,sL:"javascript"}},e,{cN:"pi",b:/<\?\w+/,e:/\?>/,r:10},{cN:"tag",b:"</?",e:"/?>",c:[{cN:"title",b:/[^ \/><\n\t]+/,r:0},c]}]}});hljs.registerLanguage("javascript",function(r){return{aliases:["js"],k:{keyword:"in if for while finally var new function do return void else break catch instanceof with throw case default try this switch continue typeof delete let yield const class",literal:"true false null undefined NaN Infinity",built_in:"eval isFinite isNaN parseFloat parseInt decodeURI decodeURIComponent encodeURI encodeURIComponent escape unescape Object Function Boolean Error EvalError InternalError RangeError ReferenceError StopIteration SyntaxError TypeError URIError Number Math Date String RegExp Array Float32Array Float64Array Int16Array Int32Array Int8Array Uint16Array Uint32Array Uint8Array Uint8ClampedArray ArrayBuffer DataView JSON Intl arguments require module console window document"},c:[{cN:"pi",r:10,v:[{b:/^\s*('|")use strict('|")/},{b:/^\s*('|")use asm('|")/}]},r.ASM,r.QSM,r.CLCM,r.CBCM,r.CNM,{b:"("+r.RSR+"|\\b(case|return|throw)\\b)\\s*",k:"return throw case",c:[r.CLCM,r.CBCM,r.RM,{b:/</,e:/>;/,r:0,sL:"xml"}],r:0},{cN:"function",bK:"function",e:/\{/,eE:!0,c:[r.inherit(r.TM,{b:/[A-Za-z$_][0-9A-Za-z$_]*/}),{cN:"params",b:/\(/,e:/\)/,c:[r.CLCM,r.CBCM],i:/["'\(]/}],i:/\[|%/},{b:/\$[(.]/},{b:"\\."+r.IR,r:0}]}});
@@ -0,0 +1,340 @@
1
+ (function() {
2
+
3
+ var QUnitRunner = function() {
4
+
5
+ /**
6
+ *
7
+ * @type {object}
8
+ * @protected
9
+ */
10
+ this._config = {
11
+ baseUrl: '',
12
+ preload: [],
13
+ tests: [],
14
+ onInit: null,
15
+ onEnd: null
16
+ };
17
+
18
+ this.tests = [];
19
+ this._hashConfig = {};
20
+ this._isInit = false;
21
+ this._doStart = false;
22
+ this._qUnitStart = null;
23
+ this._qUnitLoad = null;
24
+ };
25
+
26
+ QUnitRunner.prototype = {
27
+
28
+ /**
29
+ *
30
+ */
31
+ init: function(config) {
32
+ config = config || {};
33
+
34
+ this._config.baseUrl = config.baseUrl || this._config.baseUrl;
35
+
36
+ var that = this;
37
+ // Load jQuery for render
38
+ that.load('qunit-runner/qunit/jquery.js', function() {
39
+
40
+ // Apply config
41
+ $.extend(true, that._config, config);
42
+
43
+ // Render QUnit elements
44
+ that._render();
45
+
46
+ // Load lib, scripts and tests
47
+ that.load([
48
+ 'qunit-runner/qunit/qunit.js'
49
+ ], function() {
50
+
51
+ QUnit.setWarning = function(/** QUnit.assert */ test) {
52
+ var oDivAssert = $('#qunit-test-output' + test.test.testNumber + ' li')[test.test.assertions.length - 1];
53
+ $(oDivAssert).addClass('warning');
54
+ }
55
+ // QUnit.stop = function(){}; // to backward compatibility
56
+
57
+ that._freezeQUnit();
58
+ that._preInitQUnit();
59
+
60
+ that.load([
61
+ 'qunit-runner/qunit/qunit.css',
62
+ 'qunit-runner/highlight/github.css',
63
+ 'qunit-runner/highlight/highlight.js'
64
+ ].concat(that._config.preload), function() {
65
+ that.load(that._config.tests, function() {
66
+
67
+ // Configure QUnit library
68
+ that._initQUnit();
69
+
70
+ if (that._config.onInit) {
71
+ that._config.onInit();
72
+ that._config.onInit = null;
73
+ }
74
+
75
+ that._isInit = true;
76
+ });
77
+ });
78
+ });
79
+ });
80
+ },
81
+
82
+ /**
83
+ *
84
+ */
85
+ start: function() {
86
+ this._doStart = true;
87
+ if (!this._isInit) {
88
+ return;
89
+ }
90
+
91
+ QUnit.start = this._qUnitStart;
92
+ QUnit.start();
93
+ },
94
+
95
+ /**
96
+ *
97
+ */
98
+ stop: function() {
99
+ this._doStart = false;
100
+ if (!this._isInit) {
101
+ return;
102
+ }
103
+
104
+ QUnit.stop();
105
+ },
106
+
107
+ async: function(callback) {
108
+ QUnit.stop();
109
+ return function() {
110
+ QUnit.start();
111
+ return callback.apply(null, arguments);
112
+ };
113
+ },
114
+
115
+ test: function(testName, expected, callback, async) {
116
+ this.tests.push(testName);
117
+ QUnit.test.apply(QUnit.test, arguments);
118
+ },
119
+
120
+ /**
121
+ *
122
+ * @param {string|string[]} urls
123
+ * @param {function} [callback]
124
+ */
125
+ load: function(urls, callback) {
126
+ callback = callback || function() {};
127
+
128
+ if (typeof urls === 'string') {
129
+ urls = [urls];
130
+ }
131
+
132
+ if (urls.length === 0) {
133
+ callback();
134
+ return;
135
+ }
136
+
137
+ var counter = urls.length;
138
+ var checkCallback = function() {
139
+ counter--;
140
+
141
+ if (counter === 0) {
142
+ callback();
143
+ }
144
+ };
145
+
146
+ for (var i = 0, l = urls.length; i < l; i++) {
147
+ var aMatches = /\.([0-9a-z]+)(?:[\?#]|$)/i.exec(urls[i]);
148
+ var fileExtension = aMatches !== null ? aMatches[1] : null;
149
+ var url = this._config.baseUrl + urls[i];
150
+
151
+ switch (fileExtension) {
152
+ case 'js':
153
+ this._loadScript(url, checkCallback);
154
+ break;
155
+
156
+ case 'css':
157
+ this._loadCss(url, checkCallback);
158
+ break;
159
+ }
160
+ }
161
+ },
162
+
163
+ setHash: function(key, value, forceRefresh) {
164
+ forceRefresh = forceRefresh || false;
165
+
166
+ this._hashConfig[key] = value;
167
+ location.hash = this._buildUrlHash();
168
+
169
+ if (forceRefresh) {
170
+ window.location.reload();
171
+ }
172
+ },
173
+
174
+ getHash: function(key) {
175
+ return this._hashConfig.hasOwnProperty(key) ? this._hashConfig[key] : null;
176
+ },
177
+
178
+ _freezeQUnit: function() {
179
+ // Fix QUnit autostart with global failure
180
+ this._qUnitStart = QUnit.start;
181
+ QUnit.start = function() {};
182
+ this._qUnitLoad = QUnit.load;
183
+ QUnit.load = function() {};
184
+ },
185
+
186
+ _parseUrlHash: function() {
187
+ // Parse hash
188
+ var hash = {};
189
+ var hashParts = location.hash.substr(1).split('&');
190
+ for (var i = 0, l = hashParts.length; i < l; i++) {
191
+ var param = hashParts[i].split('=');
192
+ if (param.length === 1) {
193
+ param = ['url', param[0]];
194
+ }
195
+ hash[param[0]] = param[1];
196
+ }
197
+
198
+ return hash;
199
+ },
200
+
201
+ _buildUrlHash: function(customConfig) {
202
+ var config = $.extend({}, this._hashConfig, customConfig);
203
+
204
+ var params = [];
205
+ for (var key in config) {
206
+ if (config.hasOwnProperty(key)) {
207
+ if (key === 'url') {
208
+ continue;
209
+ }
210
+ if (config[key] === null) {
211
+ continue;
212
+ }
213
+
214
+ params.push(key + '=' + config[key]);
215
+ }
216
+ }
217
+ if (config.url) {
218
+ params.push(config.url);
219
+ }
220
+
221
+ return params.length > 0 ? '#' + params.join('&') : '';
222
+ },
223
+
224
+ _preInitQUnit: function() {
225
+ this._hashConfig = this._parseUrlHash();
226
+
227
+ // Build url
228
+ var that = this;
229
+ QUnit.url = function(customConfig) {
230
+ return location.href.replace(/#.*$/, '').replace(/\?.*$/, '') + that._buildUrlHash(customConfig);
231
+ };
232
+
233
+ if (this._hashConfig.testNumber) {
234
+ QUnit.config.testNumber = this._hashConfig.testNumber.split(',');
235
+ for (var i = 0, l = QUnit.config.testNumber.length; i < l; i++) {
236
+ QUnit.config.testNumber[i] = parseInt(QUnit.config.testNumber[i]);
237
+ }
238
+ }
239
+ if (this._hashConfig.module) {
240
+ QUnit.config.module = this._hashConfig.module;
241
+ }
242
+ if (this._hashConfig.filter) {
243
+ QUnit.config.filter = this._hashConfig.filter;
244
+ }
245
+ },
246
+
247
+ _initQUnit: function() {
248
+ QUnit.config.autostart = false;
249
+ QUnit.config.reorder = false;
250
+ QUnit.config.testTimeout = 15000; // 15 seconds, then async tests will continue
251
+
252
+ var that = this;
253
+ QUnit.done(function() {
254
+ if (that._doStart && that._config.onEnd) {
255
+ that._config.onEnd();
256
+ that._config.onEnd = null;
257
+ }
258
+ });
259
+
260
+ QUnit.load = this._qUnitLoad;
261
+
262
+ // Fix QUnit async load
263
+ QUnit.config.autorun = false;
264
+ if (document.readyState === "complete") {
265
+ QUnit.load();
266
+ QUnit.config.blocking = true;
267
+ }
268
+ },
269
+
270
+ _render: function() {
271
+ $('body').prepend('<div id="qunit"></div><div id="qunit-fixture"></div>');
272
+ },
273
+
274
+ /**
275
+ *
276
+ * @param {string} url
277
+ * @param {function} [callback]
278
+ */
279
+ _loadScript: function(url, callback) {
280
+ callback = callback || function() {};
281
+
282
+ var script = document.createElement('script');
283
+
284
+ script.async = false;
285
+ script.src = this._appendCacheSuffix(url);
286
+ script.onload = function () {
287
+ callback(); callback = function() {};
288
+ };
289
+ // For IE<9
290
+ script.onreadystatechange = function() {
291
+ if (this.readyState == "complete" || this.readyState == "loaded") {
292
+ setTimeout(function() {
293
+ callback(); callback = function() {};
294
+ });
295
+ }
296
+ };
297
+
298
+ document.getElementsByTagName("head")[0].appendChild(script);
299
+ },
300
+
301
+ /**
302
+ *
303
+ * @param {string} url
304
+ * @param {function} [callback]
305
+ */
306
+ _loadCss: function(url, callback) {
307
+ callback = callback || function() {};
308
+
309
+ var link = document.createElement('link');
310
+ link.rel = 'stylesheet';
311
+ link.type = 'text/css';
312
+ link.href = this._appendCacheSuffix(url);
313
+ document.getElementsByTagName("head")[0].appendChild(link);
314
+
315
+ var sheet = 'sheet' in link ? 'sheet' : 'styleSheet';
316
+ var cssRules = 'sheet' in link ? 'cssRules' : 'rules';
317
+
318
+ var timeLeft = 10000; // 10 sec
319
+ var timer = setInterval(function() {
320
+ if ( link && link[sheet] ) { // success
321
+ clearInterval( timer );
322
+ callback();
323
+ } else {
324
+ timeLeft -= 10;
325
+ if ( timeLeft < 0 ) {
326
+ clearInterval( timer );
327
+ callback();
328
+ }
329
+ }
330
+ }, 10);
331
+ },
332
+
333
+ _appendCacheSuffix: function(url) {
334
+ return url + (url.indexOf('?') === -1 ? '?' : '&') + 't=' + (new Date()).getTime();
335
+ }
336
+ };
337
+
338
+ window.QUnitRunner = new QUnitRunner();
339
+
340
+ })();