Skip to content

Instantly share code, notes, and snippets.

@ingorichter
Created May 11, 2014 00:16
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ingorichter/0347fc68072615ed5abd to your computer and use it in GitHub Desktop.
Save ingorichter/0347fc68072615ed5abd to your computer and use it in GitHub Desktop.
Brackets Unit Test Suite Failures Linux
<?xml version="1.0" encoding="UTF-8" ?>
<testsuites>
<testsuite name="Async" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:23:27">
</testsuite>
<testsuite name="Async Chain" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:23:27">
</testsuite>
<testsuite name="Async Chain Zero-argument deferreds" errors="0" tests="6" failures="0" time="0.141" timestamp="2014-05-08T13:23:27">
<testcase classname="Async Chain Zero-argument deferreds" name="[zero-arg] work with a null argument array" time="0.064"></testcase>
<testcase classname="Async Chain Zero-argument deferreds" name="[zero-arg] call error callback when first deferred fails" time="0.012"></testcase>
<testcase classname="Async Chain Zero-argument deferreds" name="[zero-arg] call error callback when middle deferred fails" time="0.011"></testcase>
<testcase classname="Async Chain Zero-argument deferreds" name="[zero-arg] call error callback when last deferred fails" time="0.022"></testcase>
<testcase classname="Async Chain Zero-argument deferreds" name="[zero-arg] call success callback when all deferreds succeed" time="0.023"></testcase>
<testcase classname="Async Chain Zero-argument deferreds" name="[zero-arg] call success callback immediately if there are no deferreds" time="0.001"></testcase>
</testsuite>
<testsuite name="Async Chain Nonzero-argument deferreds" errors="0" tests="5" failures="0" time="0.071" timestamp="2014-05-08T13:23:27">
<testcase classname="Async Chain Nonzero-argument deferreds" name="[nonzero-arg] call error callback when first deferred fails" time="0.012"></testcase>
<testcase classname="Async Chain Nonzero-argument deferreds" name="[nonzero-arg] call error callback when middle deferred fails" time="0.011"></testcase>
<testcase classname="Async Chain Nonzero-argument deferreds" name="[nonzero-arg] call error callback when last deferred fails" time="0.022"></testcase>
<testcase classname="Async Chain Nonzero-argument deferreds" name="[nonzero-arg] call success callback when all deferreds succeed" time="0.022"></testcase>
<testcase classname="Async Chain Nonzero-argument deferreds" name="[nonzero-arg] call success callback immediately if there are no deferreds" time="0"></testcase>
</testsuite>
<testsuite name="Async Chain Async/sync mix" errors="0" tests="5" failures="0" time="0.05" timestamp="2014-05-08T13:23:27">
<testcase classname="Async Chain Async/sync mix" name="[async/sync] succeed with sync command at beginning" time="0.011"></testcase>
<testcase classname="Async Chain Async/sync mix" name="[async/sync] succeed with sync command at middle" time="0.011"></testcase>
<testcase classname="Async Chain Async/sync mix" name="[async/sync] succeed with sync command at end" time="0.011"></testcase>
<testcase classname="Async Chain Async/sync mix" name="[async/sync] call error callback if sync command fails" time="0.011"></testcase>
<testcase classname="Async Chain Async/sync mix" name="[async/sync] two sync commands in order are executed completely synchronously" time="0.001"></testcase>
</testsuite>
<testsuite name="Async Async PromiseQueue" errors="0" tests="10" failures="0" time="0.016" timestamp="2014-05-08T13:23:27">
<testcase classname="Async Async PromiseQueue" name="should immediately execute a function when the queue is empty" time="0.001"></testcase>
<testcase classname="Async Async PromiseQueue" name="should wait to execute the second added function" time="0"></testcase>
<testcase classname="Async Async PromiseQueue" name="should properly handle the case where the first function completes synchronously" time="0.001"></testcase>
<testcase classname="Async Async PromiseQueue" name="should sequentially execute a second and third function if they&apos;re both added while the first is executing" time="0.002"></testcase>
<testcase classname="Async Async PromiseQueue" name="should sequentially execute a second and third function if the third is added while the second is executing" time="0.001"></testcase>
<testcase classname="Async Async PromiseQueue" name="should execute a second function when added to the empty queue after the first function has completed" time="0"></testcase>
<testcase classname="Async Async PromiseQueue" name="should execute the second function if the first function is rejected" time="0.001"></testcase>
<testcase classname="Async Async PromiseQueue" name="should execute the third function after first and second functions are rejected" time="0.001"></testcase>
<testcase classname="Async Async PromiseQueue" name="should execute the second function after the already-rejected first function is added to the queue" time="0.001"></testcase>
<testcase classname="Async Async PromiseQueue" name="should be able to run two queues simultaneously without clashing" time="0.001"></testcase>
</testsuite>
<testsuite name="UrlParams" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:23:27">
</testsuite>
<testsuite name="UrlParams Test for Empty parameter list" errors="0" tests="2" failures="0" time="0.003" timestamp="2014-05-08T13:23:27">
<testcase classname="UrlParams Test for Empty parameter list" name="should show that the parameter object is empty" time="0.001"></testcase>
<testcase classname="UrlParams Test for Empty parameter list" name="should show that the parameter object is NOT empty" time="0.001"></testcase>
</testsuite>
<testsuite name="UrlParams Parse and Get URL parameters" errors="0" tests="3" failures="0" time="0.003" timestamp="2014-05-08T13:23:27">
<testcase classname="UrlParams Parse and Get URL parameters" name="should create a parameter object and get three parameters" time="0.001"></testcase>
<testcase classname="UrlParams Parse and Get URL parameters" name="should create a parameter object with three parameters with empty string values" time="0.001"></testcase>
<testcase classname="UrlParams Parse and Get URL parameters" name="should create a parameter object with no parameters" time="0.001"></testcase>
</testsuite>
<testsuite name="UrlParams Put and Remove URL parameters" errors="0" tests="5" failures="0" time="0.01" timestamp="2014-05-08T13:23:27">
<testcase classname="UrlParams Put and Remove URL parameters" name="should put a new parameter three in the list" time="0.002"></testcase>
<testcase classname="UrlParams Put and Remove URL parameters" name="should change the value of parameter two" time="0.001"></testcase>
<testcase classname="UrlParams Put and Remove URL parameters" name="should remove parameter one" time="0"></testcase>
<testcase classname="UrlParams Put and Remove URL parameters" name="should remove three parameters, leaving an empty list" time="0.001"></testcase>
<testcase classname="UrlParams Put and Remove URL parameters" name="should add three parameters to an empty list" time="0.001"></testcase>
</testsuite>
<testsuite name="UrlParams Test for malformed or unusual query strings" errors="0" tests="3" failures="0" time="0.003" timestamp="2014-05-08T13:23:27">
<testcase classname="UrlParams Test for malformed or unusual query strings" name="should parse a missing query string as an empty object" time="0"></testcase>
<testcase classname="UrlParams Test for malformed or unusual query strings" name="should parse a query string of whitespace as an empty object" time="0"></testcase>
<testcase classname="UrlParams Test for malformed or unusual query strings" name="should parse a random number (used to circumvent browser cache)" time="0"></testcase>
</testsuite>
<testsuite name="StringUtils" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:23:27">
</testsuite>
<testsuite name="StringUtils prettyPrintBytes" errors="0" tests="1" failures="0" time="0.002" timestamp="2014-05-08T13:23:27">
<testcase classname="StringUtils prettyPrintBytes" name="should convert a number of bytes into a human readable string" time="0.001"></testcase>
</testsuite>
<testsuite name="CommandManager" errors="0" tests="6" failures="0" time="0.007" timestamp="2014-05-08T13:23:27">
<testcase classname="CommandManager" name="register and get a command and validate parameters" time="0.001"></testcase>
<testcase classname="CommandManager" name="execute a command" time="0"></testcase>
<testcase classname="CommandManager" name="not execute a disabled command" time="0"></testcase>
<testcase classname="CommandManager" name="set enabled state and trigger enabledStateChange" time="0"></testcase>
<testcase classname="CommandManager" name="set checked state and trigger checkedStateChange" time="0"></testcase>
<testcase classname="CommandManager" name="rename command trigger nameChange" time="0.001"></testcase>
</testsuite>
<testsuite name="HTML Tokenizer" errors="0" tests="5" failures="0" time="0.031" timestamp="2014-05-08T13:23:27">
<testcase classname="HTML Tokenizer" name="should handle tags and text" time="0.002"></testcase>
<testcase classname="HTML Tokenizer" name="should handle attributes" time="0.001"></testcase>
<testcase classname="HTML Tokenizer" name="should handle various newline cases" time="0.001"></testcase>
<testcase classname="HTML Tokenizer" name="should notify of explicit shorttags like &lt;br/&gt;" time="0.001"></testcase>
<testcase classname="HTML Tokenizer" name="should parse a comment" time="0"></testcase>
</testsuite>
<testsuite name="ValidationUtils" errors="0" tests="6" failures="0" time="0.007" timestamp="2014-05-08T13:23:27">
<testcase classname="ValidationUtils" name="should accept valid integers as integer" time="0"></testcase>
<testcase classname="ValidationUtils" name="should not accept non-numbers as integer" time="0.001"></testcase>
<testcase classname="ValidationUtils" name="should not accept non-integer numbers as integer" time="0.001"></testcase>
<testcase classname="ValidationUtils" name="should accept integers in range" time="0.001"></testcase>
<testcase classname="ValidationUtils" name="should accept optional range limit of zero" time="0.001"></testcase>
<testcase classname="ValidationUtils" name="should not accept integers out of range" time="0.001"></testcase>
</testsuite>
<testsuite name="StringMatch" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:23:27">
</testsuite>
<testsuite name="StringMatch findSpecialCharacters" errors="0" tests="1" failures="0" time="0.002" timestamp="2014-05-08T13:23:27">
<testcase classname="StringMatch findSpecialCharacters" name="should find the important match characters in the string" time="0.001"></testcase>
</testsuite>
<testsuite name="StringMatch _generateMatchList" errors="0" tests="6" failures="0" time="0.008" timestamp="2014-05-08T13:23:27">
<testcase classname="StringMatch _generateMatchList" name="should return undefined for no matches" time="0.001"></testcase>
<testcase classname="StringMatch _generateMatchList" name="should return an array with specials matches" time="0.001"></testcase>
<testcase classname="StringMatch _generateMatchList" name="should try contiguous matches as well, but prefer specials" time="0.002"></testcase>
<testcase classname="StringMatch _generateMatchList" name="should handle contiguous matches that stand alone" time="0.001"></testcase>
<testcase classname="StringMatch _generateMatchList" name="should recognize non-matches" time="0.001"></testcase>
<testcase classname="StringMatch _generateMatchList" name="should backtrack as needed" time="0.002"></testcase>
</testsuite>
<testsuite name="StringMatch _lastSegmentSearch" errors="0" tests="4" failures="0" time="0.006" timestamp="2014-05-08T13:23:27">
<testcase classname="StringMatch _lastSegmentSearch" name="should compare results in the final segment properly" time="0.002"></testcase>
<testcase classname="StringMatch _lastSegmentSearch" name="should handle weird comparisons as well" time="0.001"></testcase>
<testcase classname="StringMatch _lastSegmentSearch" name="should compare matches that don&apos;t fit in just the final segment" time="0.001"></testcase>
<testcase classname="StringMatch _lastSegmentSearch" name="should handle matches that don&apos;t fit at all in the final segment" time="0.001"></testcase>
</testsuite>
<testsuite name="StringMatch stringMatch" errors="0" tests="17" failures="0" time="0.02" timestamp="2014-05-08T13:23:27">
<testcase classname="StringMatch stringMatch" name="should return appropriate matching ranges" time="0.002"></testcase>
<testcase classname="StringMatch stringMatch" name="should prefer special characters" time="0.001"></testcase>
<testcase classname="StringMatch stringMatch" name="should optionally prefer prefix matches" time="0.001"></testcase>
<testcase classname="StringMatch stringMatch" name="should default to single segment matches" time="0"></testcase>
<testcase classname="StringMatch stringMatch" name="should place QuickOpen well relative to other quicks" time="0"></testcase>
<testcase classname="StringMatch stringMatch" name="should find the right spec/live" time="0.001"></testcase>
<testcase classname="StringMatch stringMatch" name="should find the right samples/index" time="0.001"></testcase>
<testcase classname="StringMatch stringMatch" name="should find the right Commands" time="0.001"></testcase>
<testcase classname="StringMatch stringMatch" name="should find the right extensions" time="0.001"></testcase>
<testcase classname="StringMatch stringMatch" name="should find the right EUtil" time="0"></testcase>
<testcase classname="StringMatch stringMatch" name="should find the right ECH" time="0.001"></testcase>
<testcase classname="StringMatch stringMatch" name="should find the right DMan" time="0"></testcase>
<testcase classname="StringMatch stringMatch" name="should find the right sru" time="0"></testcase>
<testcase classname="StringMatch stringMatch" name="should find the right jsutil" time="0"></testcase>
<testcase classname="StringMatch stringMatch" name="should find the right jsu" time="0"></testcase>
<testcase classname="StringMatch stringMatch" name="should find the right trange" time="0"></testcase>
<testcase classname="StringMatch stringMatch" name="should prefer prefix matches" time="0"></testcase>
</testsuite>
<testsuite name="StringMatch scoring" errors="0" tests="5" failures="0" time="0.005" timestamp="2014-05-08T13:23:27">
<testcase classname="StringMatch scoring" name="should score consecutive matches across the last segment" time="0"></testcase>
<testcase classname="StringMatch scoring" name="should boost last segment matches, even when searching the whole string" time="0"></testcase>
<testcase classname="StringMatch scoring" name="should treat the character after _ as a special" time="0"></testcase>
<testcase classname="StringMatch scoring" name="should penalize matches that don&apos;t start on a special" time="0"></testcase>
<testcase classname="StringMatch scoring" name="should try to prioritize points for the last segment" time="0"></testcase>
</testsuite>
<testsuite name="StringMatch multiFieldSort" errors="0" tests="3" failures="0" time="0.003" timestamp="2014-05-08T13:23:27">
<testcase classname="StringMatch multiFieldSort" name="should accept old-style key: priority" time="0.001"></testcase>
<testcase classname="StringMatch multiFieldSort" name="should accept array of keys" time="0.001"></testcase>
<testcase classname="StringMatch multiFieldSort" name="should accept a comparison function" time="0.001"></testcase>
</testsuite>
<testsuite name="StringMatch StringMatcher" errors="0" tests="5" failures="0" time="0.008" timestamp="2014-05-08T13:23:27">
<testcase classname="StringMatch StringMatcher" name="should manage its caches properly" time="0.002"></testcase>
<testcase classname="StringMatch StringMatcher" name="should handle collisions with built-in members" time="0.001"></testcase>
<testcase classname="StringMatch StringMatcher" name="can reset the caches" time="0"></testcase>
<testcase classname="StringMatch StringMatcher" name="should accept the prefixes option" time="0"></testcase>
<testcase classname="StringMatch StringMatcher" name="should pass the segmentedSearch option" time="0"></testcase>
</testsuite>
<testsuite name="KeyBindingManager" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:23:27">
</testsuite>
<testsuite name="KeyBindingManager addBinding" errors="0" tests="13" failures="0" time="0.024" timestamp="2014-05-08T13:23:27">
<testcase classname="KeyBindingManager addBinding" name="should require command and key binding arguments" time="0.001"></testcase>
<testcase classname="KeyBindingManager addBinding" name="should ignore invalid bindings" time="0.001"></testcase>
<testcase classname="KeyBindingManager addBinding" name="should add single bindings to the keymap" time="0.002"></testcase>
<testcase classname="KeyBindingManager addBinding" name="should use displayKey to override display of the shortcut" time="0"></testcase>
<testcase classname="KeyBindingManager addBinding" name="should add multiple bindings to the keymap" time="0.001"></testcase>
<testcase classname="KeyBindingManager addBinding" name="should allow the command argument to be a string or an object" time="0.001"></testcase>
<testcase classname="KeyBindingManager addBinding" name="should not allow a generic key binding to be replaced with another generic binding" time="0.001"></testcase>
<testcase classname="KeyBindingManager addBinding" name="should allow a platform-specific key binding to override a generic binding" time="0.001"></testcase>
<testcase classname="KeyBindingManager addBinding" name="should keep a platform-specific key binding if a generic binding is added later" time="0.001"></testcase>
<testcase classname="KeyBindingManager addBinding" name="should allow a command to map to multiple key bindings" time="0"></testcase>
<testcase classname="KeyBindingManager addBinding" name="should support the Ctrl key on mac" time="0"></testcase>
<testcase classname="KeyBindingManager addBinding" name="should use windows key bindings on linux" time="0.001"></testcase>
<testcase classname="KeyBindingManager addBinding" name="should support windows compatible bindings" time="0.004"></testcase>
</testsuite>
<testsuite name="KeyBindingManager removeBinding" errors="0" tests="5" failures="0" time="0.006" timestamp="2014-05-08T13:23:27">
<testcase classname="KeyBindingManager removeBinding" name="should handle an empty keymap gracefully" time="0.001"></testcase>
<testcase classname="KeyBindingManager removeBinding" name="should require a key to remove" time="0.001"></testcase>
<testcase classname="KeyBindingManager removeBinding" name="should remove a key from the key map" time="0.001"></testcase>
<testcase classname="KeyBindingManager removeBinding" name="should remove a key from the key map for the specified platform" time="0.001"></testcase>
<testcase classname="KeyBindingManager removeBinding" name="should exclude a specified platform key binding for a cross-platform command" time="0"></testcase>
</testsuite>
<testsuite name="KeyBindingManager handleKey" errors="0" tests="1" failures="0" time="0.002" timestamp="2014-05-08T13:23:27">
<testcase classname="KeyBindingManager handleKey" name="should execute a command" time="0.001"></testcase>
</testsuite>
<testsuite name="KeyBindingManager global hooks" errors="0" tests="3" failures="0" time="0.004" timestamp="2014-05-08T13:23:27">
<testcase classname="KeyBindingManager global hooks" name="should block command execution if a global hook is added that prevents it" time="0.001"></testcase>
<testcase classname="KeyBindingManager global hooks" name="should not block command execution if a global hook is added then removed" time="0.001"></testcase>
<testcase classname="KeyBindingManager global hooks" name="should call the most recently added hook first" time="0.001"></testcase>
</testsuite>
<testsuite name="FileUtils" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:23:27">
</testsuite>
<testsuite name="FileUtils convertWindowsPathToUnixPath" errors="0" tests="2" failures="0" time="0.002" timestamp="2014-05-08T13:23:27">
<testcase classname="FileUtils convertWindowsPathToUnixPath" name="should convert a Windows path to a Unix-style path when on Windows" time="0.001"></testcase>
<testcase classname="FileUtils convertWindowsPathToUnixPath" name="should not modify a native path when on Mac, even if it has backslashes" time="0.001"></testcase>
</testsuite>
<testsuite name="FileUtils getDirectoryPath" errors="0" tests="4" failures="0" time="0.004" timestamp="2014-05-08T13:23:27">
<testcase classname="FileUtils getDirectoryPath" name="should get the parent directory of a normalized win file path" time="0.001"></testcase>
<testcase classname="FileUtils getDirectoryPath" name="should get the parent directory of a posix file path" time="0.001"></testcase>
<testcase classname="FileUtils getDirectoryPath" name="should return the unchanged directory of a normalized win directory path" time="0.001"></testcase>
<testcase classname="FileUtils getDirectoryPath" name="should return the unchanged directory of a posix directory path" time="0"></testcase>
</testsuite>
<testsuite name="FileUtils getBaseName" errors="0" tests="6" failures="0" time="0.006" timestamp="2014-05-08T13:23:27">
<testcase classname="FileUtils getBaseName" name="should get the file name of a normalized win file path" time="0"></testcase>
<testcase classname="FileUtils getBaseName" name="should get the file name of a posix file path" time="0"></testcase>
<testcase classname="FileUtils getBaseName" name="should return the directory name of a normalized win directory path" time="0"></testcase>
<testcase classname="FileUtils getBaseName" name="should return the directory name of a posix directory path" time="0"></testcase>
<testcase classname="FileUtils getBaseName" name="should return the file name of a path containing #" time="0"></testcase>
<testcase classname="FileUtils getBaseName" name="should return the directory name of a path containing #" time="0"></testcase>
</testsuite>
<testsuite name="FileUtils getFileExtension" errors="0" tests="5" failures="0" time="0.005" timestamp="2014-05-08T13:23:27">
<testcase classname="FileUtils getFileExtension" name="should get the extension of a normalized win file path" time="0"></testcase>
<testcase classname="FileUtils getFileExtension" name="should get the extension of a posix file path" time="0"></testcase>
<testcase classname="FileUtils getFileExtension" name="should return empty extension for a normalized win directory path" time="0"></testcase>
<testcase classname="FileUtils getFileExtension" name="should return empty extension for a posix directory path" time="0"></testcase>
<testcase classname="FileUtils getFileExtension" name="should return the extension of a filename containing ." time="0"></testcase>
</testsuite>
<testsuite name="FileUtils getSmartFileExtension" errors="0" tests="8" failures="0" time="0.007" timestamp="2014-05-08T13:23:27">
<testcase classname="FileUtils getSmartFileExtension" name="should get the extension of a normalized win file path" time="0"></testcase>
<testcase classname="FileUtils getSmartFileExtension" name="should get the extension of a posix file path" time="0"></testcase>
<testcase classname="FileUtils getSmartFileExtension" name="should return empty extension for a normalized win directory path" time="0"></testcase>
<testcase classname="FileUtils getSmartFileExtension" name="should return empty extension for a posix directory path" time="0.001"></testcase>
<testcase classname="FileUtils getSmartFileExtension" name="should return the extension of a filename containing ." time="0.001"></testcase>
<testcase classname="FileUtils getSmartFileExtension" name="should return no extension for files with only . as a first character" time="0.001"></testcase>
<testcase classname="FileUtils getSmartFileExtension" name="should return the extension containing . for known types" time="0.001"></testcase>
<testcase classname="FileUtils getSmartFileExtension" name="should return the extension combined from other known extensions" time="0.001"></testcase>
</testsuite>
<testsuite name="ViewUtils" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:23:27">
</testsuite>
<testsuite name="ViewUtils Scroller Shadows" errors="0" tests="4" failures="0" time="0.017" timestamp="2014-05-08T13:23:27">
<testcase classname="ViewUtils Scroller Shadows" name="should not show the top shadow when no scrolling is available" time="0.006"></testcase>
<testcase classname="ViewUtils Scroller Shadows" name="should partially reveal the shadow" time="0.003"></testcase>
<testcase classname="ViewUtils Scroller Shadows" name="should update shadow position when installed" time="0.002"></testcase>
<testcase classname="ViewUtils Scroller Shadows" name="should fully reveal the shadow at the bottommost scroll position" time="0.003"></testcase>
</testsuite>
<testsuite name="FileSystem" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:23:30">
</testsuite>
<testsuite name="FileSystem Path normalization" errors="0" tests="5" failures="0" time="0.011" timestamp="2014-05-08T13:23:27">
<testcase classname="FileSystem Path normalization" name="should ensure trailing slash on directory paths" time="0.002"></testcase>
<testcase classname="FileSystem Path normalization" name="should eliminate duplicated (contiguous) slashes" time="0.002"></testcase>
<testcase classname="FileSystem Path normalization" name="should normalize continguous-slash prefixes for UNC paths" time="0.002"></testcase>
<testcase classname="FileSystem Path normalization" name="should normalize out &apos;..&apos; segments" time="0.002"></testcase>
<testcase classname="FileSystem Path normalization" name="should detect mistaken/invalid paths" time="0.001"></testcase>
</testsuite>
<testsuite name="FileSystem parent and name properties" errors="0" tests="3" failures="0" time="0.004" timestamp="2014-05-08T13:23:27">
<testcase classname="FileSystem parent and name properties" name="should have a name property" time="0.001"></testcase>
<testcase classname="FileSystem parent and name properties" name="should have a parentPath property if it is not a root directory" time="0.001"></testcase>
<testcase classname="FileSystem parent and name properties" name="should not have a parentPath property if it is a root directory" time="0"></testcase>
</testsuite>
<testsuite name="FileSystem Singleton enforcement" errors="0" tests="2" failures="0" time="0.004" timestamp="2014-05-08T13:23:27">
<testcase classname="FileSystem Singleton enforcement" name="should return the same File object for the same path" time="0.002"></testcase>
<testcase classname="FileSystem Singleton enforcement" name="should return the same Directory object for the same path" time="0.001"></testcase>
</testsuite>
<testsuite name="FileSystem Resolve" errors="0" tests="4" failures="0" time="0.007" timestamp="2014-05-08T13:23:27">
<testcase classname="FileSystem Resolve" name="should resolve a File" time="0.001"></testcase>
<testcase classname="FileSystem Resolve" name="should resolve a Directory" time="0.001"></testcase>
<testcase classname="FileSystem Resolve" name="should resolve the root" time="0.001"></testcase>
<testcase classname="FileSystem Resolve" name="should return an error if the File/Directory is not found" time="0.001"></testcase>
</testsuite>
<testsuite name="FileSystem Rename" errors="0" tests="4" failures="0" time="0.009" timestamp="2014-05-08T13:23:27">
<testcase classname="FileSystem Rename" name="should rename a File" time="0.004"></testcase>
<testcase classname="FileSystem Rename" name="should fail if the file doesn&apos;t exist" time="0.001"></testcase>
<testcase classname="FileSystem Rename" name="should fail if the new name already exists" time="0.001"></testcase>
<testcase classname="FileSystem Rename" name="should rename a Directory" time="0.001"></testcase>
</testsuite>
<testsuite name="FileSystem Read directory" errors="0" tests="3" failures="0" time="0.309" timestamp="2014-05-08T13:23:27">
<testcase classname="FileSystem Read directory" name="should read a Directory" time="0.001"></testcase>
<testcase classname="FileSystem Read directory" name="should return an error if the Directory can&apos;t be found" time="0.001"></testcase>
<testcase classname="FileSystem Read directory" name="should only call the impl once for simultaneous read requests" time="0.306"></testcase>
</testsuite>
<testsuite name="FileSystem Create directory" errors="0" tests="1" failures="0" time="0.002" timestamp="2014-05-08T13:23:28">
<testcase classname="FileSystem Create directory" name="should create a Directory" time="0.002"></testcase>
</testsuite>
<testsuite name="FileSystem Read and write files" errors="0" tests="3" failures="0" time="0.005" timestamp="2014-05-08T13:23:28">
<testcase classname="FileSystem Read and write files" name="should read and write files" time="0.001"></testcase>
<testcase classname="FileSystem Read and write files" name="should return an error if the file can&apos;t be found" time="0"></testcase>
<testcase classname="FileSystem Read and write files" name="should create a new file if needed" time="0.001"></testcase>
</testsuite>
<testsuite name="FileSystem FileSystemEntry.visit" errors="0" tests="5" failures="0" time="0.03" timestamp="2014-05-08T13:23:28">
<testcase classname="FileSystem FileSystemEntry.visit" name="should visit all entries by default" time="0.006"></testcase>
<testcase classname="FileSystem FileSystemEntry.visit" name="should visit with a specified maximum depth" time="0.006"></testcase>
<testcase classname="FileSystem FileSystemEntry.visit" name="should visit with a specified maximum number of entries" time="0.006"></testcase>
<testcase classname="FileSystem FileSystemEntry.visit" name="should visit only children of directories admitted by the filter" time="0.005"></testcase>
<testcase classname="FileSystem FileSystemEntry.visit" name="should converge when visiting directories with symlink cycles" time="0.004"></testcase>
</testsuite>
<testsuite name="FileSystem Event ordering" errors="0" tests="12" failures="0" time="1.868" timestamp="2014-05-08T13:23:28">
<testcase classname="FileSystem Event ordering" name="should apply rename callback before firing the &apos;rename&apos; event" time="0.266"></testcase>
<testcase classname="FileSystem Event ordering" name="should apply write callback before firing the &apos;change&apos; event" time="0.263"></testcase>
<testcase classname="FileSystem Event ordering" name="should apply unlink callback before firing the &apos;change&apos; event" time="0.261"></testcase>
<testcase classname="FileSystem Event ordering" name="should apply moveToTrash callback before firing the &apos;change&apos; event" time="0.001"></testcase>
<testcase classname="FileSystem Event ordering" name="should apply create callback before firing the &apos;change&apos; event" time="0.002"></testcase>
<testcase classname="FileSystem Event ordering" name="should handle overlapping writes to different files" time="0.012"></testcase>
<testcase classname="FileSystem Event ordering" name="should handle overlapping writes to different files - 2nd file finishes faster" time="0.109"></testcase>
<testcase classname="FileSystem Event ordering" name="should handle overlapping writes to different files - 2nd file finishes much faster" time="0.206"></testcase>
<testcase classname="FileSystem Event ordering" name="should handle overlapping writes to different files - 1st file finishes faster" time="0.117"></testcase>
<testcase classname="FileSystem Event ordering" name="should handle overlapping writes to different files - 1st file finishes much faster" time="0.212"></testcase>
<testcase classname="FileSystem Event ordering" name="should handle overlapping writes to different files - 1st file finishes less slowly" time="0.207"></testcase>
<testcase classname="FileSystem Event ordering" name="should handle overlapping writes to different files - 2nd file finishes less slowly" time="0.204"></testcase>
</testsuite>
<testsuite name="FileSystem File contents caching" errors="0" tests="10" failures="0" time="0.529" timestamp="2014-05-08T13:23:29">
<testcase classname="FileSystem File contents caching" name="should only read from the impl once" time="0.002"></testcase>
<testcase classname="FileSystem File contents caching" name="should support blind writes" time="0.002"></testcase>
<testcase classname="FileSystem File contents caching" name="should verify blind writes" time="0.001"></testcase>
<testcase classname="FileSystem File contents caching" name="should persist data on write and update cached data" time="0.001"></testcase>
<testcase classname="FileSystem File contents caching" name="should invalidate cached data on change" time="0.002"></testcase>
<testcase classname="FileSystem File contents caching" name="should invalidate cache when grandparent and parent directories change" time="0.003"></testcase>
<testcase classname="FileSystem File contents caching" name="should not cache data for unwatched files" time="0.002"></testcase>
<testcase classname="FileSystem File contents caching" name="should recursively invalidate cached data after unwatch" time="0.004"></testcase>
<testcase classname="FileSystem File contents caching" name="should invalidate cached data after unwatch, but allow read again" time="0.002"></testcase>
<testcase classname="FileSystem File contents caching" name="should unwatch when watchers go offline" time="0.504"></testcase>
</testsuite>
<testsuite name="FileSystem External change events" errors="0" tests="6" failures="0" time="0.128" timestamp="2014-05-08T13:23:30">
<testcase classname="FileSystem External change events" name="should fire change event on external file creation" time="0.003"></testcase>
<testcase classname="FileSystem External change events" name="should fire change event on external file update" time="0.001"></testcase>
<testcase classname="FileSystem External change events" name="should fire change event on external directory creation" time="0.002"></testcase>
<testcase classname="FileSystem External change events" name="should fire change event on external unlink" time="0.002"></testcase>
<testcase classname="FileSystem External change events" name="should fire change event on external file rename" time="0.002"></testcase>
<testcase classname="FileSystem External change events" name="should fire change event after rapid delete-add pair" time="0.115"></testcase>
</testsuite>
<testsuite name="HTML SimpleDOM" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:23:30">
</testsuite>
<testsuite name="HTML SimpleDOM Strict HTML parsing" errors="0" tests="11" failures="0" time="0.055" timestamp="2014-05-08T13:23:30">
<testcase classname="HTML SimpleDOM Strict HTML parsing" name="should parse a document with balanced, void and self-closing tags" time="0.003"></testcase>
<testcase classname="HTML SimpleDOM Strict HTML parsing" name="should parse a document with an implied-close tag followed by a tag that forces it to close" time="0.013"></testcase>
<testcase classname="HTML SimpleDOM Strict HTML parsing" name="should return null for an unclosed non-void/non-implied-close tag" time="0.001"></testcase>
<testcase classname="HTML SimpleDOM Strict HTML parsing" name="should adjust for offsets when logging errors" time="0.001"></testcase>
<testcase classname="HTML SimpleDOM Strict HTML parsing" name="should return null for an extra close tag" time="0"></testcase>
<testcase classname="HTML SimpleDOM Strict HTML parsing" name="should return null if there are unclosed tags at the end of the document" time="0"></testcase>
<testcase classname="HTML SimpleDOM Strict HTML parsing" name="should return null if there is a tokenization failure" time="0.001"></testcase>
<testcase classname="HTML SimpleDOM Strict HTML parsing" name="should handle empty attributes" time="0.001"></testcase>
<testcase classname="HTML SimpleDOM Strict HTML parsing" name="should handle unknown self-closing tags" time="0"></testcase>
<testcase classname="HTML SimpleDOM Strict HTML parsing" name="should merge text nodes around a comment" time="0.001"></testcase>
<testcase classname="HTML SimpleDOM Strict HTML parsing" name="should build simple DOM" time="0.026"></testcase>
</testsuite>
<testsuite name="HTMLUtils CodeHints" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:23:31">
</testsuite>
<testsuite name="HTMLUtils CodeHints Html Hinting" errors="0" tests="27" failures="0" time="0.724" timestamp="2014-05-08T13:23:30">
<testcase classname="HTMLUtils CodeHints Html Hinting" name="should not find attribute hints in an empty editor" time="0.086"></testcase>
<testcase classname="HTMLUtils CodeHints Html Hinting" name="should find an attribute as a tag is getting typed" time="0.03"></testcase>
<testcase classname="HTMLUtils CodeHints Html Hinting" name="should find an attribute as it&apos;s added to a tag" time="0.023"></testcase>
<testcase classname="HTMLUtils CodeHints Html Hinting" name="should find an attribute as the value is typed" time="0.024"></testcase>
<testcase classname="HTMLUtils CodeHints Html Hinting" name="should not find an attribute as text is added" time="0.022"></testcase>
<testcase classname="HTMLUtils CodeHints Html Hinting" name="should find the attribute value if present" time="0.022"></testcase>
<testcase classname="HTMLUtils CodeHints Html Hinting" name="should find the full attribute as an existing value is changed" time="0.022"></testcase>
<testcase classname="HTMLUtils CodeHints Html Hinting" name="should find the attribute value even when there is space around the =" time="0.021"></testcase>
<testcase classname="HTMLUtils CodeHints Html Hinting" name="should find the attribute value when the IP is after the =" time="0.021"></testcase>
<testcase classname="HTMLUtils CodeHints Html Hinting" name="should find the tagname as it&apos;s typed" time="0.021"></testcase>
<testcase classname="HTMLUtils CodeHints Html Hinting" name="should hint tagname as the open &lt; is typed" time="0.02"></testcase>
<testcase classname="HTMLUtils CodeHints Html Hinting" name="should find the tagname of the current tag if two tags are right next to each other" time="0.021"></testcase>
<testcase classname="HTMLUtils CodeHints Html Hinting" name="should hint attributes even if there is a lot of space between the tag name and the next attr name" time="0.022"></testcase>
<testcase classname="HTMLUtils CodeHints Html Hinting" name="should find the tagname as space is typed before the attr name is added" time="0.022"></testcase>
<testcase classname="HTMLUtils CodeHints Html Hinting" name="should not hint anything after the tag is closed" time="0.021"></testcase>
<testcase classname="HTMLUtils CodeHints Html Hinting" name="should not hint anything after a closing tag" time="0.022"></testcase>
<testcase classname="HTMLUtils CodeHints Html Hinting" name="should not hint anything inside a closing tag" time="0.021"></testcase>
<testcase classname="HTMLUtils CodeHints Html Hinting" name="should not find attributes in an empty editor" time="0.019"></testcase>
<testcase classname="HTMLUtils CodeHints Html Hinting" name="should not find attributes before the tag is opened" time="0.03"></testcase>
<testcase classname="HTMLUtils CodeHints Html Hinting" name="should not find attributes if there isn&apos;t a valid tag" time="0.023"></testcase>
<testcase classname="HTMLUtils CodeHints Html Hinting" name="should not find attributes after the tag is closed" time="0.023"></testcase>
<testcase classname="HTMLUtils CodeHints Html Hinting" name="should find all the tag attributes immediately after the tag" time="0.026"></testcase>
<testcase classname="HTMLUtils CodeHints Html Hinting" name="should find all the tag attributes before closing the tag" time="0.024"></testcase>
<testcase classname="HTMLUtils CodeHints Html Hinting" name="should find all the tag attributes backward and forward" time="0.025"></testcase>
<testcase classname="HTMLUtils CodeHints Html Hinting" name="should find valid attributes marked as errors by the tokenizer" time="0.028"></testcase>
<testcase classname="HTMLUtils CodeHints Html Hinting" name="should not find attributes in nested tags" time="0.038"></testcase>
<testcase classname="HTMLUtils CodeHints Html Hinting" name="should not find attributes of other tags on an opened tag" time="0.03"></testcase>
</testsuite>
<testsuite name="Document" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:23:31">
</testsuite>
<testsuite name="Document doMultipleEdits" errors="0" tests="8" failures="0" time="0.195" timestamp="2014-05-08T13:23:31">
<testcase classname="Document doMultipleEdits" name="should do a single edit, tracking a beforeEdit selection and preserving reversed flag" time="0.047"></testcase>
<testcase classname="Document doMultipleEdits" name="should do a single edit, leaving a non-beforeEdit selection untouched and preserving reversed flag" time="0.019"></testcase>
<testcase classname="Document doMultipleEdits" name="should do multiple edits, fixing up isBeforeEdit selections with respect to both edits and preserving other selection attributes" time="0.026"></testcase>
<testcase classname="Document doMultipleEdits" name="should do multiple edits, fixing up non-isBeforeEdit selections only with respect to other edits" time="0.02"></testcase>
<testcase classname="Document doMultipleEdits" name="should perform multiple changes/track multiple selections within a single edit, selections specified as isBeforeEdit" time="0.021"></testcase>
<testcase classname="Document doMultipleEdits" name="should perform multiple changes/track multiple selections within a single edit, selections not specified as isBeforeEdit" time="0.021"></testcase>
<testcase classname="Document doMultipleEdits" name="should throw an error if edits overlap" time="0.017"></testcase>
<testcase classname="Document doMultipleEdits" name="should throw an error if multiple edits in one group surround an edit in another group, even if they don&apos;t directly overlap" time="0.019"></testcase>
</testsuite>
<testsuite name="Extension Installation" errors="0" tests="5" failures="0" time="0.266" timestamp="2014-05-08T13:23:31">
<testcase classname="Extension Installation" name="should return information about a valid file" time="0.107"></testcase>
<testcase classname="Extension Installation" name="should detect missing metadata" time="0.023"></testcase>
<testcase classname="Extension Installation" name="extensions should install and load" time="0.036"></testcase>
<testcase classname="Extension Installation" name="extensions should install disabled if they are not compatible" time="0.036"></testcase>
<testcase classname="Extension Installation" name="should remove an installed extension" time="0.059"></testcase>
</testsuite>
<testsuite name="ExtensionLoader" errors="0" tests="11" failures="0" time="0.985" timestamp="2014-05-08T13:23:31">
<testcase classname="ExtensionLoader" name="should load a basic extension" time="0.036"></testcase>
<testcase classname="ExtensionLoader" name="should load a basic extension with sync init" time="0.012"></testcase>
<testcase classname="ExtensionLoader" name="should load a basic extension with async init" time="0.123"></testcase>
<testcase classname="ExtensionLoader" name="should load a basic extension that uses requirejs-config.json" time="0.056"></testcase>
<testcase classname="ExtensionLoader" name="should log an error if an extension fails to init" time="0.013"></testcase>
<testcase classname="ExtensionLoader" name="should log an error with a message if an extension fails to sync init" time="0.016"></testcase>
<testcase classname="ExtensionLoader" name="should log an error with a message if an extension fails to async init" time="0.123"></testcase>
<testcase classname="ExtensionLoader" name="should log an error if an extension init fails with a timeout" time="0.529"></testcase>
<testcase classname="ExtensionLoader" name="should log an error if an extension init fails with a runtime error" time="0.013"></testcase>
<testcase classname="ExtensionLoader" name="should log an error if an extension fails during RequireJS loading" time="0.045"></testcase>
<testcase classname="ExtensionLoader" name="should log an error if an extension uses an invalid requirejs-config.json" time="0.012"></testcase>
</testsuite>
<testsuite name="Node Connection" errors="0" tests="10" failures="3" time="102.795" timestamp="2014-05-08T13:23:32">
<testcase classname="Node Connection" name="should not crash when attempting to load malformed domains" time="0.027"></testcase>
<testcase classname="Node Connection" name="should execute synchronous commands" time="0.057"></testcase>
<testcase classname="Node Connection" name="should execute asynchronous commands" time="0.036"></testcase>
<testcase classname="Node Connection" name="should receive events" time="0.035"></testcase>
<testcase classname="Node Connection" name="should parse domain event specifications" time="0.025"></testcase>
<testcase classname="Node Connection" name="should receive command errors and continue to run" time="0.056"></testcase>
<testcase classname="Node Connection" name="should be robust to malformed messages" time="0.036"></testcase>
<testcase classname="Node Connection" name="should restart and automatically reconnect/reload" time="37.534"><failure type="expect" message="timeout: timed out after 30000 msec waiting for autoReconnect should reconnect to a different port">timeout: timed out after 30000 msec waiting for autoReconnect should reconnect to a different port</failure></testcase>
<testcase classname="Node Connection" name="should receive synchronous binary command responses" time="32.599"><failure type="expect" message="timeout: timed out after 30000 msec waiting for The NodeConnection should connect">timeout: timed out after 30000 msec waiting for The NodeConnection should connect</failure></testcase>
<testcase classname="Node Connection" name="should receive asynchronous binary command response" time="32.37"><failure type="expect" message="timeout: timed out after 30000 msec waiting for The NodeConnection should connect">timeout: timed out after 30000 msec waiting for The NodeConnection should connect</failure></testcase>
</testsuite>
<testsuite name="PreferenceStorage" errors="0" tests="6" failures="0" time="0.016" timestamp="2014-05-08T13:25:15">
<testcase classname="PreferenceStorage" name="should read initial preferences from JSON" time="0.004"></testcase>
<testcase classname="PreferenceStorage" name="should store values as JSON" time="0.002"></testcase>
<testcase classname="PreferenceStorage" name="should output preferences as JSON" time="0.001"></testcase>
<testcase classname="PreferenceStorage" name="should remove values" time="0.001"></testcase>
<testcase classname="PreferenceStorage" name="should use setAllValues to append multiple new name/value pairs" time="0.004"></testcase>
<testcase classname="PreferenceStorage" name="should throw errors for invalid values" time="0.002"></testcase>
</testsuite>
<testsuite name="TextRange" errors="0" tests="11" failures="0" time="0.268" timestamp="2014-05-08T13:25:15">
<testcase classname="TextRange" name="should not update or fire events for an edit before that doesn&apos;t change the number of lines" time="0.052"></testcase>
<testcase classname="TextRange" name="should update and fire a change, but not a contentChange, for an edit before that deletes a line" time="0.023"></testcase>
<testcase classname="TextRange" name="should update and fire a change, but not a contentChange, for an edit before that inserts a line" time="0.02"></testcase>
<testcase classname="TextRange" name="should not update or fire events for an edit after even if it changes the number of lines" time="0.02"></testcase>
<testcase classname="TextRange" name="should lose sync if entire document is replaced" time="0.021"></testcase>
<testcase classname="TextRange" name="should lose sync if entire range is replaced" time="0.024"></testcase>
<testcase classname="TextRange" name="should lose sync if a change overlaps the beginning of the range" time="0.023"></testcase>
<testcase classname="TextRange" name="should lose sync if a change overlaps the end of the range" time="0.023"></testcase>
<testcase classname="TextRange" name="should not update or send a change, but should send contentChange, if a change occurs inside range without changing # of lines" time="0.017"></testcase>
<testcase classname="TextRange" name="should update and send change/contentChange if a line is added inside range" time="0.021"></testcase>
<testcase classname="TextRange" name="should update and send change/contentChange if a line is deleted inside range" time="0.019"></testcase>
</testsuite>
<testsuite name="ExtensionManager" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:25:33">
</testsuite>
<testsuite name="ExtensionManager ExtensionManager" errors="0" tests="15" failures="0" time="3.219" timestamp="2014-05-08T13:25:15">
<testcase classname="ExtensionManager ExtensionManager" name="should download the extension list from the registry" time="0.512"></testcase>
<testcase classname="ExtensionManager ExtensionManager" name="should trigger a registryUpdate event when updating the extension list from the registry" time="0.558"></testcase>
<testcase classname="ExtensionManager ExtensionManager" name="should fail if it can&apos;t access the registry" time="0.506"></testcase>
<testcase classname="ExtensionManager ExtensionManager" name="should fail if registry content is malformed" time="0.513"></testcase>
<testcase classname="ExtensionManager ExtensionManager" name="should correctly list which extensions are installed" time="0.524"></testcase>
<testcase classname="ExtensionManager ExtensionManager" name="should list an extension that is installed but failed to load" time="0.52"></testcase>
<testcase classname="ExtensionManager ExtensionManager" name="should set the title for a legacy extension based on its folder name" time="0.013"></testcase>
<testcase classname="ExtensionManager ExtensionManager" name="should determine the location type for installed extensions" time="0.014"></testcase>
<testcase classname="ExtensionManager ExtensionManager" name="should raise a statusChange event when an extension is loaded" time="0.012"></testcase>
<testcase classname="ExtensionManager ExtensionManager" name="should raise a statusChange event when a legacy extension is loaded, with its path as the id" time="0.013"></testcase>
<testcase classname="ExtensionManager ExtensionManager" name="should remove an extension and raise a statusChange event" time="0.014"></testcase>
<testcase classname="ExtensionManager ExtensionManager" name="should fail when trying to remove an extension that&apos;s not installed" time="0.001"></testcase>
<testcase classname="ExtensionManager ExtensionManager" name="should calculate compatibility info for installed extensions" time="0.006"></testcase>
<testcase classname="ExtensionManager ExtensionManager" name="should calculate compatibility info for registry extensions" time="0.003"></testcase>
<testcase classname="ExtensionManager ExtensionManager" name="should return the correct download URL for an extension" time="0.001"></testcase>
</testsuite>
<testsuite name="ExtensionManager ExtensionManagerView Model" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:25:23">
</testsuite>
<testsuite name="ExtensionManager ExtensionManagerView Model when initialized from registry" errors="0" tests="8" failures="0" time="4.203" timestamp="2014-05-08T13:25:19">
<testcase classname="ExtensionManager ExtensionManagerView Model when initialized from registry" name="should initialize itself from the extension list" time="0.521"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView Model when initialized from registry" name="should start with the full set sorted in reverse publish date order" time="0.522"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView Model when initialized from registry" name="should search case-insensitively for a keyword in the metadata for a given list of registry ids" time="0.521"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView Model when initialized from registry" name="should &apos;AND&apos; space-separated search terms" time="0.528"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView Model when initialized from registry" name="should return correct results when subsequent queries are longer versions of previous queries" time="0.528"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView Model when initialized from registry" name="should go back to the full sorted set when cleared" time="0.526"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView Model when initialized from registry" name="longer versions of previous queries, and not, should also work with spaces" time="0.524"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView Model when initialized from registry" name="should trigger filter event when filter changes" time="0.527"></testcase>
</testsuite>
<testsuite name="ExtensionManager ExtensionManagerView Model when initialized from local extension list" errors="0" tests="14" failures="0" time="0.062" timestamp="2014-05-08T13:25:23">
<testcase classname="ExtensionManager ExtensionManagerView Model when initialized from local extension list" name="should initialize itself from the extension list" time="0.007"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView Model when initialized from local extension list" name="should only contain dev and user extensions, sorted case-insensitively on the extension title or name (or last segment of path name for legacy extensions)" time="0.002"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView Model when initialized from local extension list" name="should include a newly-installed extension" time="0.013"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView Model when initialized from local extension list" name="should raise an event when an extension is installed" time="0.014"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView Model when initialized from local extension list" name="should not include a removed extension" time="0.002"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView Model when initialized from local extension list" name="should raise an event when an extension is removed" time="0.002"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView Model when initialized from local extension list" name="should mark an extension for removal and raise an event without actually removing it" time="0.002"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView Model when initialized from local extension list" name="should unmark an extension previously marked for removal and raise an event" time="0.002"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView Model when initialized from local extension list" name="should remove extensions previously marked for removal" time="0.003"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView Model when initialized from local extension list" name="should mark an extension for update and raise an event" time="0.001"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView Model when initialized from local extension list" name="should unmark an extension for update, deleting the package and raising an event" time="0.001"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView Model when initialized from local extension list" name="should change an extension marked for removal to update raise an event" time="0.001"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView Model when initialized from local extension list" name="should update extensions marked for update" time="0.002"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView Model when initialized from local extension list" name="should recognize when an update is available" time="0.001"></testcase>
</testsuite>
<testsuite name="ExtensionManager ExtensionManagerView" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:25:33">
</testsuite>
<testsuite name="ExtensionManager ExtensionManagerView when showing registry entries" errors="0" tests="16" failures="0" time="7.883" timestamp="2014-05-08T13:25:23">
<testcase classname="ExtensionManager ExtensionManagerView when showing registry entries" name="should populate itself with registry entries and display their fields when created" time="0.526"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView when showing registry entries" name="should display owner even for installed items" time="0.009"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView when showing registry entries" name="should show an install button for each item" time="0.6"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView when showing registry entries" name="should show disabled install buttons for items that are already installed" time="0.526"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView when showing registry entries" name="should show disabled install button if requires newer API version" time="0.517"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView when showing registry entries" name="should show disabled install button if requires older API version" time="0.509"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView when showing registry entries" name="should show enabled install button if latest requires newer API version" time="0.516"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView when showing registry entries" name="should show enabled install button if latest requires older API version" time="0.514"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView when showing registry entries" name="should bring up the install dialog and install an item when install button is clicked" time="0.536"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView when showing registry entries" name="should install latest compatible version" time="0.529"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView when showing registry entries" name="should disable the install button for an item immediately after installing it" time="0.531"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView when showing registry entries" name="should show enabled update button for items that have a compatible update available" time="0.509"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView when showing registry entries" name="should show disabled update button for items whose available update requires newer API version" time="0.517"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView when showing registry entries" name="should show disabled update button for items whose available update requires older API version" time="0.508"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView when showing registry entries" name="should show disabled update button for items that are in dev folder and have a compatible update available" time="0.516"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView when showing registry entries" name="should open links in the native browser instead of in Brackets" time="0.511"></testcase>
</testsuite>
<testsuite name="ExtensionManager ExtensionManagerView when showing installed extensions" errors="0" tests="18" failures="0" time="2.342" timestamp="2014-05-08T13:25:31">
<testcase classname="ExtensionManager ExtensionManagerView when showing installed extensions" name="should show the &apos;no extensions&apos; message when there are no extensions installed" time="0.031"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView when showing installed extensions" name="should show the &apos;no extensions match&apos; message when there are extensions installed but none match the search query" time="0.019"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView when showing installed extensions" name="should show only items that are already installed and have a remove button for each" time="0.021"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView when showing installed extensions" name="should show a newly installed extension" time="0.015"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView when showing installed extensions" name="should not show extensions in the default folder" time="0.015"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView when showing installed extensions" name="should show extensions that failed to load with a &apos;remove&apos; link" time="0.019"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView when showing installed extensions" name="should not have a &apos;remove&apos; link for extensions in the dev folder that failed to load" time="0.016"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView when showing installed extensions" name="should disable the Remove button for extensions in the dev folder" time="0.016"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView when showing installed extensions" name="should mark the given extension for removal, hide the remove button, and show an undo link" time="0.017"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView when showing installed extensions" name="should undo marking an extension for removal" time="0.02"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView when showing installed extensions" name="should mark a legacy extension for removal" time="0.018"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView when showing installed extensions" name="should no longer show a fully removed extension" time="0.023"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView when showing installed extensions" name="should show enabled update button for items that have a compatible update available" time="0.521"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView when showing installed extensions" name="should show disabled update button for items whose available update requires newer API version" time="0.513"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView when showing installed extensions" name="should show disabled update button for items whose available update requires older API version" time="0.519"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView when showing installed extensions" name="should mark the given extension for update, hide the remove button, and show an undo link" time="0.016"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView when showing installed extensions" name="should undo marking an extension for update" time="0.018"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView when showing installed extensions" name="should properly return information about available updates and clean it after updates are installed" time="0.516"></testcase>
</testsuite>
<testsuite name="ExtensionManager ExtensionManagerView ExtensionManagerDialog" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:25:33">
</testsuite>
<testsuite name="ExtensionManager ExtensionManagerView ExtensionManagerDialog _performChanges" errors="0" tests="7" failures="0" time="0.133" timestamp="2014-05-08T13:25:33">
<testcase classname="ExtensionManager ExtensionManagerView ExtensionManagerDialog _performChanges" name="should not show a removal confirmation dialog if no extensions were removed" time="0.013"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView ExtensionManagerDialog _performChanges" name="should not show a removal confirmation dialog if an extension was marked for removal and then unmarked" time="0.019"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView ExtensionManagerDialog _performChanges" name="should show a removal confirmation dialog if an extension was removed" time="0.018"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView ExtensionManagerDialog _performChanges" name="should remove extensions and quit if the user hits Remove and Quit on the removal confirmation dialog" time="0.019"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView ExtensionManagerDialog _performChanges" name="should not remove extensions or quit if the user hits Cancel on the removal confirmation dialog" time="0.028"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView ExtensionManagerDialog _performChanges" name="should update extensions and quit if the user hits Update and Quit on the removal confirmation dialog" time="0.017"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView ExtensionManagerDialog _performChanges" name="should not update extensions or quit if the user hits Cancel on the confirmation dialog" time="0.015"></testcase>
</testsuite>
<testsuite name="ExtensionManager ExtensionManagerView ExtensionManagerDialog initialization" errors="0" tests="4" failures="0" time="0.15" timestamp="2014-05-08T13:25:33">
<testcase classname="ExtensionManager ExtensionManagerView ExtensionManagerDialog initialization" name="should show the spinner before the registry appears successfully and hide it after" time="0.046"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView ExtensionManagerDialog initialization" name="should show an error and remove the spinner if there is an error fetching the registry" time="0.035"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView ExtensionManagerDialog initialization" name="should hide the registry tab when no URL is specified" time="0.033"></testcase>
<testcase classname="ExtensionManager ExtensionManagerView ExtensionManagerDialog initialization" name="should show the registry tab when a URL is specified" time="0.033"></testcase>
</testsuite>
<testsuite name="LanguageManager" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:25:34">
</testsuite>
<testsuite name="LanguageManager built-in languages" errors="0" tests="1" failures="0" time="0.005" timestamp="2014-05-08T13:25:33">
<testcase classname="LanguageManager built-in languages" name="should support built-in languages" time="0.003"></testcase>
</testsuite>
<testsuite name="LanguageManager LanguageManager API" errors="0" tests="10" failures="0" time="0.016" timestamp="2014-05-08T13:25:33">
<testcase classname="LanguageManager LanguageManager API" name="should map identifiers to languages" time="0.001"></testcase>
<testcase classname="LanguageManager LanguageManager API" name="should map file extensions to languages" time="0.001"></testcase>
<testcase classname="LanguageManager LanguageManager API" name="should map complex file extensions to languages" time="0.001"></testcase>
<testcase classname="LanguageManager LanguageManager API" name="should map file names to languages" time="0"></testcase>
<testcase classname="LanguageManager LanguageManager API" name="should remove file extensions and add to new languages" time="0.001"></testcase>
<testcase classname="LanguageManager LanguageManager API" name="should remove file names and add to new languages" time="0.001"></testcase>
<testcase classname="LanguageManager LanguageManager API" name="should add multiple file extensions to languages" time="0"></testcase>
<testcase classname="LanguageManager LanguageManager API" name="should remove multiple file extensions from languages" time="0.001"></testcase>
<testcase classname="LanguageManager LanguageManager API" name="should add multiple file names to languages" time="0.001"></testcase>
<testcase classname="LanguageManager LanguageManager API" name="should remove multiple file names from languages" time="0.001"></testcase>
</testsuite>
<testsuite name="LanguageManager defineLanguage" errors="0" tests="10" failures="0" time="0.107" timestamp="2014-05-08T13:25:33">
<testcase classname="LanguageManager defineLanguage" name="should create a basic language" time="0.003"></testcase>
<testcase classname="LanguageManager defineLanguage" name="should log errors for invalid language id values" time="0.001"></testcase>
<testcase classname="LanguageManager defineLanguage" name="should log errors for invalid language name values" time="0.001"></testcase>
<testcase classname="LanguageManager defineLanguage" name="should log errors for missing mode value" time="0.001"></testcase>
<testcase classname="LanguageManager defineLanguage" name="should create a language with file extensions and a mode" time="0.055"></testcase>
<testcase classname="LanguageManager defineLanguage" name="should allow multiple languages to use the same mode" time="0.001"></testcase>
<testcase classname="LanguageManager defineLanguage" name="should return an error if a language is already defined" time="0"></testcase>
<testcase classname="LanguageManager defineLanguage" name="should validate comment prefix/suffix" time="0.002"></testcase>
<testcase classname="LanguageManager defineLanguage" name="should validate multiple line comment prefixes" time="0.002"></testcase>
<testcase classname="LanguageManager defineLanguage" name="should load a built-in CodeMirror mode" time="0.033"></testcase>
</testsuite>
<testsuite name="LanguageManager Preferences" errors="0" tests="4" failures="0" time="0.019" timestamp="2014-05-08T13:25:34">
<testcase classname="LanguageManager Preferences" name="should be able to add extension mappings via a preference" time="0.006"></testcase>
<testcase classname="LanguageManager Preferences" name="should manage overridden default extensions" time="0.005"></testcase>
<testcase classname="LanguageManager Preferences" name="should be able to manage file name mappings via a preference" time="0.003"></testcase>
<testcase classname="LanguageManager Preferences" name="should manage overridden default file names" time="0.003"></testcase>
</testsuite>
<testsuite name="LanguageManager isBinary" errors="0" tests="3" failures="0" time="0.005" timestamp="2014-05-08T13:25:34">
<testcase classname="LanguageManager isBinary" name="should recognize known binary file extensions" time="0.001"></testcase>
<testcase classname="LanguageManager isBinary" name="should recognize known non-binary file extensions" time="0.001"></testcase>
<testcase classname="LanguageManager isBinary" name="should recognize unknown file extensions as non-binary" time="0.001"></testcase>
</testsuite>
<testsuite name="LowLevelFileIO" errors="0" tests="1" failures="1" time="44.043" timestamp="2014-05-08T13:25:34">
<testcase classname="LowLevelFileIO" name="should have a brackets.fs namespace" time="1.105"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1832:18</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
</testsuite>
<testsuite name="LowLevelFileIO readdir" errors="0" tests="4" failures="4" time="4.402" timestamp="2014-05-08T13:25:35">
<testcase classname="LowLevelFileIO readdir" name="should read a directory from disk" time="1.098"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
<testcase classname="LowLevelFileIO readdir" name="should return an error if the directory doesn&apos;t exist" time="1.098"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
<testcase classname="LowLevelFileIO readdir" name="should return an error if the directory can&apos;t be read (Mac only)" time="1.1"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
<testcase classname="LowLevelFileIO readdir" name="should return an error if invalid parameters are passed" time="1.095"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
</testsuite>
<testsuite name="LowLevelFileIO stat" errors="0" tests="4" failures="4" time="4.411" timestamp="2014-05-08T13:25:39">
<testcase classname="LowLevelFileIO stat" name="should return correct information for a directory" time="1.093"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
<testcase classname="LowLevelFileIO stat" name="should return correct information for a file" time="1.097"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
<testcase classname="LowLevelFileIO stat" name="should return an error if the file/directory doesn&apos;t exist" time="1.117"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
<testcase classname="LowLevelFileIO stat" name="should return an error if incorrect parameters are passed" time="1.094"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
</testsuite>
<testsuite name="LowLevelFileIO readFile" errors="0" tests="12" failures="12" time="13.162" timestamp="2014-05-08T13:25:43">
<testcase classname="LowLevelFileIO readFile" name="should read a text file" time="1.087"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
<testcase classname="LowLevelFileIO readFile" name="should return an error if trying to read a non-existent file" time="1.093"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
<testcase classname="LowLevelFileIO readFile" name="should return an error if trying to use an unsppported encoding" time="1.086"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
<testcase classname="LowLevelFileIO readFile" name="should return an error if called with invalid parameters" time="1.088"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
<testcase classname="LowLevelFileIO readFile" name="should return an error if trying to read a directory" time="1.096"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
<testcase classname="LowLevelFileIO readFile" name="should return an error trying to read a binary file" time="1.096"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
<testcase classname="LowLevelFileIO readFile" name="should be able to quickly determine if a large file is UTF-8" time="1.094"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
<testcase classname="LowLevelFileIO readFile" name="should be able to quickly read a small UTF-8 file" time="1.1"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
<testcase classname="LowLevelFileIO readFile" name="should not be able to read a UTF-8 file with malformed continuation bytes" time="1.095"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
<testcase classname="LowLevelFileIO readFile" name="should be able to read a UTF-8 file with a BOM" time="1.098"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
<testcase classname="LowLevelFileIO readFile" name="should return an error trying to read a UTF16 file" time="1.096"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
<testcase classname="LowLevelFileIO readFile" name="should return an error trying to read a UTF32 file" time="1.103"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
</testsuite>
<testsuite name="LowLevelFileIO writeFile" errors="0" tests="4" failures="4" time="4.419" timestamp="2014-05-08T13:25:57">
<testcase classname="LowLevelFileIO writeFile" name="should write the entire contents of a file" time="1.115"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
<testcase classname="LowLevelFileIO writeFile" name="should return an error if the file can&apos;t be written (Mac only)" time="1.097"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
<testcase classname="LowLevelFileIO writeFile" name="should return an error if called with invalid parameters" time="1.093"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
<testcase classname="LowLevelFileIO writeFile" name="should return an error if trying to write a directory" time="1.106"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
</testsuite>
<testsuite name="LowLevelFileIO unlink" errors="0" tests="4" failures="4" time="4.403" timestamp="2014-05-08T13:26:01">
<testcase classname="LowLevelFileIO unlink" name="should remove a file" time="1.1"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
<testcase classname="LowLevelFileIO unlink" name="should return an error if the file doesn&apos;t exist" time="1.092"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
<testcase classname="LowLevelFileIO unlink" name="should return an error if called with invalid parameters" time="1.111"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
<testcase classname="LowLevelFileIO unlink" name="should remove a directory" time="1.091"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
</testsuite>
<testsuite name="LowLevelFileIO makedir" errors="0" tests="1" failures="1" time="1.096" timestamp="2014-05-08T13:26:05">
<testcase classname="LowLevelFileIO makedir" name="should make a new directory" time="1.094"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
</testsuite>
<testsuite name="LowLevelFileIO rename" errors="0" tests="4" failures="4" time="4.405" timestamp="2014-05-08T13:26:07">
<testcase classname="LowLevelFileIO rename" name="should rename a file" time="1.103"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
<testcase classname="LowLevelFileIO rename" name="should rename a folder" time="1.105"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
<testcase classname="LowLevelFileIO rename" name="should return an error if the new name already exists" time="1.091"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
<testcase classname="LowLevelFileIO rename" name="should return an error if the parent folder is read only (Mac only)" time="1.097"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
</testsuite>
<testsuite name="LowLevelFileIO copyFile" errors="0" tests="1" failures="1" time="1.101" timestamp="2014-05-08T13:26:11">
<testcase classname="LowLevelFileIO copyFile" name="should copy a file" time="1.099"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
</testsuite>
<testsuite name="LowLevelFileIO specialDirectories" errors="0" tests="2" failures="2" time="2.206" timestamp="2014-05-08T13:26:12">
<testcase classname="LowLevelFileIO specialDirectories" name="should have an application support directory" time="1.095"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
<testcase classname="LowLevelFileIO specialDirectories" name="should have a user documents directory" time="1.107"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
</testsuite>
<testsuite name="LowLevelFileIO moveToTrash" errors="0" tests="3" failures="3" time="3.329" timestamp="2014-05-08T13:26:14">
<testcase classname="LowLevelFileIO moveToTrash" name="should move a file to the trash" time="1.115"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
<testcase classname="LowLevelFileIO moveToTrash" name="should move a folder to the trash" time="1.103"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
<testcase classname="LowLevelFileIO moveToTrash" name="should return an error if the item doesn&apos;t exsit" time="1.103"><failure type="expect" message="TypeError: Cannot call method &apos;copy&apos; of undefined">TypeError: Cannot call method &apos;copy&apos; of undefined
at Object.copy (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:138:29)
at null.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/LowLevelFileIO-test.js:99:46)
at jasmine.Block.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1024:15)
at jasmine.Queue.next_ (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1842:31)
at onComplete (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1838:18)
at jasmine.WaitsForBlock.execute (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2322:5)
at file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:2336:12</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.">Error: Expected &apos;[set permission] promise rejected with: 3&apos; to be &apos;(expected resolved instead)&apos;.
at new jasmine.ExpectationResult (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:102:32)
at null.toBe (file:///home/irichter/dev/brackets/test/thirdparty/jasmine-core/jasmine.js:1194:29)
at Object.&lt;anonymous&gt; (file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:173:77)
at j (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:26676)
at Object.k.fireWith (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:27489)
at Object.e.(anonymous function) [as reject] (file:///home/irichter/dev/brackets/src/thirdparty/jquery-2.1.0.min.js:2:28469)
at file:///home/irichter/dev/brackets/test/spec/SpecRunnerUtils.js:107:26</failure><failure type="expect" message="timeout: timed out after 1000 msec waiting for success [set permission]">timeout: timed out after 1000 msec waiting for success [set permission]</failure></testcase>
</testsuite>
<testsuite name="Preferences Base" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:26:18">
</testsuite>
<testsuite name="Preferences Base Memory Storage" errors="0" tests="1" failures="0" time="0.003" timestamp="2014-05-08T13:26:18">
<testcase classname="Preferences Base Memory Storage" name="should support get and save operations" time="0.002"></testcase>
</testsuite>
<testsuite name="Preferences Base Path Layer" errors="0" tests="4" failures="0" time="0.012" timestamp="2014-05-08T13:26:18">
<testcase classname="Preferences Base Path Layer" name="handles a variety of glob patterns" time="0.007"></testcase>
<testcase classname="Preferences Base Path Layer" name="can retrieve the location of the pref value" time="0.001"></testcase>
<testcase classname="Preferences Base Path Layer" name="can set values in any of the patterns" time="0.002"></testcase>
<testcase classname="Preferences Base Path Layer" name="should not set the same value twice" time="0"></testcase>
</testsuite>
<testsuite name="Preferences Base Scope" errors="0" tests="9" failures="0" time="0.021" timestamp="2014-05-08T13:26:18">
<testcase classname="Preferences Base Scope" name="should look up a value" time="0.001"></testcase>
<testcase classname="Preferences Base Scope" name="should not set the same value twice" time="0.001"></testcase>
<testcase classname="Preferences Base Scope" name="should correctly handle changes on objects" time="0.004"></testcase>
<testcase classname="Preferences Base Scope" name="should remove the preference when setting it with &apos;undefined&apos; value" time="0.001"></testcase>
<testcase classname="Preferences Base Scope" name="should look up a value with a path layer" time="0.001"></testcase>
<testcase classname="Preferences Base Scope" name="can look up the location of a preference" time="0.001"></testcase>
<testcase classname="Preferences Base Scope" name="can set a preference at any layer" time="0.002"></testcase>
<testcase classname="Preferences Base Scope" name="can return its keys" time="0.001"></testcase>
<testcase classname="Preferences Base Scope" name="notifies of changes" time="0.002"></testcase>
</testsuite>
<testsuite name="Preferences Base PreferencesSystem" errors="0" tests="17" failures="0" time="0.077" timestamp="2014-05-08T13:26:18">
<testcase classname="Preferences Base PreferencesSystem" name="should yield an error if a preference is redefined" time="0.001"></testcase>
<testcase classname="Preferences Base PreferencesSystem" name="will automatically wrap a Storage with a Scope" time="0.004"></testcase>
<testcase classname="Preferences Base PreferencesSystem" name="should find the default values" time="0.002"></testcase>
<testcase classname="Preferences Base PreferencesSystem" name="should produce an error for setValue on undefined scope" time="0.001"></testcase>
<testcase classname="Preferences Base PreferencesSystem" name="supports nested scopes" time="0.006"></testcase>
<testcase classname="Preferences Base PreferencesSystem" name="handles asynchronously loaded scopes" time="0.007"></testcase>
<testcase classname="Preferences Base PreferencesSystem" name="can notify of preference changes through set" time="0.003"></testcase>
<testcase classname="Preferences Base PreferencesSystem" name="can notify of preference changes via scope changes and scope changes" time="0.005"></testcase>
<testcase classname="Preferences Base PreferencesSystem" name="notifies when there are layer changes" time="0.003"></testcase>
<testcase classname="Preferences Base PreferencesSystem" name="can notify changes for single preference objects" time="0.003"></testcase>
<testcase classname="Preferences Base PreferencesSystem" name="can pause and resume broadcast of events" time="0.004"></testcase>
<testcase classname="Preferences Base PreferencesSystem" name="can dynamically modify the default scope order" time="0.003"></testcase>
<testcase classname="Preferences Base PreferencesSystem" name="can set preference values at any level" time="0.01"></testcase>
<testcase classname="Preferences Base PreferencesSystem" name="supports removal of scopes" time="0.003"></testcase>
<testcase classname="Preferences Base PreferencesSystem" name="can provide an automatically prefixed version of itself" time="0.005"></testcase>
<testcase classname="Preferences Base PreferencesSystem" name="should support validator to ignore invalid values" time="0.005"></testcase>
<testcase classname="Preferences Base PreferencesSystem" name="should handle context normalization" time="0.004"></testcase>
</testsuite>
<testsuite name="Preferences Base File Storage" errors="0" tests="6" failures="0" time="0.272" timestamp="2014-05-08T13:26:18">
<testcase classname="Preferences Base File Storage" name="can load preferences from disk" time="0.049"></testcase>
<testcase classname="Preferences Base File Storage" name="can validate preferences loaded from disk" time="0.035"></testcase>
<testcase classname="Preferences Base File Storage" name="can save preferences" time="0.049"></testcase>
<testcase classname="Preferences Base File Storage" name="can create a new pref file" time="0.06"></testcase>
<testcase classname="Preferences Base File Storage" name="can load preferences later" time="0.037"></testcase>
<testcase classname="Preferences Base File Storage" name="is fine with empty preferences files" time="0.037"></testcase>
</testsuite>
<testsuite name="RemoteFunctions" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:26:18">
</testsuite>
<testsuite name="RemoteFunctions DOMEditHandler" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:26:18">
</testsuite>
<testsuite name="RemoteFunctions DOMEditHandler Element edits" errors="0" tests="7" failures="0" time="0.022" timestamp="2014-05-08T13:26:18">
<testcase classname="RemoteFunctions DOMEditHandler Element edits" name="should support elementInsert" time="0.008"></testcase>
<testcase classname="RemoteFunctions DOMEditHandler Element edits" name="should parse entities in attribute values when inserting an element" time="0.002"></testcase>
<testcase classname="RemoteFunctions DOMEditHandler Element edits" name="should handle an elementInsert for an &lt;html&gt; tag when one already exists by just setting its id" time="0.001"></testcase>
<testcase classname="RemoteFunctions DOMEditHandler Element edits" name="should handle an elementInsert for a &lt;head&gt; tag when one already exists by just setting its id" time="0.001"></testcase>
<testcase classname="RemoteFunctions DOMEditHandler Element edits" name="should handle an elementInsert for a &lt;body&gt; tag when one already exists by just setting its id" time="0.001"></testcase>
<testcase classname="RemoteFunctions DOMEditHandler Element edits" name="should support elementInsert for implicit open tags that appear in the DOM" time="0.002"></testcase>
<testcase classname="RemoteFunctions DOMEditHandler Element edits" name="should support elementDelete" time="0.002"></testcase>
</testsuite>
<testsuite name="RemoteFunctions DOMEditHandler Attribute edits" errors="0" tests="5" failures="0" time="0.007" timestamp="2014-05-08T13:26:18">
<testcase classname="RemoteFunctions DOMEditHandler Attribute edits" name="should support attrAdd" time="0.001"></testcase>
<testcase classname="RemoteFunctions DOMEditHandler Attribute edits" name="should support attrChange" time="0"></testcase>
<testcase classname="RemoteFunctions DOMEditHandler Attribute edits" name="should support attrDelete" time="0.001"></testcase>
<testcase classname="RemoteFunctions DOMEditHandler Attribute edits" name="should parse entities in the value when adding an attribute" time="0.001"></testcase>
<testcase classname="RemoteFunctions DOMEditHandler Attribute edits" name="should parse entities in the value when changing an attribute" time="0"></testcase>
</testsuite>
<testsuite name="RemoteFunctions DOMEditHandler Text edits" errors="0" tests="9" failures="0" time="0.025" timestamp="2014-05-08T13:26:18">
<testcase classname="RemoteFunctions DOMEditHandler Text edits" name="should support textInsert" time="0.001"></testcase>
<testcase classname="RemoteFunctions DOMEditHandler Text edits" name="should support textReplace" time="0.001"></testcase>
<testcase classname="RemoteFunctions DOMEditHandler Text edits" name="should support textDelete" time="0.005"></testcase>
<testcase classname="RemoteFunctions DOMEditHandler Text edits" name="should parse entities when inserting text content" time="0.001"></testcase>
<testcase classname="RemoteFunctions DOMEditHandler Text edits" name="should parse entities when replacing text content" time="0.001"></testcase>
<testcase classname="RemoteFunctions DOMEditHandler Text edits" name="should not parse entities when inserting into &lt;script&gt;" time="0.002"></testcase>
<testcase classname="RemoteFunctions DOMEditHandler Text edits" name="should not parse entities when inserting into &lt;style&gt;" time="0.002"></testcase>
<testcase classname="RemoteFunctions DOMEditHandler Text edits" name="should not parse entities when replacing in &lt;script&gt;" time="0.002"></testcase>
<testcase classname="RemoteFunctions DOMEditHandler Text edits" name="should not parse entities when replacing in &lt;style&gt;" time="0.001"></testcase>
</testsuite>
<testsuite name="RemoteFunctions DOMEditHandler Working with text and elements" errors="0" tests="3" failures="0" time="0.016" timestamp="2014-05-08T13:26:18">
<testcase classname="RemoteFunctions DOMEditHandler Working with text and elements" name="should support textInsert with elements" time="0.003"></testcase>
<testcase classname="RemoteFunctions DOMEditHandler Working with text and elements" name="should support textDelete with elements" time="0.006"></testcase>
<testcase classname="RemoteFunctions DOMEditHandler Working with text and elements" name="should support textReplace with elements" time="0.005"></testcase>
</testsuite>
<testsuite name="RemoteFunctions DOMEditHandler Working with text and comments" errors="0" tests="3" failures="0" time="0.009" timestamp="2014-05-08T13:26:18">
<testcase classname="RemoteFunctions DOMEditHandler Working with text and comments" name="should support textInsert with comments" time="0.002"></testcase>
<testcase classname="RemoteFunctions DOMEditHandler Working with text and comments" name="should support textReplace with comments" time="0.003"></testcase>
<testcase classname="RemoteFunctions DOMEditHandler Working with text and comments" name="should support textDelete with comments" time="0.003"></testcase>
</testsuite>
<testsuite name="RemoteFunctions DOMEditHandler Ignoring injected highlight nodes in text operations" errors="0" tests="14" failures="0" time="0.031" timestamp="2014-05-08T13:26:18">
<testcase classname="RemoteFunctions DOMEditHandler Ignoring injected highlight nodes in text operations" name="should handle deleting text content before highlight node" time="0.002"></testcase>
<testcase classname="RemoteFunctions DOMEditHandler Ignoring injected highlight nodes in text operations" name="should handle deleting text content after highlight node" time="0.002"></testcase>
<testcase classname="RemoteFunctions DOMEditHandler Ignoring injected highlight nodes in text operations" name="should handle deleting text content before and after highlight node" time="0.001"></testcase>
<testcase classname="RemoteFunctions DOMEditHandler Ignoring injected highlight nodes in text operations" name="should handle deleting text content before highlight node relative to tag after highlight node" time="0.002"></testcase>
<testcase classname="RemoteFunctions DOMEditHandler Ignoring injected highlight nodes in text operations" name="should handle deleting text content after highlight node relative to tag before highlight node" time="0.001"></testcase>
<testcase classname="RemoteFunctions DOMEditHandler Ignoring injected highlight nodes in text operations" name="should handle deleting text content before and after highlight node relative to tag after" time="0.002"></testcase>
<testcase classname="RemoteFunctions DOMEditHandler Ignoring injected highlight nodes in text operations" name="should handle deleting text content before and after highlight node relative to tag before" time="0.002"></testcase>
<testcase classname="RemoteFunctions DOMEditHandler Ignoring injected highlight nodes in text operations" name="should handle replacing text content before highlight node" time="0.002"></testcase>
<testcase classname="RemoteFunctions DOMEditHandler Ignoring injected highlight nodes in text operations" name="should handle replacing text content after highlight node" time="0.001"></testcase>
<testcase classname="RemoteFunctions DOMEditHandler Ignoring injected highlight nodes in text operations" name="should handle replacing text content before and after highlight node" time="0.001"></testcase>
<testcase classname="RemoteFunctions DOMEditHandler Ignoring injected highlight nodes in text operations" name="should handle replacing text content before highlight node relative to tag after highlight node" time="0.002"></testcase>
<testcase classname="RemoteFunctions DOMEditHandler Ignoring injected highlight nodes in text operations" name="should handle replacing text content after highlight node relative to tag before highlight node" time="0.002"></testcase>
<testcase classname="RemoteFunctions DOMEditHandler Ignoring injected highlight nodes in text operations" name="should handle replacing text content before and after highlight node relative to tag after" time="0.001"></testcase>
<testcase classname="RemoteFunctions DOMEditHandler Ignoring injected highlight nodes in text operations" name="should handle replacing text content before and after highlight node relative to tag before" time="0.001"></testcase>
</testsuite>
<testsuite name="EditorManager" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:26:19">
</testsuite>
<testsuite name="EditorManager resizeEditor() flag options" errors="0" tests="12" failures="0" time="1.041" timestamp="2014-05-08T13:26:18">
<testcase classname="EditorManager resizeEditor() flag options" name="should refresh if force is specified even if no width or height change" time="0.11"></testcase>
<testcase classname="EditorManager resizeEditor() flag options" name="should refresh if force is specified when width changed but height hasn&apos;t" time="0.078"></testcase>
<testcase classname="EditorManager resizeEditor() flag options" name="should refresh if force is specified when height changed but width hasn&apos;t" time="0.091"></testcase>
<testcase classname="EditorManager resizeEditor() flag options" name="should refresh if force is specified when both height and width changed" time="0.086"></testcase>
<testcase classname="EditorManager resizeEditor() flag options" name="should NOT refresh if skip is specified if no width or height change" time="0.078"></testcase>
<testcase classname="EditorManager resizeEditor() flag options" name="should NOT refresh if skip is specified when width changed but height hasn&apos;t" time="0.094"></testcase>
<testcase classname="EditorManager resizeEditor() flag options" name="should NOT refresh if skip is specified when height changed but width hasn&apos;t" time="0.082"></testcase>
<testcase classname="EditorManager resizeEditor() flag options" name="should NOT refresh if skip is specified when both height and width changed" time="0.085"></testcase>
<testcase classname="EditorManager resizeEditor() flag options" name="should NOT refresh if unspecified if no width or height change" time="0.081"></testcase>
<testcase classname="EditorManager resizeEditor() flag options" name="should refresh if unspecified when width changed but height hasn&apos;t" time="0.079"></testcase>
<testcase classname="EditorManager resizeEditor() flag options" name="should refresh if unspecified when height changed but width hasn&apos;t" time="0.083"></testcase>
<testcase classname="EditorManager resizeEditor() flag options" name="should refresh if unspecified when both height and width changed" time="0.084"></testcase>
</testsuite>
<testsuite name="Editor" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:26:27">
</testsuite>
<testsuite name="Editor Editor wrapper" errors="0" tests="4" failures="0" time="0.198" timestamp="2014-05-08T13:26:19">
<testcase classname="Editor Editor wrapper" name="should initialize with content" time="0.036"></testcase>
<testcase classname="Editor Editor wrapper" name="should trigger a synchronous Document change event when an edit is performed" time="0.044"></testcase>
<testcase classname="Editor Editor wrapper" name="should send an array of multiple change records for an operation" time="0.042"></testcase>
<testcase classname="Editor Editor wrapper" name="should set mode based on Document language" time="0.073"></testcase>
</testsuite>
<testsuite name="Editor Focus" errors="0" tests="2" failures="0" time="0.079" timestamp="2014-05-08T13:26:19">
<testcase classname="Editor Focus" name="should not have focus until explicitly set" time="0.036"></testcase>
<testcase classname="Editor Focus" name="should be able to detect when it has focus" time="0.041"></testcase>
</testsuite>
<testsuite name="Editor getModeForSelection()" errors="0" tests="2" failures="0" time="0.19" timestamp="2014-05-08T13:26:19">
<testcase classname="Editor getModeForSelection()" name="should get mode in homogeneous file" time="0.058"></testcase>
<testcase classname="Editor getModeForSelection()" name="should get mode in HTML file" time="0.129"></testcase>
</testsuite>
<testsuite name="Editor Column/ch conversion" errors="0" tests="1" failures="0" time="0.117" timestamp="2014-05-08T13:26:20">
<testcase classname="Editor Column/ch conversion" name="should get mode in HTML file" time="0.116"></testcase>
</testsuite>
<testsuite name="Editor Selections" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:26:23">
</testsuite>
<testsuite name="Editor Selections hasSelection" errors="0" tests="5" failures="0" time="0.277" timestamp="2014-05-08T13:26:20">
<testcase classname="Editor Selections hasSelection" name="should return false for a single cursor" time="0.07"></testcase>
<testcase classname="Editor Selections hasSelection" name="should return true for a single selection" time="0.058"></testcase>
<testcase classname="Editor Selections hasSelection" name="should return false for multiple cursors" time="0.045"></testcase>
<testcase classname="Editor Selections hasSelection" name="should return true for multiple selections" time="0.049"></testcase>
<testcase classname="Editor Selections hasSelection" name="should return true for mixed cursors and selections" time="0.053"></testcase>
</testsuite>
<testsuite name="Editor Selections getCursorPos" errors="0" tests="6" failures="0" time="0.295" timestamp="2014-05-08T13:26:20">
<testcase classname="Editor Selections getCursorPos" name="should return a single cursor" time="0.048"></testcase>
<testcase classname="Editor Selections getCursorPos" name="should return the correct ends of a single selection" time="0.048"></testcase>
<testcase classname="Editor Selections getCursorPos" name="should return the default primary cursor in a multiple cursor selection" time="0.046"></testcase>
<testcase classname="Editor Selections getCursorPos" name="should return the specific primary cursor in a multiple cursor selection" time="0.046"></testcase>
<testcase classname="Editor Selections getCursorPos" name="should return the correct ends of the default primary selection in a multiple selection" time="0.051"></testcase>
<testcase classname="Editor Selections getCursorPos" name="should return the correct ends of a specific primary selection in a multiple selection" time="0.054"></testcase>
</testsuite>
<testsuite name="Editor Selections setCursorPos" errors="0" tests="4" failures="0" time="0.201" timestamp="2014-05-08T13:26:20">
<testcase classname="Editor Selections setCursorPos" name="should replace an existing single cursor" time="0.048"></testcase>
<testcase classname="Editor Selections setCursorPos" name="should replace an existing single selection" time="0.052"></testcase>
<testcase classname="Editor Selections setCursorPos" name="should replace existing multiple cursors" time="0.047"></testcase>
<testcase classname="Editor Selections setCursorPos" name="should replace existing multiple selections" time="0.05"></testcase>
</testsuite>
<testsuite name="Editor Selections getSelection" errors="0" tests="11" failures="0" time="0.541" timestamp="2014-05-08T13:26:21">
<testcase classname="Editor Selections getSelection" name="should return a single cursor" time="0.044"></testcase>
<testcase classname="Editor Selections getSelection" name="should return a single selection" time="0.05"></testcase>
<testcase classname="Editor Selections getSelection" name="should return a multiline selection" time="0.05"></testcase>
<testcase classname="Editor Selections getSelection" name="should return a single selection in the proper order when reversed" time="0.06"></testcase>
<testcase classname="Editor Selections getSelection" name="should return a multiline selection in the proper order when reversed" time="0.049"></testcase>
<testcase classname="Editor Selections getSelection" name="should return the default primary cursor in a multiple cursor selection" time="0.044"></testcase>
<testcase classname="Editor Selections getSelection" name="should return the specific primary cursor in a multiple cursor selection" time="0.046"></testcase>
<testcase classname="Editor Selections getSelection" name="should return the default primary selection in a multiple selection" time="0.048"></testcase>
<testcase classname="Editor Selections getSelection" name="should return the default primary selection in the proper order when reversed" time="0.048"></testcase>
<testcase classname="Editor Selections getSelection" name="should return the specific primary selection in a multiple selection" time="0.048"></testcase>
<testcase classname="Editor Selections getSelection" name="should return the specific primary selection in the proper order when reversed" time="0.048"></testcase>
</testsuite>
<testsuite name="Editor Selections getSelections" errors="0" tests="7" failures="0" time="0.355" timestamp="2014-05-08T13:26:21">
<testcase classname="Editor Selections getSelections" name="should return a single cursor" time="0.05"></testcase>
<testcase classname="Editor Selections getSelections" name="should return a single selection" time="0.048"></testcase>
<testcase classname="Editor Selections getSelections" name="should properly reverse a single selection whose head is before its anchor" time="0.047"></testcase>
<testcase classname="Editor Selections getSelections" name="should return multiple cursors" time="0.045"></testcase>
<testcase classname="Editor Selections getSelections" name="should return a multiple selection" time="0.054"></testcase>
<testcase classname="Editor Selections getSelections" name="should properly reverse selections whose heads are before their anchors in a multiple selection" time="0.05"></testcase>
<testcase classname="Editor Selections getSelections" name="should properly reverse multiline selections whose heads are before their anchors in a multiple selection" time="0.057"></testcase>
</testsuite>
<testsuite name="Editor Selections getSelectedText" errors="0" tests="5" failures="0" time="0.241" timestamp="2014-05-08T13:26:21">
<testcase classname="Editor Selections getSelectedText" name="should return empty string for a cursor" time="0.044"></testcase>
<testcase classname="Editor Selections getSelectedText" name="should return the contents of a single selection" time="0.049"></testcase>
<testcase classname="Editor Selections getSelectedText" name="should return the primary selection by default, but concatenate contents if allSelections is true" time="0.049"></testcase>
<testcase classname="Editor Selections getSelectedText" name="should return a primary selection other than the last" time="0.049"></testcase>
<testcase classname="Editor Selections getSelectedText" name="should return the contents of a multiple selection when some selections are reversed" time="0.047"></testcase>
</testsuite>
<testsuite name="Editor Selections setSelection" errors="0" tests="5" failures="0" time="0.28" timestamp="2014-05-08T13:26:22">
<testcase classname="Editor Selections setSelection" name="should replace an existing single cursor" time="0.05"></testcase>
<testcase classname="Editor Selections setSelection" name="should replace an existing single selection" time="0.062"></testcase>
<testcase classname="Editor Selections setSelection" name="should allow implicit end" time="0.044"></testcase>
<testcase classname="Editor Selections setSelection" name="should replace existing multiple cursors" time="0.064"></testcase>
<testcase classname="Editor Selections setSelection" name="should replace existing multiple selections" time="0.056"></testcase>
</testsuite>
<testsuite name="Editor Selections setSelections" errors="0" tests="7" failures="0" time="0.377" timestamp="2014-05-08T13:26:22">
<testcase classname="Editor Selections setSelections" name="should replace an existing single cursor" time="0.054"></testcase>
<testcase classname="Editor Selections setSelections" name="should replace an existing single selection" time="0.051"></testcase>
<testcase classname="Editor Selections setSelections" name="should replace existing multiple cursors" time="0.059"></testcase>
<testcase classname="Editor Selections setSelections" name="should replace existing multiple selections" time="0.058"></testcase>
<testcase classname="Editor Selections setSelections" name="should specify non-default primary selection" time="0.051"></testcase>
<testcase classname="Editor Selections setSelections" name="should sort and merge overlapping selections" time="0.051"></testcase>
<testcase classname="Editor Selections setSelections" name="should properly set reversed selections" time="0.049"></testcase>
</testsuite>
<testsuite name="Editor Selections convertToLineSelections" errors="0" tests="14" failures="0" time="0.649" timestamp="2014-05-08T13:26:22">
<testcase classname="Editor Selections convertToLineSelections" name="should expand a cursor to a line selection, keeping original selection for tracking" time="0.045"></testcase>
<testcase classname="Editor Selections convertToLineSelections" name="should expand a range within a line to a line selection, keeping original selection for tracking" time="0.043"></testcase>
<testcase classname="Editor Selections convertToLineSelections" name="should expand a range that spans multiple lines to a line selection" time="0.044"></testcase>
<testcase classname="Editor Selections convertToLineSelections" name="should preserve the reversed attribute on a tracked range" time="0.043"></testcase>
<testcase classname="Editor Selections convertToLineSelections" name="should keep a line selection the same if expandEndAtStartOfLine is not set" time="0.045"></testcase>
<testcase classname="Editor Selections convertToLineSelections" name="should expand a line selection if expandEndAtStartOfLine is set" time="0.044"></testcase>
<testcase classname="Editor Selections convertToLineSelections" name="should process a discontiguous mix of cursor, range, and line selections separately, preserving the primary tracked selection" time="0.047"></testcase>
<testcase classname="Editor Selections convertToLineSelections" name="should merge selections on same line, preserving primary/reversed info on subsumed selections" time="0.042"></testcase>
<testcase classname="Editor Selections convertToLineSelections" name="should merge selections on adjacent lines by default" time="0.042"></testcase>
<testcase classname="Editor Selections convertToLineSelections" name="should merge adjacent multiline selections where the first selection ends on the same line where the second selection starts" time="0.05"></testcase>
<testcase classname="Editor Selections convertToLineSelections" name="should not merge selections on adjacent lines if mergeAdjacent is false" time="0.046"></testcase>
<testcase classname="Editor Selections convertToLineSelections" name="should merge line selections separated by a one-line gap by default if expandEndAtStartOfLine is true" time="0.056"></testcase>
<testcase classname="Editor Selections convertToLineSelections" name="should not merge line selections separated by a one-line gap if expandEndAtStartOfLine is true but mergeAdjacent is false" time="0.045"></testcase>
<testcase classname="Editor Selections convertToLineSelections" name="should merge multiple adjacent/overlapping selections together" time="0.046"></testcase>
</testsuite>
<testsuite name="Editor Soft tabs" errors="0" tests="25" failures="0" time="2.308" timestamp="2014-05-08T13:26:23">
<testcase classname="Editor Soft tabs" name="should move left by a soft tab if cursor is immediately after 1 indent level worth of spaces at beginning of line" time="0.042"></testcase>
<testcase classname="Editor Soft tabs" name="should backspace by a soft tab if cursor is immediately after 1 indent level worth of spaces at beginning of line" time="0.05"></testcase>
<testcase classname="Editor Soft tabs" name="should move right by a soft tab if cursor is immediately before 1 indent level worth of spaces at beginning of line" time="0.037"></testcase>
<testcase classname="Editor Soft tabs" name="should delete right by a soft tab if cursor is immediately before 1 indent level worth of spaces at beginning of line" time="0.039"></testcase>
<testcase classname="Editor Soft tabs" name="should move left by a soft tab if cursor is immediately after 2 indent levels worth of spaces at beginning of line" time="0.039"></testcase>
<testcase classname="Editor Soft tabs" name="should backspace by a soft tab if cursor is immediately after 2 indent levels worth of spaces at beginning of line" time="0.041"></testcase>
<testcase classname="Editor Soft tabs" name="should move right by a soft tab if cursor is immediately before 2 indent levels worth of spaces at beginning of line" time="0.038"></testcase>
<testcase classname="Editor Soft tabs" name="should delete right by a soft tab if cursor is immediately before 2 indent levels worth of spaces at beginning of line" time="0.038"></testcase>
<testcase classname="Editor Soft tabs" name="should move left by a soft tab if cursor is exactly between 2 indent levels worth of spaces" time="0.039"></testcase>
<testcase classname="Editor Soft tabs" name="should backspace by a soft tab if cursor is exactly between 2 indent levels worth of spaces" time="0.059"></testcase>
<testcase classname="Editor Soft tabs" name="should move right by a soft tab if cursor is exactly between 2 indent levels worth of spaces" time="0.043"></testcase>
<testcase classname="Editor Soft tabs" name="should delete right by a soft tab if cursor is exactly between 2 indent levels worth of spaces" time="0.051"></testcase>
<testcase classname="Editor Soft tabs" name="should move left to tab stop if cursor is 1 char after it" time="0.051"></testcase>
<testcase classname="Editor Soft tabs" name="should backspace to tab stop if cursor is 1 char after it" time="0.041"></testcase>
<testcase classname="Editor Soft tabs" name="should move right to tab stop if cursor is 1 char before it" time="0.04"></testcase>
<testcase classname="Editor Soft tabs" name="should delete right to tab stop if cursor is 1 char before it" time="0.041"></testcase>
<testcase classname="Editor Soft tabs" name="should move left to tab stop if cursor is 2 chars after it" time="0.041"></testcase>
<testcase classname="Editor Soft tabs" name="should backspace to tab stop if cursor is 2 chars after it" time="0.041"></testcase>
<testcase classname="Editor Soft tabs" name="should move right to tab stop if cursor is 2 chars before it" time="0.049"></testcase>
<testcase classname="Editor Soft tabs" name="should delete right to tab stop if cursor is 2 chars before it" time="0.047"></testcase>
<testcase classname="Editor Soft tabs" name="should not handle soft tab if moving left after non-whitespace content" time="0.05"></testcase>
<testcase classname="Editor Soft tabs" name="should not handle soft tab if moving right after non-whitespace content" time="0.044"></testcase>
<testcase classname="Editor Soft tabs" name="should not handle soft tab if moving left at beginning of line" time="0.047"></testcase>
<testcase classname="Editor Soft tabs" name="should not handle soft tab if moving right at end of line" time="0.052"></testcase>
<testcase classname="Editor Soft tabs" name="should not handle soft tab if moving right at end of line would cause a jump past end of line" time="0.042"></testcase>
</testsuite>
<testsuite name="Editor Soft tabs with soft tabs preference off" errors="0" tests="4" failures="0" time="0.179" timestamp="2014-05-08T13:26:24">
<testcase classname="Editor Soft tabs with soft tabs preference off" name="should move left by 1 space if cursor is immediately after 1 indent level worth of spaces at beginning of line" time="0.047"></testcase>
<testcase classname="Editor Soft tabs with soft tabs preference off" name="should backspace by 1 space if cursor is immediately after 1 indent level worth of spaces at beginning of line" time="0.046"></testcase>
<testcase classname="Editor Soft tabs with soft tabs preference off" name="should move right by 1 space if cursor is immediately before 1 indent level worth of spaces at beginning of line" time="0.044"></testcase>
<testcase classname="Editor Soft tabs with soft tabs preference off" name="should delete right by 1 space if cursor is immediately before 1 indent level worth of spaces at beginning of line" time="0.042"></testcase>
</testsuite>
<testsuite name="Editor Soft tabs with multiple selections" errors="0" tests="20" failures="0" time="1.014" timestamp="2014-05-08T13:26:24">
<testcase classname="Editor Soft tabs with multiple selections" name="should move left over a soft tab from multiple aligned cursors" time="0.045"></testcase>
<testcase classname="Editor Soft tabs with multiple selections" name="should move right over a soft tab from multiple aligned cursors" time="0.054"></testcase>
<testcase classname="Editor Soft tabs with multiple selections" name="should backspace over a soft tab from multiple aligned cursors" time="0.048"></testcase>
<testcase classname="Editor Soft tabs with multiple selections" name="should delete right over a soft tab from multiple aligned cursors" time="0.046"></testcase>
<testcase classname="Editor Soft tabs with multiple selections" name="should move left to next soft tab from multiple cursors at same distance from tab stops" time="0.043"></testcase>
<testcase classname="Editor Soft tabs with multiple selections" name="should move right to next soft tab from multiple cursors at same distance from tab stops" time="0.045"></testcase>
<testcase classname="Editor Soft tabs with multiple selections" name="should backspace to next soft tab from multiple cursors at same distance from tab stops" time="0.051"></testcase>
<testcase classname="Editor Soft tabs with multiple selections" name="should delete right to next soft tab from multiple cursors at same distance from tab stops" time="0.045"></testcase>
<testcase classname="Editor Soft tabs with multiple selections" name="should do default move left from multiple cursors at different distances from tab stops" time="0.043"></testcase>
<testcase classname="Editor Soft tabs with multiple selections" name="should do default move right from multiple cursors at different distances from tab stops" time="0.067"></testcase>
<testcase classname="Editor Soft tabs with multiple selections" name="should do default backspace from multiple cursors at different distances from tab stops" time="0.055"></testcase>
<testcase classname="Editor Soft tabs with multiple selections" name="should do default delete right from multiple cursors at different distances from tab stops" time="0.07"></testcase>
<testcase classname="Editor Soft tabs with multiple selections" name="should do default move left from multiple cursors if one is inside content" time="0.055"></testcase>
<testcase classname="Editor Soft tabs with multiple selections" name="should do default move right from multiple cursors if one is inside content" time="0.053"></testcase>
<testcase classname="Editor Soft tabs with multiple selections" name="should do default backspace from multiple cursors if one is inside content" time="0.046"></testcase>
<testcase classname="Editor Soft tabs with multiple selections" name="should do default delete right from multiple cursors if one is inside content" time="0.048"></testcase>
<testcase classname="Editor Soft tabs with multiple selections" name="should collapse ranges and handle other consistent soft tabs when moving left" time="0.045"></testcase>
<testcase classname="Editor Soft tabs with multiple selections" name="should collapse ranges and handle other consistent soft tabs when moving right" time="0.045"></testcase>
<testcase classname="Editor Soft tabs with multiple selections" name="should delete ranges and do nothing with cursors when backspacing" time="0.049"></testcase>
<testcase classname="Editor Soft tabs with multiple selections" name="should delete ranges and do nothing with cursors when deleting right" time="0.05"></testcase>
</testsuite>
<testsuite name="Editor Smart Tab handling" errors="0" tests="20" failures="0" time="1.691" timestamp="2014-05-08T13:26:25">
<testcase classname="Editor Smart Tab handling" name="should indent and move cursor to correct position if at beginning of an empty line - spaces" time="0.058"></testcase>
<testcase classname="Editor Smart Tab handling" name="should indent and move cursor to correct position if at beginning of an empty line - tabs" time="0.082"></testcase>
<testcase classname="Editor Smart Tab handling" name="should move cursor to end of whitespace (without adding more) if at beginning of a line with correct amount of whitespace - spaces" time="0.051"></testcase>
<testcase classname="Editor Smart Tab handling" name="should move cursor to end of whitespace (without adding more) if at beginning of a line with correct amount of whitespace - tabs" time="0.048"></testcase>
<testcase classname="Editor Smart Tab handling" name="should add another indent whitespace if already past correct indent level on an all whitespace line - spaces" time="0.045"></testcase>
<testcase classname="Editor Smart Tab handling" name="should add another indent whitespace if already past correct indent level on an all whitespace line - tabs" time="0.045"></testcase>
<testcase classname="Editor Smart Tab handling" name="should indent improperly indented line to proper level and move cursor to beginning of content if cursor is in whitespace before content - spaces" time="0.045"></testcase>
<testcase classname="Editor Smart Tab handling" name="should indent improperly indented line to proper level and move cursor to beginning of content if cursor is in whitespace before content - tabs" time="0.044"></testcase>
<testcase classname="Editor Smart Tab handling" name="should add one indent level (not autoindent) if cursor is immediately before content - spaces" time="0.047"></testcase>
<testcase classname="Editor Smart Tab handling" name="should add one indent level (not autoindent) if cursor is immediately before content - tabs" time="0.056"></testcase>
<testcase classname="Editor Smart Tab handling" name="should move cursor and not indent further if cursor is in whitespace before properly indented line - spaces" time="0.052"></testcase>
<testcase classname="Editor Smart Tab handling" name="should move cursor and not indent further if cursor is in whitespace before properly indented line - tabs" time="0.041"></testcase>
<testcase classname="Editor Smart Tab handling" name="should add an indent level if cursor is immediately before content on properly indented line - spaces" time="0.045"></testcase>
<testcase classname="Editor Smart Tab handling" name="should add an indent level if cursor is immediately before content on properly indented line - tabs" time="0.044"></testcase>
<testcase classname="Editor Smart Tab handling" name="should add an indent level to each line (regardless of existing indentation) if selection spans multiple lines - spaces" time="0.06"></testcase>
<testcase classname="Editor Smart Tab handling" name="should add an indent level to each line (regardless of existing indentation) if selection spans multiple lines - tabs" time="0.06"></testcase>
<testcase classname="Editor Smart Tab handling" name="should add spaces to indent to the next soft tab stop if cursor is in the middle of a line after non-whitespace content - spaces" time="0.049"></testcase>
<testcase classname="Editor Smart Tab handling" name="should insert a tab if cursor is in the middle of a line after non-whitespace content - tab" time="0.057"></testcase>
<testcase classname="Editor Smart Tab handling" name="should add spaces to next soft tab before the beginning of the selection if it&apos;s a range in the middle of a line after non-whitespace content - spaces" time="0.062"></testcase>
<testcase classname="Editor Smart Tab handling" name="should add a tab before the beginning of the selection if it&apos;s a range in the middle of a line after non-whitespace content - tabs" time="0.052"></testcase>
</testsuite>
<testsuite name="Editor Smart Tab handling with multiple selections" errors="0" tests="12" failures="0" time="0.634" timestamp="2014-05-08T13:26:26">
<testcase classname="Editor Smart Tab handling with multiple selections" name="should add one indent level before all selected lines if any of the selections is multiline - spaces" time="0.055"></testcase>
<testcase classname="Editor Smart Tab handling with multiple selections" name="should add one indent level before all selected lines if any of the selections is multiline - tabs" time="0.061"></testcase>
<testcase classname="Editor Smart Tab handling with multiple selections" name="should add spaces before each cursor to get to next tab stop if any selection is after first non-whitespace character in its line - spaces" time="0.051"></testcase>
<testcase classname="Editor Smart Tab handling with multiple selections" name="should add a tab before each cursor if any selection is after first non-whitespace character in its line - tabs" time="0.062"></testcase>
<testcase classname="Editor Smart Tab handling with multiple selections" name="should add spaces before beginning of each range to get to next tab stop if any selection is after first non-whitespace character in its line - spaces" time="0.05"></testcase>
<testcase classname="Editor Smart Tab handling with multiple selections" name="should add a tab before beginning of each range if any selection is after first non-whitespace character in its line - tabs" time="0.05"></testcase>
<testcase classname="Editor Smart Tab handling with multiple selections" name="should add spaces before each cursor to get to next tab stop (not autoindent) if any selection is exactly before the first non-whitespace character on the line - spaces" time="0.045"></testcase>
<testcase classname="Editor Smart Tab handling with multiple selections" name="should add a tab at each cursor (not autoindent) if any selection is exactly before the first non-whitespace character on the line - tabs" time="0.044"></testcase>
<testcase classname="Editor Smart Tab handling with multiple selections" name="should try to autoindent each line if all cursors are in start-of-line whitespace, and if at least one cursor changed position or indent was added, do nothing further - spaces" time="0.062"></testcase>
<testcase classname="Editor Smart Tab handling with multiple selections" name="should try to autoindent each line if all cursors are in start-of-line whitespace, and if at least one cursor changed position or indent was added, do nothing further - tabs" time="0.054"></testcase>
<testcase classname="Editor Smart Tab handling with multiple selections" name="should try to autoindent each line if all cursors are in start-of-line whitespace, but if no cursors changed position or added indent, add an indent to the beginning of each line - spaces" time="0.047"></testcase>
<testcase classname="Editor Smart Tab handling with multiple selections" name="should try to autoindent each line if all cursors are in start-of-line whitespace, but if no cursors changed position or added indent, add an indent to the beginning of each line - tabs" time="0.047"></testcase>
</testsuite>
<testsuite name="MultiRangeInlineEditor" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:26:28">
</testsuite>
<testsuite name="MultiRangeInlineEditor unit" errors="0" tests="12" failures="0" time="0.631" timestamp="2014-05-08T13:26:27">
<testcase classname="MultiRangeInlineEditor unit" name="should initialize to a default state" time="0.04"></testcase>
<testcase classname="MultiRangeInlineEditor unit" name="should load a single rule and initialize htmlContent and editor" time="0.058"></testcase>
<testcase classname="MultiRangeInlineEditor unit" name="should contain a rule list widget displaying info for each rule" time="0.049"></testcase>
<testcase classname="MultiRangeInlineEditor unit" name="should change selection to the next rule" time="0.053"></testcase>
<testcase classname="MultiRangeInlineEditor unit" name="should change selection to the previous rule" time="0.055"></testcase>
<testcase classname="MultiRangeInlineEditor unit" name="should retrieve all rules" time="0.039"></testcase>
<testcase classname="MultiRangeInlineEditor unit" name="should retreive the selected rule" time="0.05"></testcase>
<testcase classname="MultiRangeInlineEditor unit" name="should add a new range after other ranges from the same doc, then select it" time="0.054"></testcase>
<testcase classname="MultiRangeInlineEditor unit" name="should add a new range at the end if there are no other ranges from the same doc" time="0.06"></testcase>
<testcase classname="MultiRangeInlineEditor unit" name="should properly refresh the editor if the range is inserted at the currently selected index" time="0.069"></testcase>
<testcase classname="MultiRangeInlineEditor unit" name="should show the rule list if a range is added when only one range existed before" time="0.053"></testcase>
<testcase classname="MultiRangeInlineEditor unit" name="should be empty if no ranges are specified" time="0.039"></testcase>
</testsuite>
<testsuite name="HTML Instrumentation" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:26:38">
</testsuite>
<testsuite name="HTML Instrumentation interaction with document and editor" errors="0" tests="1" failures="0" time="0.099" timestamp="2014-05-08T13:26:28">
<testcase classname="HTML Instrumentation interaction with document and editor" name="should properly regenerate marks when instrumented HTML is re-requested after document is edited" time="0.098"></testcase>
</testsuite>
<testsuite name="HTML Instrumentation HTML Instrumentation in wellformed HTML" errors="0" tests="10" failures="0" time="0.98" timestamp="2014-05-08T13:26:28">
<testcase classname="HTML Instrumentation HTML Instrumentation in wellformed HTML" name="should instrument all start tags except some empty tags" time="0.129"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in wellformed HTML" name="should have created cache and never call document.getText() again" time="0.114"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in wellformed HTML" name="should have recreated cache when document timestamp is different" time="0.089"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in wellformed HTML" name="should get &apos;img&apos; tag for cursor positions inside img tag." time="0.087"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in wellformed HTML" name="should get the parent &apos;a&apos; tag for cursor positions between &apos;img&apos; and its parent &apos;a&apos; tag." time="0.085"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in wellformed HTML" name="No tag at cursor positions outside of the &apos;html&apos; tag" time="0.097"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in wellformed HTML" name="Should get parent tag (body) for all cursor positions inside an html comment" time="0.104"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in wellformed HTML" name="should get &apos;meta/link&apos; tag for cursor positions in meta/link tags, not &apos;head&apos; tag" time="0.092"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in wellformed HTML" name="Should get &apos;title&apos; tag at cursor positions (either in the content or begin/end tag)" time="0.088"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in wellformed HTML" name="Should get &apos;h2&apos; tag at cursor positions (either in the content or begin or end tag)" time="0.086"></testcase>
</testsuite>
<testsuite name="HTML Instrumentation HTML Instrumentation in valid but not wellformed HTML" errors="0" tests="18" failures="0" time="1.952" timestamp="2014-05-08T13:26:29">
<testcase classname="HTML Instrumentation HTML Instrumentation in valid but not wellformed HTML" name="should instrument all start tags except some empty tags" time="0.196"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in valid but not wellformed HTML" name="should get &apos;p&apos; tag for cursor positions before the succeding start tag of an unclosed &apos;p&apos; tag" time="0.114"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in valid but not wellformed HTML" name="should get &apos;h1&apos; tag for cursor positions inside &apos;h1&apos; that is following an unclosed &apos;p&apos; tag." time="0.1"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in valid but not wellformed HTML" name="should get &apos;wbr&apos; tag for cursor positions inside &lt;wbr&gt;, not its parent &apos;h1&apos; tag." time="0.101"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in valid but not wellformed HTML" name="should get &apos;li&apos; tag for cursor positions inside the content of an unclosed &apos;li&apos; tag" time="0.111"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in valid but not wellformed HTML" name="should get &apos;br&apos; tag for cursor positions inside &lt;br&gt;, not its parent &apos;li&apos; tag" time="0.096"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in valid but not wellformed HTML" name="should get &apos;ul&apos; tag for cursor positions within &apos;ul&apos; but outside of any unclosed &apos;li&apos;." time="0.1"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in valid but not wellformed HTML" name="should get &apos;table&apos; tag for cursor positions that are not in any unclosed child tags" time="0.101"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in valid but not wellformed HTML" name="should get &apos;tr&apos; tag for cursor positions between child tags" time="0.109"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in valid but not wellformed HTML" name="should get &apos;input&apos; tag for cursor positions inside one of the &apos;input&apos; tags." time="0.092"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in valid but not wellformed HTML" name="should get &apos;option&apos; tag for cursor positions in any unclosed &apos;option&apos; tag." time="0.114"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in valid but not wellformed HTML" name="should NOT get &apos;option&apos; tag for cursor positions in the parent tags of an unclosed &apos;option&apos;." time="0.097"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in valid but not wellformed HTML" name="should get &apos;label&apos; tag for cursor positions in the &apos;label&apos; tag or its content." time="0.097"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in valid but not wellformed HTML" name="should get &apos;form&apos; tag for cursor positions NOT in any form element." time="0.098"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in valid but not wellformed HTML" name="should get &apos;hr&apos; tag for cursor positions in &lt;hr&gt; tag, not its parent &lt;form&gt; tag." time="0.106"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in valid but not wellformed HTML" name="should get &apos;script&apos; tag for cursor positions anywhere inside the tag including CDATA." time="0.097"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in valid but not wellformed HTML" name="should get &apos;footer&apos; tag that is explicitly using all uppercase tag names." time="0.104"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in valid but not wellformed HTML" name="should get &apos;body&apos; for text after an h1 that closed a previous uncleosd paragraph" time="0.113"></testcase>
</testsuite>
<testsuite name="HTML Instrumentation HTML Instrumentation in an HTML page with some invalid markups" errors="0" tests="16" failures="0" time="1.6" timestamp="2014-05-08T13:26:31">
<testcase classname="HTML Instrumentation HTML Instrumentation in an HTML page with some invalid markups" name="should instrument all start tags except some empty tags" time="0.115"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in an HTML page with some invalid markups" name="should get &apos;script&apos; tag for cursor positions anywhere inside the tag including CDATA." time="0.104"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in an HTML page with some invalid markups" name="should get &apos;style&apos; tag for cursor positions anywhere inside the tag including CDATA." time="0.129"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in an HTML page with some invalid markups" name="should get &apos;i&apos; tag for cursor position before &lt;/b&gt;." time="0.102"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in an HTML page with some invalid markups" name="should get &apos;p&apos; tag after &lt;/b&gt; because the &lt;/b&gt; closed the overlapping &lt;i&gt;." time="0.092"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in an HTML page with some invalid markups" name="should get &apos;body&apos; tag in a paragraph that has missing &lt;p&gt; tag, but has &lt;/p&gt;" time="0.092"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in an HTML page with some invalid markups" name="should get &apos;hr&apos; tag for cursor positions in any forms of &lt;hr&gt; tag" time="0.089"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in an HTML page with some invalid markups" name="should get &apos;h2&apos; tag for cursor positions between &lt;wbr&gt; and its invalide end tag." time="0.091"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in an HTML page with some invalid markups" name="should get &apos;wbr&apos; tag for cursor positions inside &lt;wbr&gt;, not its parent &lt;h2&gt; tag." time="0.096"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in an HTML page with some invalid markups" name="should get &apos;h2&apos; tag for cursor positions inside invalid &lt;/wbr&gt; tag." time="0.094"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in an HTML page with some invalid markups" name="should get &apos;name&apos; tag for cursor positions before &lt;name&gt; and &lt;/name&gt;." time="0.102"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in an HTML page with some invalid markups" name="should get &apos;th&apos; tag for cursor positions in any &apos;th&apos; and their text contents." time="0.093"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in an HTML page with some invalid markups" name="should get &apos;input&apos; tag for cursor positions in any input tag." time="0.093"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in an HTML page with some invalid markups" name="should get &apos;form&apos; tag for cursor positions in any invalid end tag inside the form." time="0.11"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in an HTML page with some invalid markups" name="should get &apos;p&apos; tag for cursor positions inside an unclosed paragraph nested in a link." time="0.093"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in an HTML page with some invalid markups" name="should get &apos;a&apos; tag for cursor positions not in the unclosed &apos;p&apos; child tag." time="0.092"></testcase>
</testsuite>
<testsuite name="HTML Instrumentation HTML Instrumentation in dirty files" errors="0" tests="36" failures="0" time="5.291" timestamp="2014-05-08T13:26:32">
<testcase classname="HTML Instrumentation HTML Instrumentation in dirty files" name="should re-instrument after document is dirtied" time="0.091"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in dirty files" name="should mark editor text based on the simple DOM" time="0.095"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in dirty files" name="should handle no diff" time="0.125"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in dirty files" name="should handle attribute change" time="0.157"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in dirty files" name="should handle new attributes" time="0.172"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in dirty files" name="should handle deleted attributes" time="0.207"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in dirty files" name="should handle simple altered text" time="0.161"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in dirty files" name="should handle two incremental text edits in a row" time="0.094"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in dirty files" name="should avoid updating while typing an incomplete tag, then update when it&apos;s done" time="0.128"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in dirty files" name="should handle typing of a &lt;p&gt; without a &lt;/p&gt; and then adding it later" time="0.187"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in dirty files" name="should handle deleting of an empty tag character-by-character" time="0.073"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in dirty files" name="should handle deleting of a non-empty tag character-by-character" time="0.129"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in dirty files" name="should handle typing of a new attribute character-by-character" time="0.142"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in dirty files" name="should handle deleting of an attribute character-by-character" time="0.142"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in dirty files" name="should handle wrapping a tag around some text character by character" time="0.118"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in dirty files" name="should handle adding an &lt;html&gt; tag into an empty document" time="0.1"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in dirty files" name="should handle adding a &lt;head&gt; tag into a document" time="0.112"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in dirty files" name="should handle adding a &lt;body&gt; tag into a document" time="0.118"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in dirty files" name="should represent simple new tag insert" time="0.181"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in dirty files" name="should be able to add two tags at once" time="0.189"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in dirty files" name="should be able to paste a tag with a nested tag" time="0.19"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in dirty files" name="should handle inserting an element as the first child" time="0.174"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in dirty files" name="should handle inserting an element as the last child" time="0.189"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in dirty files" name="should handle inserting an element before an existing text node" time="0.197"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in dirty files" name="should represent simple new tag insert immediately after previous tag before text before tag" time="0.211"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in dirty files" name="should handle new text insert between tags after whitespace" time="0.178"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in dirty files" name="should handle inserting an element in the middle of text" time="0.267"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in dirty files" name="should handle reordering of children in one step as a delete/insert" time="0.08"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in dirty files" name="should support deleting across tags" time="0.172"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in dirty files" name="should support reparenting a node with new parent under the old parent" time="0.172"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in dirty files" name="should support undo of a tag merge" time="0.159"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in dirty files" name="should handle tag changes" time="0.124"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in dirty files" name="should handle void element tag changes" time="0.144"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in dirty files" name="should handle tag changes with child elements" time="0.125"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in dirty files" name="should handle multiple inserted tags and text" time="0.078"></testcase>
<testcase classname="HTML Instrumentation HTML Instrumentation in dirty files" name="should handle pasting a tag over multiple tags and text" time="0.078"></testcase>
</testsuite>
<testsuite name="JSUtils" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:26:38">
</testsuite>
<testsuite name="JSUtils basics" errors="0" tests="1" failures="0" time="0.002" timestamp="2014-05-08T13:26:38">
<testcase classname="JSUtils basics" name="should parse an empty string" time="0.001"></testcase>
</testsuite>
<testsuite name="JSUtils line offsets" errors="0" tests="12" failures="0" time="0.384" timestamp="2014-05-08T13:26:38">
<testcase classname="JSUtils line offsets" name="should return correct start and end line numbers for simple functions" time="0.207"></testcase>
<testcase classname="JSUtils line offsets" name="should return correct start and end line numbers for parameterized functions" time="0.013"></testcase>
<testcase classname="JSUtils line offsets" name="should return correct start and end line numbers for single line functions" time="0.013"></testcase>
<testcase classname="JSUtils line offsets" name="should return correct start and end line numbers for nested functions" time="0.014"></testcase>
<testcase classname="JSUtils line offsets" name="should return correct start and end line numbers for functions with keyword &apos;function&apos; in name" time="0.013"></testcase>
<testcase classname="JSUtils line offsets" name="should ignore identifiers with whitespace" time="0.016"></testcase>
<testcase classname="JSUtils line offsets" name="should return correct start and end line numbers for prototype method declarations" time="0.015"></testcase>
<testcase classname="JSUtils line offsets" name="should handle various whitespace variations" time="0.02"></testcase>
<testcase classname="JSUtils line offsets" name="should work with high-ascii characters in function names" time="0.025"></testcase>
<testcase classname="JSUtils line offsets" name="should work with unicode characters in or around function names" time="0.013"></testcase>
<testcase classname="JSUtils line offsets" name="should work when colliding with prototype properties" time="0.014"></testcase>
<testcase classname="JSUtils line offsets" name="should fail with invalid function names" time="0.012"></testcase>
</testsuite>
<testsuite name="JSUtils brace ends of functions" errors="0" tests="12" failures="0" time="0.168" timestamp="2014-05-08T13:26:38">
<testcase classname="JSUtils brace ends of functions" name="should handle a simple function" time="0.013"></testcase>
<testcase classname="JSUtils brace ends of functions" name="should handle nested braces" time="0.012"></testcase>
<testcase classname="JSUtils brace ends of functions" name="should handle a nested function" time="0.013"></testcase>
<testcase classname="JSUtils brace ends of functions" name="should handle an end brace in a string" time="0.014"></testcase>
<testcase classname="JSUtils brace ends of functions" name="should handle an end brace in a single-quoted string" time="0.012"></testcase>
<testcase classname="JSUtils brace ends of functions" name="should handle an end brace in a line comment" time="0.013"></testcase>
<testcase classname="JSUtils brace ends of functions" name="should handle an end brace in a block comment" time="0.013"></testcase>
<testcase classname="JSUtils brace ends of functions" name="should handle an end brace in a multiline block comment" time="0.012"></testcase>
<testcase classname="JSUtils brace ends of functions" name="should handle an end brace in a regexp" time="0.014"></testcase>
<testcase classname="JSUtils brace ends of functions" name="should handle a single-line function" time="0.013"></testcase>
<testcase classname="JSUtils brace ends of functions" name="should handle a single-line function with a fake brace" time="0.014"></testcase>
<testcase classname="JSUtils brace ends of functions" name="should handle a complicated case" time="0.015"></testcase>
</testsuite>
<testsuite name="JSUtils brace end of function that ends at end of file" errors="0" tests="1" failures="0" time="0.016" timestamp="2014-05-08T13:26:38">
<testcase classname="JSUtils brace end of function that ends at end of file" name="should find the end of a function that ends exactly at the end of the file" time="0.015"></testcase>
</testsuite>
<testsuite name="JSUtils end of function that&apos;s unclosed at end of file" errors="0" tests="1" failures="0" time="0.016" timestamp="2014-05-08T13:26:38">
<testcase classname="JSUtils end of function that&apos;s unclosed at end of file" name="should find the end of a function that is unclosed at the end of the file" time="0.015"></testcase>
</testsuite>
<testsuite name="JSUtils with real-world jQuery JS code" errors="0" tests="3" failures="0" time="0.095" timestamp="2014-05-08T13:26:38">
<testcase classname="JSUtils with real-world jQuery JS code" name="should find the first instance of the pushStack function" time="0.032"></testcase>
<testcase classname="JSUtils with real-world jQuery JS code" name="should find all instances of the ready function" time="0.028"></testcase>
<testcase classname="JSUtils with real-world jQuery JS code" name="should return an empty array when findAllMatchingSelectors() can&apos;t find any matches" time="0.032"></testcase>
</testsuite>
<testsuite name="CSSUtils" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:26:53">
</testsuite>
<testsuite name="CSSUtils basics" errors="0" tests="1" failures="0" time="0.003" timestamp="2014-05-08T13:26:38">
<testcase classname="CSSUtils basics" name="should parse an empty string" time="0.002"></testcase>
</testsuite>
<testsuite name="CSSUtils line offsets" errors="0" tests="3" failures="0" time="0.06" timestamp="2014-05-08T13:26:38">
<testcase classname="CSSUtils line offsets" name="should return correct start and end line numbers for simple rules" time="0.021"></testcase>
<testcase classname="CSSUtils line offsets" name="should handle rules on adjacent lines" time="0.015"></testcase>
<testcase classname="CSSUtils line offsets" name="should return correct group range when selector group spans multiple lines" time="0.022"></testcase>
</testsuite>
<testsuite name="CSSUtils with the universal selector" errors="0" tests="2" failures="0" time="0.027" timestamp="2014-05-08T13:26:38">
<testcase classname="CSSUtils with the universal selector" name="should match a tag name not referenced anywhere in the CSS" time="0.012"></testcase>
<testcase classname="CSSUtils with the universal selector" name="should match a tag name also referenced elsewhere in the CSS" time="0.013"></testcase>
</testsuite>
<testsuite name="CSSUtils with sprint 4 exemptions" errors="0" tests="2" failures="0" time="0.029" timestamp="2014-05-08T13:26:38">
<testcase classname="CSSUtils with sprint 4 exemptions" name="should match a class selector (right-most only, no pseudo or attr selectors)" time="0.014"></testcase>
<testcase classname="CSSUtils with sprint 4 exemptions" name="should match a type selector (can terminate with class name, ID, pseudo or attr selectors)" time="0.014"></testcase>
</testsuite>
<testsuite name="CSSUtils with real-world Bootstrap CSS code" errors="0" tests="3" failures="0" time="0.193" timestamp="2014-05-08T13:26:38">
<testcase classname="CSSUtils with real-world Bootstrap CSS code" name="should find the first instance of the h2 selector" time="0.077"></testcase>
<testcase classname="CSSUtils with real-world Bootstrap CSS code" name="should find all instances of the h2 selector" time="0.057"></testcase>
<testcase classname="CSSUtils with real-world Bootstrap CSS code" name="should return an empty array when findAllMatchingSelectors() can&apos;t find any matches" time="0.056"></testcase>
</testsuite>
<testsuite name="CSSUtils escapes" errors="0" tests="11" failures="0" time="0.154" timestamp="2014-05-08T13:26:39">
<testcase classname="CSSUtils escapes" name="should remove simple backslashes for simple characters" time="0.013"></testcase>
<testcase classname="CSSUtils escapes" name="should remove simple backslashes with escaped characters" time="0.013"></testcase>
<testcase classname="CSSUtils escapes" name="should parse &apos;\XX &apos; as a single character" time="0.014"></testcase>
<testcase classname="CSSUtils escapes" name="should parse &apos;\XXXX &apos; as a single character" time="0.013"></testcase>
<testcase classname="CSSUtils escapes" name="should parse &apos;\XXXXXX&apos; as a single character" time="0.013"></testcase>
<testcase classname="CSSUtils escapes" name="should not trim end spaces" time="0.016"></testcase>
<testcase classname="CSSUtils escapes" name="should detect all combinations" time="0.013"></testcase>
<testcase classname="CSSUtils escapes" name="should parse &apos;\AX&apos; as AX" time="0.013"></testcase>
<testcase classname="CSSUtils escapes" name="should parse &apos;\AXXX&apos; as AXXX" time="0.013"></testcase>
<testcase classname="CSSUtils escapes" name="should replace out of range characters with U+FFFD" time="0.013"></testcase>
<testcase classname="CSSUtils escapes" name="should parse everything less does" time="0.013"></testcase>
</testsuite>
<testsuite name="CSSUtils findSelectorAtDocumentPos selector groups" errors="0" tests="5" failures="0" time="0.378" timestamp="2014-05-08T13:26:39">
<testcase classname="CSSUtils findSelectorAtDocumentPos selector groups" name="should find the selector at a document pos" time="0.075"></testcase>
<testcase classname="CSSUtils findSelectorAtDocumentPos selector groups" name="should return empty string if selection is not in a style rule" time="0.072"></testcase>
<testcase classname="CSSUtils findSelectorAtDocumentPos selector groups" name="should return a comma separated string of all selectors for the rule" time="0.074"></testcase>
<testcase classname="CSSUtils findSelectorAtDocumentPos selector groups" name="should support multiple rules on the same line" time="0.073"></testcase>
<testcase classname="CSSUtils findSelectorAtDocumentPos selector groups" name="should support multiple rules on multiple lines" time="0.08"></testcase>
</testsuite>
<testsuite name="CSSUtils findSelectorAtDocumentPos comments" errors="0" tests="3" failures="0" time="0.244" timestamp="2014-05-08T13:26:39">
<testcase classname="CSSUtils findSelectorAtDocumentPos comments" name="should ignore rules inside comments" time="0.078"></testcase>
<testcase classname="CSSUtils findSelectorAtDocumentPos comments" name="should find rules adjacent to comments" time="0.081"></testcase>
<testcase classname="CSSUtils findSelectorAtDocumentPos comments" name="should find rules when the position is inside a nested comment" time="0.084"></testcase>
</testsuite>
<testsuite name="CSSUtils findSelectorAtDocumentPos pseudo-classes and at-rules" errors="0" tests="3" failures="0" time="0.255" timestamp="2014-05-08T13:26:39">
<testcase classname="CSSUtils findSelectorAtDocumentPos pseudo-classes and at-rules" name="should find a simple pseudo selector" time="0.087"></testcase>
<testcase classname="CSSUtils findSelectorAtDocumentPos pseudo-classes and at-rules" name="should find a selector with a preceding at-rule" time="0.084"></testcase>
<testcase classname="CSSUtils findSelectorAtDocumentPos pseudo-classes and at-rules" name="should not find a selector when inside an at-rule" time="0.084"></testcase>
</testsuite>
<testsuite name="CSSUtils findSelectorAtDocumentPos complex selectors" errors="0" tests="4" failures="0" time="12.885" timestamp="2014-05-08T13:26:40">
<testcase classname="CSSUtils findSelectorAtDocumentPos complex selectors" name="should find pseudo selectors" time="3.213"></testcase>
<testcase classname="CSSUtils findSelectorAtDocumentPos complex selectors" name="should find attribute selectors" time="3.229"></testcase>
<testcase classname="CSSUtils findSelectorAtDocumentPos complex selectors" name="should find structural pseudo-classes" time="3.258"></testcase>
<testcase classname="CSSUtils findSelectorAtDocumentPos complex selectors" name="should find combinators" time="3.181"></testcase>
</testsuite>
<testsuite name="CSSUtils findSelectorAtDocumentPos beginning, middle and end of selector" errors="0" tests="4" failures="0" time="0.282" timestamp="2014-05-08T13:26:52">
<testcase classname="CSSUtils findSelectorAtDocumentPos beginning, middle and end of selector" name="should find selector when pos is at beginning of selector name" time="0.071"></testcase>
<testcase classname="CSSUtils findSelectorAtDocumentPos beginning, middle and end of selector" name="should find selector when pos is in the middle of selector name" time="0.072"></testcase>
<testcase classname="CSSUtils findSelectorAtDocumentPos beginning, middle and end of selector" name="should find selector when pos is at the end of a selector name" time="0.069"></testcase>
<testcase classname="CSSUtils findSelectorAtDocumentPos beginning, middle and end of selector" name="should not find selector when pos is before a selector name" time="0.068"></testcase>
</testsuite>
<testsuite name="CSSUtils find correct positions of selectors" errors="0" tests="7" failures="0" time="0.01" timestamp="2014-05-08T13:26:53">
<testcase classname="CSSUtils find correct positions of selectors" name="should find selector positions when whitespace between selector and &apos;{&apos;" time="0.001"></testcase>
<testcase classname="CSSUtils find correct positions of selectors" name="should find selector positions when no whitespace between selector and &apos;{&apos;" time="0.001"></testcase>
<testcase classname="CSSUtils find correct positions of selectors" name="should find selector positions when &apos;{&apos; on the next line" time="0.001"></testcase>
<testcase classname="CSSUtils find correct positions of selectors" name="should find selector positions when &apos;{&apos; on the next line and selector is indented" time="0.001"></testcase>
<testcase classname="CSSUtils find correct positions of selectors" name="should find selector positions when &apos;{&apos; on the next line and selector is indented with tabs" time="0.001"></testcase>
<testcase classname="CSSUtils find correct positions of selectors" name="should find selector positions in a selector group when &apos;{&apos; on the next line" time="0.001"></testcase>
<testcase classname="CSSUtils find correct positions of selectors" name="should find selector positions in a selector group when &apos;{&apos; on the next line and selector group is indented" time="0"></testcase>
</testsuite>
<testsuite name="CSSUtils findSelectorAtDocumentPos in embedded &lt;style&gt; blocks" errors="0" tests="2" failures="0" time="0.182" timestamp="2014-05-08T13:26:53">
<testcase classname="CSSUtils findSelectorAtDocumentPos in embedded &lt;style&gt; blocks" name="should find the first selector when pos is at beginning of selector name" time="0.102"></testcase>
<testcase classname="CSSUtils findSelectorAtDocumentPos in embedded &lt;style&gt; blocks" name="should find the second selector when pos is at beginning of selector name" time="0.079"></testcase>
</testsuite>
<testsuite name="CSS Parsing" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:26:53">
</testsuite>
<testsuite name="CSS Parsing Simple selectors" errors="0" tests="15" failures="0" time="0.058" timestamp="2014-05-08T13:26:53">
<testcase classname="CSS Parsing Simple selectors" name="should match a lone type selector given a type" time="0.002"></testcase>
<testcase classname="CSS Parsing Simple selectors" name="should match a lone class selector given a class" time="0.002"></testcase>
<testcase classname="CSS Parsing Simple selectors" name="should match a lone id selector given an id" time="0.002"></testcase>
<testcase classname="CSS Parsing Simple selectors" name="shouldn&apos;t confuse type, class, and id" time="0.003"></testcase>
<testcase classname="CSS Parsing Simple selectors" name="should be case-sensitive for all but types" time="0.004"></testcase>
<testcase classname="CSS Parsing Simple selectors" name="should match permissively" time="0.002"></testcase>
<testcase classname="CSS Parsing Simple selectors" name="should allow searching conjunctions of type, class, and id" time="0"></testcase>
<testcase classname="CSS Parsing Simple selectors" name="should match lone &apos;*&apos; given any tag; else ignore" time="0.003"></testcase>
<testcase classname="CSS Parsing Simple selectors" name="should ignore pseudo-class selectors" time="0.006"></testcase>
<testcase classname="CSS Parsing Simple selectors" name="should ignore pseudo-elements with arguments" time="0.006"></testcase>
<testcase classname="CSS Parsing Simple selectors" name="should ignore attribute selectors" time="0.002"></testcase>
<testcase classname="CSS Parsing Simple selectors" name="should ignore the content of strings" time="0.01"></testcase>
<testcase classname="CSS Parsing Simple selectors" name="should handle unusual whitespace" time="0.001"></testcase>
<testcase classname="CSS Parsing Simple selectors" name="shouldn&apos;t crash on CSS3 selectors" time="0.007"></testcase>
<testcase classname="CSS Parsing Simple selectors" name="shouldn&apos;t crash on CSS Animation syntax (@keyframes)" time="0.003"></testcase>
</testsuite>
<testsuite name="CSS Parsing Combinators" errors="0" tests="3" failures="0" time="0.015" timestamp="2014-05-08T13:26:53">
<testcase classname="CSS Parsing Combinators" name="should ignore descendant combinators" time="0.002"></testcase>
<testcase classname="CSS Parsing Combinators" name="should ignore other combinators" time="0.005"></testcase>
<testcase classname="CSS Parsing Combinators" name="should find the target of combinators with no whitespace" time="0.007"></testcase>
</testsuite>
<testsuite name="CSS Parsing Selector groups" errors="0" tests="1" failures="0" time="0.004" timestamp="2014-05-08T13:26:53">
<testcase classname="CSS Parsing Selector groups" name="should match any item in selector group" time="0.003"></testcase>
</testsuite>
<testsuite name="CSS Parsing LESS Known Issues" errors="0" tests="4" failures="0" time="0.005" timestamp="2014-05-08T13:26:53">
<testcase classname="CSS Parsing LESS Known Issues" name="should handle an empty declaration (extra semi-colon)" time="0.001"></testcase>
<testcase classname="CSS Parsing LESS Known Issues" name="should handle IE filter syntaxes" time="0.001"></testcase>
<testcase classname="CSS Parsing LESS Known Issues" name="should handle unnecessary escape codes" time="0"></testcase>
<testcase classname="CSS Parsing LESS Known Issues" name="should handle comments within properties" time="0.001"></testcase>
</testsuite>
<testsuite name="CSSUtils - Other" errors="0" tests="6" failures="0" time="0.159" timestamp="2014-05-08T13:26:53">
<testcase classname="CSSUtils - Other" name="should add a new rule with the given selector to the given document using tab indent and return its range" time="0.06"></testcase>
<testcase classname="CSSUtils - Other" name="should add a new rule with the given selector to the given document using space indent and return its range" time="0.055"></testcase>
<testcase classname="CSSUtils - Other" name="should add a new rule to an empty document" time="0.038"></testcase>
<testcase classname="CSSUtils - Other" name="should consolidate consecutive rules that refer to the same item and replace names with selector groups" time="0.002"></testcase>
<testcase classname="CSSUtils - Other" name="should extract selectors at the beginning of a text range" time="0.001"></testcase>
<testcase classname="CSSUtils - Other" name="should extract selectors spanning multiple lines at the beginning of a text range, with newlines replaced" time="0.001"></testcase>
</testsuite>
<testsuite name="HTMLUtils InlineEditorProviders" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:26:53">
</testsuite>
<testsuite name="HTMLUtils InlineEditorProviders Embedded &lt;style&gt; blocks: " errors="0" tests="1" failures="0" time="0.112" timestamp="2014-05-08T13:26:53">
<testcase classname="HTMLUtils InlineEditorProviders Embedded &lt;style&gt; blocks: " name="should find style blocks" time="0.111"></testcase>
</testsuite>
<testsuite name="CSS Context Info" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:26:57">
</testsuite>
<testsuite name="CSS Context Info property names and values" errors="0" tests="24" failures="0" time="3.02" timestamp="2014-05-08T13:26:53">
<testcase classname="CSS Context Info property names and values" name="should return PROP_NAME with empty name immediately after rule start brace" time="0.098"></testcase>
<testcase classname="CSS Context Info property names and values" name="should return PROP_NAME with empty name immediately before end brace" time="0.097"></testcase>
<testcase classname="CSS Context Info property names and values" name="should return PROP_NAME with empty name before whitespace before property name" time="0.091"></testcase>
<testcase classname="CSS Context Info property names and values" name="should return PROP_NAME with empty name in middle of whitespace before property name" time="0.091"></testcase>
<testcase classname="CSS Context Info property names and values" name="should return PROP_NAME with empty name at end of whitespace in rule with no property name" time="0.095"></testcase>
<testcase classname="CSS Context Info property names and values" name="should return PROP_NAME with empty name immediately after semicolon" time="0.095"></testcase>
<testcase classname="CSS Context Info property names and values" name="should return PROP_NAME at beginning/middle/end of a simple property name" time="0.093"></testcase>
<testcase classname="CSS Context Info property names and values" name="should return PROP_NAME at beginning/middle/end of a hyphenated property name" time="0.093"></testcase>
<testcase classname="CSS Context Info property names and values" name="should return PROP_VALUE with &apos;new value&apos; flag set immediately after colon" time="0.094"></testcase>
<testcase classname="CSS Context Info property names and values" name="should return PROP_VALUE without &apos;new value&apos; flag set at beginning/middle/end of a simple property value" time="0.097"></testcase>
<testcase classname="CSS Context Info property names and values" name="should return PROP_VALUE with correct values at beginning/middle of first multi-value property" time="0.119"></testcase>
<testcase classname="CSS Context Info property names and values" name="should return PROP_VALUE with &apos;new value&apos; flag set at end of double-quoted multi-value property" time="0.096"></testcase>
<testcase classname="CSS Context Info property names and values" name="should return PROP_VALUE with correct values at beginning/middle of second multi-value property" time="0.095"></testcase>
<testcase classname="CSS Context Info property names and values" name="should return PROP_VALUE with &apos;new value&apos; flag set at end of second multi-value property" time="0.094"></testcase>
<testcase classname="CSS Context Info property names and values" name="should return PROP_VALUE with correct values at beginning/middle/end of third multi-value property" time="0.103"></testcase>
<testcase classname="CSS Context Info property names and values" name="should return PROP_VALUE with &apos;new value&apos; flag and existing values immediately after colon with multi-value property" time="0.095"></testcase>
<testcase classname="CSS Context Info property names and values" name="should return PROP_VALUE with &apos;new value&apos; flag and existing values at end of line after comma (possibly with whitespace)" time="0.096"></testcase>
<testcase classname="CSS Context Info property names and values" name="should return PROP_VALUE with &apos;new value&apos; flag at end of line when there are no existing values" time="0.105"></testcase>
<testcase classname="CSS Context Info property names and values" name="should treat a value like rgba(0, 0, 0, 0) as separate tokens" time="0.095"></testcase>
<testcase classname="CSS Context Info property names and values" name="should return a separate token for each param in a functional value notation" time="0.105"></testcase>
<testcase classname="CSS Context Info property names and values" name="should return PROP_VALUE when inside functional value notation - simple" time="0.092"></testcase>
<testcase classname="CSS Context Info property names and values" name="should return PROP_VALUE when inside functional value notation with modifier" time="0.094"></testcase>
<testcase classname="CSS Context Info property names and values" name="should return unprefixed PROP_NAME" time="0.093"></testcase>
<testcase classname="CSS Context Info property names and values" name="should return prefixed PROP_NAME when inside a prefixed property name" time="0.095"></testcase>
</testsuite>
<testsuite name="CSS Context Info property names and values multi-line cases" errors="0" tests="7" failures="0" time="0.68" timestamp="2014-05-08T13:26:55">
<testcase classname="CSS Context Info property names and values multi-line cases" name="should return PROP_VALUE with correct values at beginning/middle of first multi-value multi-line property" time="0.093"></testcase>
<testcase classname="CSS Context Info property names and values multi-line cases" name="should return PROP_VALUE with &apos;new value&apos; flag set at end of double-quoted multi-value multi-line property" time="0.103"></testcase>
<testcase classname="CSS Context Info property names and values multi-line cases" name="should return PROP_VALUE with correct values at beginning/middle of second multi-value multi-line property" time="0.092"></testcase>
<testcase classname="CSS Context Info property names and values multi-line cases" name="should return PROP_VALUE with &apos;new value&apos; flag set at end of second multi-value multi-line property" time="0.093"></testcase>
<testcase classname="CSS Context Info property names and values multi-line cases" name="should return PROP_VALUE with correct values at beginning/middle/end of third multi-value multi-line property" time="0.093"></testcase>
<testcase classname="CSS Context Info property names and values multi-line cases" name="should return PROP_VALUE with &apos;new value&apos; flag and existing values immediately after colon with multi-value multi-line property" time="0.093"></testcase>
<testcase classname="CSS Context Info property names and values multi-line cases" name="should return PROP_VALUE with &apos;new value&apos; flag and existing values at beginning of whitespace before value in multi-line property" time="0.109"></testcase>
</testsuite>
<testsuite name="CSS Context Info quoting" errors="0" tests="2" failures="0" time="0.239" timestamp="2014-05-08T13:26:56">
<testcase classname="CSS Context Info quoting" name="should properly parse a value with single quotes" time="0.122"></testcase>
<testcase classname="CSS Context Info quoting" name="should properly parse values with special characters" time="0.115"></testcase>
</testsuite>
<testsuite name="CSS Context Info invalid contexts" errors="0" tests="4" failures="0" time="0.471" timestamp="2014-05-08T13:26:57">
<testcase classname="CSS Context Info invalid contexts" name="should return empty context for a non-css document" time="0.17"></testcase>
<testcase classname="CSS Context Info invalid contexts" name="should return empty context for unsupported context" time="0.102"></testcase>
<testcase classname="CSS Context Info invalid contexts" name="should return empty context for comment" time="0.101"></testcase>
<testcase classname="CSS Context Info invalid contexts" name="should return empty context for comment in declaration" time="0.096"></testcase>
</testsuite>
<testsuite name="CSS Context Info Ranges" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:26:57">
</testsuite>
<testsuite name="CSS Context Info Ranges ranging for getInfoAtPos results with whitespace" errors="0" tests="6" failures="0" time="0.447" timestamp="2014-05-08T13:26:57">
<testcase classname="CSS Context Info Ranges ranging for getInfoAtPos results with whitespace" name="should return the correct range of a prop when cursor is on whitespace between function args" time="0.073"></testcase>
<testcase classname="CSS Context Info Ranges ranging for getInfoAtPos results with whitespace" name="should return the correct range of a prop when cursor is between characters in function args" time="0.072"></testcase>
<testcase classname="CSS Context Info Ranges ranging for getInfoAtPos results with whitespace" name="should return the correct range of a prop when cursor is between characters in prop name with function args with whitespace" time="0.07"></testcase>
<testcase classname="CSS Context Info Ranges ranging for getInfoAtPos results with whitespace" name="should return the correct range of a prop when cursor is on function arg delimiter with whitespace" time="0.071"></testcase>
<testcase classname="CSS Context Info Ranges ranging for getInfoAtPos results with whitespace" name="should return the correct range of a prop when cursor is between value and unit with whitespace" time="0.069"></testcase>
<testcase classname="CSS Context Info Ranges ranging for getInfoAtPos results with whitespace" name="should return the correct range of a prop when cursor is at the start of whitespace of a vendor prop value w/whitespace" time="0.088"></testcase>
</testsuite>
<testsuite name="CSS Regions" errors="0" tests="1" failures="0" time="0.014" timestamp="2014-05-08T13:26:57">
<testcase classname="CSS Regions" name="should find named flows" time="0.013"></testcase>
</testsuite>
<testsuite name="FileFilters" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:26:57">
</testsuite>
<testsuite name="FileFilters Filter matching" errors="0" tests="9" failures="0" time="0.028" timestamp="2014-05-08T13:26:57">
<testcase classname="FileFilters Filter matching" name="empty filter should accept everything" time="0.001"></testcase>
<testcase classname="FileFilters Filter matching" name="should match simple substring" time="0.001"></testcase>
<testcase classname="FileFilters Filter matching" name="should match file extension" time="0.001"></testcase>
<testcase classname="FileFilters Filter matching" name="should match file name" time="0.001"></testcase>
<testcase classname="FileFilters Filter matching" name="should match folder name" time="0.001"></testcase>
<testcase classname="FileFilters Filter matching" name="should match multi-segment path part" time="0.001"></testcase>
<testcase classname="FileFilters Filter matching" name="should match * within path segment" time="0.012"></testcase>
<testcase classname="FileFilters Filter matching" name="should match ** across path segments" time="0.002"></testcase>
<testcase classname="FileFilters Filter matching" name="should match ? against single non-slash char" time="0.002"></testcase>
</testsuite>
<testsuite name="FileFilters Automatic glob prefixes/suffixes" errors="0" tests="4" failures="0" time="0.006" timestamp="2014-05-08T13:26:57">
<testcase classname="FileFilters Automatic glob prefixes/suffixes" name="should add ** prefix &amp; suffix" time="0.002"></testcase>
<testcase classname="FileFilters Automatic glob prefixes/suffixes" name="shouldn&apos;t add ** suffix" time="0.001"></testcase>
<testcase classname="FileFilters Automatic glob prefixes/suffixes" name="shouldn&apos;t add extra ** prefix" time="0.001"></testcase>
<testcase classname="FileFilters Automatic glob prefixes/suffixes" name="empty filter shouldn&apos;t be prefixed/suffixed" time="0"></testcase>
</testsuite>
<testsuite name="URL Mapping" errors="0" tests="1" failures="0" time="0.003" timestamp="2014-05-08T13:26:57">
<testcase classname="URL Mapping" name="should validate base urls" time="0.002"></testcase>
</testsuite>
<testsuite name="HighlightAgent" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:26:58">
</testsuite>
<testsuite name="HighlightAgent Highlighting elements in browser from a CSS rule" errors="0" tests="3" failures="0" time="0.139" timestamp="2014-05-08T13:26:57">
<testcase classname="HighlightAgent Highlighting elements in browser from a CSS rule" name="should toggle the highlight via a command" time="0.04"></testcase>
<testcase classname="HighlightAgent Highlighting elements in browser from a CSS rule" name="should redraw highlights when the document changes" time="0.045"></testcase>
<testcase classname="HighlightAgent Highlighting elements in browser from a CSS rule" name="should redraw highlights when the cursor moves" time="0.053"></testcase>
</testsuite>
<testsuite name="HighlightAgent Highlighting elements in browser from cursor positions in HTML page" errors="0" tests="7" failures="0" time="0.697" timestamp="2014-05-08T13:26:58">
<testcase classname="HighlightAgent Highlighting elements in browser from cursor positions in HTML page" name="should highlight the image for cursor positions inside img tag." time="0.102"></testcase>
<testcase classname="HighlightAgent Highlighting elements in browser from cursor positions in HTML page" name="should highlight the parent link element for cursor positions between &apos;img&apos; and its parent &apos;a&apos; tag." time="0.09"></testcase>
<testcase classname="HighlightAgent Highlighting elements in browser from cursor positions in HTML page" name="No highlight when the cursor position is outside of the &apos;html&apos; tag" time="0.098"></testcase>
<testcase classname="HighlightAgent Highlighting elements in browser from cursor positions in HTML page" name="Should highlight the entire body for all cursor positions inside an html comment" time="0.089"></testcase>
<testcase classname="HighlightAgent Highlighting elements in browser from cursor positions in HTML page" name="should highlight &apos;meta/link&apos; tag for cursor positions in meta/link tags, not &apos;head&apos; tag" time="0.096"></testcase>
<testcase classname="HighlightAgent Highlighting elements in browser from cursor positions in HTML page" name="Should highlight &apos;title&apos; tag at cursor positions (either in the content or begin/end tag)" time="0.107"></testcase>
<testcase classname="HighlightAgent Highlighting elements in browser from cursor positions in HTML page" name="Should get &apos;h2&apos; tag at cursor positions (either in the content or begin or end tag)" time="0.111"></testcase>
</testsuite>
<testsuite name="Servers" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:26:58">
</testsuite>
<testsuite name="Servers UserServer" errors="0" tests="1" failures="0" time="0.003" timestamp="2014-05-08T13:26:58">
<testcase classname="Servers UserServer" name="should translate local paths to server paths" time="0.002"></testcase>
</testsuite>
<testsuite name="Servers FileServer" errors="0" tests="1" failures="0" time="0.002" timestamp="2014-05-08T13:26:58">
<testcase classname="Servers FileServer" name="should translate local paths to file: URLs" time="0.001"></testcase>
</testsuite>
<testsuite name="Default HTML Document" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:27:07">
</testsuite>
<testsuite name="Default HTML Document Find static page for Live Development" errors="0" tests="7" failures="0" time="7.396" timestamp="2014-05-08T13:26:58">
<testcase classname="Default HTML Document Find static page for Live Development" name="should return the same HTML document like the currently open document" time="6.316"></testcase>
<testcase classname="Default HTML Document Find static page for Live Development" name="should find the HTML page in the same directory like the current document" time="0.091"></testcase>
<testcase classname="Default HTML Document Find static page for Live Development" name="should find the HTML page one directory level up" time="0.196"></testcase>
<testcase classname="Default HTML Document Find static page for Live Development" name="should find the HTML page in the project root directory for the current document" time="0.202"></testcase>
<testcase classname="Default HTML Document Find static page for Live Development" name="should find the closest HTML page in the project tree" time="0.202"></testcase>
<testcase classname="Default HTML Document Find static page for Live Development" name="should find the HTML page in the same directory" time="0.195"></testcase>
<testcase classname="Default HTML Document Find static page for Live Development" name="should not find any HTML page" time="0.188"></testcase>
</testsuite>
<testsuite name="Default HTML Document Find dynamic page for Live Development" errors="0" tests="6" failures="0" time="1.258" timestamp="2014-05-08T13:27:06">
<testcase classname="Default HTML Document Find dynamic page for Live Development" name="should return the same index.php document like the currently opened document" time="0.225"></testcase>
<testcase classname="Default HTML Document Find dynamic page for Live Development" name="should find the index.php page in the same directory like the current document" time="0.111"></testcase>
<testcase classname="Default HTML Document Find dynamic page for Live Development" name="should find the index.php page one directory level up" time="0.212"></testcase>
<testcase classname="Default HTML Document Find dynamic page for Live Development" name="should find the index.php page in the project root" time="0.22"></testcase>
<testcase classname="Default HTML Document Find dynamic page for Live Development" name="should find the HTML page in the same directory" time="0.231"></testcase>
<testcase classname="Default HTML Document Find dynamic page for Live Development" name="should not find any HTML page" time="0.252"></testcase>
</testsuite>
<testsuite name="EditorCommandHandlers" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:27:24">
</testsuite>
<testsuite name="EditorCommandHandlers Line comment/uncomment" errors="0" tests="16" failures="0" time="1.775" timestamp="2014-05-08T13:27:07">
<testcase classname="EditorCommandHandlers Line comment/uncomment" name="should comment/uncomment a single line, cursor at start" time="0.076"></testcase>
<testcase classname="EditorCommandHandlers Line comment/uncomment" name="should comment/uncomment a single line, cursor at end" time="0.064"></testcase>
<testcase classname="EditorCommandHandlers Line comment/uncomment" name="should comment/uncomment first line in file" time="0.061"></testcase>
<testcase classname="EditorCommandHandlers Line comment/uncomment" name="should comment/uncomment a single partly-selected line" time="0.072"></testcase>
<testcase classname="EditorCommandHandlers Line comment/uncomment" name="should comment/uncomment a single selected line" time="0.081"></testcase>
<testcase classname="EditorCommandHandlers Line comment/uncomment" name="should comment/uncomment a single fully-selected line (including LF)" time="0.069"></testcase>
<testcase classname="EditorCommandHandlers Line comment/uncomment" name="should comment/uncomment multiple selected lines" time="0.074"></testcase>
<testcase classname="EditorCommandHandlers Line comment/uncomment" name="should comment/uncomment ragged multi-line selection" time="0.084"></testcase>
<testcase classname="EditorCommandHandlers Line comment/uncomment" name="should comment/uncomment when selection starts &amp; ends on whitespace lines" time="0.088"></testcase>
<testcase classname="EditorCommandHandlers Line comment/uncomment" name="should do nothing on whitespace line" time="0.052"></testcase>
<testcase classname="EditorCommandHandlers Line comment/uncomment" name="should do nothing when only whitespace lines selected" time="0.076"></testcase>
<testcase classname="EditorCommandHandlers Line comment/uncomment" name="should comment/uncomment after select all" time="0.083"></testcase>
<testcase classname="EditorCommandHandlers Line comment/uncomment" name="should comment/uncomment lines that were partially commented out already, our style" time="0.082"></testcase>
<testcase classname="EditorCommandHandlers Line comment/uncomment" name="should comment/uncomment lines that were partially commented out already, comment closer to code" time="0.087"></testcase>
<testcase classname="EditorCommandHandlers Line comment/uncomment" name="should uncomment indented, aligned comments" time="0.073"></testcase>
<testcase classname="EditorCommandHandlers Line comment/uncomment" name="should uncomment ragged partial comments" time="0.069"></testcase>
</testsuite>
<testsuite name="EditorCommandHandlers Line comment/uncomment with multiple selections" errors="0" tests="7" failures="0" time="0.574" timestamp="2014-05-08T13:27:08">
<testcase classname="EditorCommandHandlers Line comment/uncomment with multiple selections" name="should toggle comments on separate lines with cursor selections" time="0.066"></testcase>
<testcase classname="EditorCommandHandlers Line comment/uncomment with multiple selections" name="should toggle comments on separate lines with range selections" time="0.072"></testcase>
<testcase classname="EditorCommandHandlers Line comment/uncomment with multiple selections" name="should toggle comments on separate lines with multiline selections" time="0.081"></testcase>
<testcase classname="EditorCommandHandlers Line comment/uncomment with multiple selections" name="should adjust selections appropriately at start of line" time="0.08"></testcase>
<testcase classname="EditorCommandHandlers Line comment/uncomment with multiple selections" name="should only handle each line once, but preserve primary/reversed flags on ignored selections" time="0.106"></testcase>
<testcase classname="EditorCommandHandlers Line comment/uncomment with multiple selections" name="should properly toggle when some selections are already commented but others aren&apos;t" time="0.081"></testcase>
<testcase classname="EditorCommandHandlers Line comment/uncomment with multiple selections" name="should properly toggle adjacent lines (not coalescing them) if there are cursors on each line" time="0.086"></testcase>
</testsuite>
<testsuite name="EditorCommandHandlers Line comment in languages with mutiple line comment prefixes" errors="0" tests="3" failures="0" time="0.225" timestamp="2014-05-08T13:27:09">
<testcase classname="EditorCommandHandlers Line comment in languages with mutiple line comment prefixes" name="should comment using the first prefix" time="0.067"></testcase>
<testcase classname="EditorCommandHandlers Line comment in languages with mutiple line comment prefixes" name="should uncomment every prefix" time="0.087"></testcase>
<testcase classname="EditorCommandHandlers Line comment in languages with mutiple line comment prefixes" name="should only uncomment the first prefix" time="0.068"></testcase>
</testsuite>
<testsuite name="EditorCommandHandlers Line comment in languages with no given line comment prefix" errors="0" tests="5" failures="0" time="0.272" timestamp="2014-05-08T13:27:09">
<testcase classname="EditorCommandHandlers Line comment in languages with no given line comment prefix" name="should properly restore the cursor" time="0.051"></testcase>
<testcase classname="EditorCommandHandlers Line comment in languages with no given line comment prefix" name="should properly restore the range selection" time="0.058"></testcase>
<testcase classname="EditorCommandHandlers Line comment in languages with no given line comment prefix" name="should properly restore the cursors" time="0.051"></testcase>
<testcase classname="EditorCommandHandlers Line comment in languages with no given line comment prefix" name="should properly restore the range selections" time="0.054"></testcase>
<testcase classname="EditorCommandHandlers Line comment in languages with no given line comment prefix" name="should properly restore primary/reversed range selections" time="0.056"></testcase>
</testsuite>
<testsuite name="EditorCommandHandlers Block comment/uncomment" errors="0" tests="23" failures="0" time="2.075" timestamp="2014-05-08T13:27:09">
<testcase classname="EditorCommandHandlers Block comment/uncomment" name="should block comment/uncomment, cursor at start of line" time="0.071"></testcase>
<testcase classname="EditorCommandHandlers Block comment/uncomment" name="should block comment/uncomment, cursor to left of existing block comment" time="0.079"></testcase>
<testcase classname="EditorCommandHandlers Block comment/uncomment" name="should block comment/uncomment, subset of line selected" time="0.079"></testcase>
<testcase classname="EditorCommandHandlers Block comment/uncomment" name="should block uncomment, cursor within existing sub-line block comment" time="0.102"></testcase>
<testcase classname="EditorCommandHandlers Block comment/uncomment" name="should block uncomment, selection covering whole sub-line block comment" time="0.076"></testcase>
<testcase classname="EditorCommandHandlers Block comment/uncomment" name="should block comment/uncomment, selection from mid-line end of line" time="0.078"></testcase>
<testcase classname="EditorCommandHandlers Block comment/uncomment" name="should block comment/uncomment, all of line selected but not newline" time="0.084"></testcase>
<testcase classname="EditorCommandHandlers Block comment/uncomment" name="should block comment/uncomment, all of line selected including newline" time="0.11"></testcase>
<testcase classname="EditorCommandHandlers Block comment/uncomment" name="should block comment/uncomment, multiple lines selected" time="0.102"></testcase>
<testcase classname="EditorCommandHandlers Block comment/uncomment" name="should block comment/uncomment, multiple partial lines selected" time="0.078"></testcase>
<testcase classname="EditorCommandHandlers Block comment/uncomment" name="should block uncomment, cursor in whitespace within block comment" time="0.07"></testcase>
<testcase classname="EditorCommandHandlers Block comment/uncomment" name="should block uncomment, selection in whitespace within block comment" time="0.075"></testcase>
<testcase classname="EditorCommandHandlers Block comment/uncomment" name="should block uncomment, selection covers block comment plus whitespace before" time="0.074"></testcase>
<testcase classname="EditorCommandHandlers Block comment/uncomment" name="should block uncomment, selection covers block comment plus whitespace after" time="0.078"></testcase>
<testcase classname="EditorCommandHandlers Block comment/uncomment" name="should block uncomment, selection covers part of block comment plus whitespace before" time="0.077"></testcase>
<testcase classname="EditorCommandHandlers Block comment/uncomment" name="should block uncomment, selection covers part of block comment plus whitespace after" time="0.127"></testcase>
<testcase classname="EditorCommandHandlers Block comment/uncomment" name="should block uncomment, selection covers block comment plus whitespace on both sides" time="0.082"></testcase>
<testcase classname="EditorCommandHandlers Block comment/uncomment" name="should block uncomment, selection covers block comment plus other text" time="0.076"></testcase>
<testcase classname="EditorCommandHandlers Block comment/uncomment" name="should block uncomment, selection covers multi-line block comment plus other text" time="0.083"></testcase>
<testcase classname="EditorCommandHandlers Block comment/uncomment" name="should do nothing, selection covers parts of multiple block comments" time="0.073"></testcase>
<testcase classname="EditorCommandHandlers Block comment/uncomment" name="should do nothing, selection covers all of multiple block comments" time="0.068"></testcase>
<testcase classname="EditorCommandHandlers Block comment/uncomment" name="should do nothing, selection covers multiple block comments &amp; nothing else" time="0.071"></testcase>
<testcase classname="EditorCommandHandlers Block comment/uncomment" name="should do nothing, selection covers multiple block comments plus other text" time="0.067"></testcase>
</testsuite>
<testsuite name="EditorCommandHandlers Block comment/uncomment with multiple selections" errors="0" tests="2" failures="0" time="0.178" timestamp="2014-05-08T13:27:11">
<testcase classname="EditorCommandHandlers Block comment/uncomment with multiple selections" name="should comment out multiple selections/cursors, preserving primary/reversed selections" time="0.083"></testcase>
<testcase classname="EditorCommandHandlers Block comment/uncomment with multiple selections" name="should skip the case where a selection covers multiple block comments, but still track it and handle other selections" time="0.094"></testcase>
</testsuite>
<testsuite name="EditorCommandHandlers Block comment around line comments" errors="0" tests="25" failures="0" time="2.258" timestamp="2014-05-08T13:27:11">
<testcase classname="EditorCommandHandlers Block comment around line comments" name="should switch to line uncomment mode, cursor inside line comment (with only whitespace to left)" time="0.083"></testcase>
<testcase classname="EditorCommandHandlers Block comment around line comments" name="should switch to line uncomment, cursor in whitespace to left of line comment" time="0.078"></testcase>
<testcase classname="EditorCommandHandlers Block comment around line comments" name="should switch to line uncomment, some of line-comment selected (only whitespace to left)" time="0.07"></testcase>
<testcase classname="EditorCommandHandlers Block comment around line comments" name="should switch to line uncomment, some of line-comment selected including last char (only whitespace to left)" time="0.088"></testcase>
<testcase classname="EditorCommandHandlers Block comment around line comments" name="should switch to line uncomment, all of line-comment selected (only whitespace to left)" time="0.072"></testcase>
<testcase classname="EditorCommandHandlers Block comment around line comments" name="should insert block comment, cursor inside line comment (with code to left)" time="0.072"></testcase>
<testcase classname="EditorCommandHandlers Block comment around line comments" name="should insert block comment, cursor in code to left of line comment" time="0.072"></testcase>
<testcase classname="EditorCommandHandlers Block comment around line comments" name="should block comment, some of line-comment selected (with code to left)" time="0.082"></testcase>
<testcase classname="EditorCommandHandlers Block comment around line comments" name="should block comment, some of line-comment selected including last char (with code to left)" time="0.086"></testcase>
<testcase classname="EditorCommandHandlers Block comment around line comments" name="should block comment, all of line-comment selected (with code to left)" time="0.078"></testcase>
<testcase classname="EditorCommandHandlers Block comment around line comments" name="should switch to line uncomment, all of line-comment line selected (following line is code)" time="0.067"></testcase>
<testcase classname="EditorCommandHandlers Block comment around line comments" name="should switch to line uncomment, all of line-comment line selected (following line is whitespace)" time="0.068"></testcase>
<testcase classname="EditorCommandHandlers Block comment around line comments" name="should switch to line uncomment, all of line-comment line selected (following line is line comment)" time="0.068"></testcase>
<testcase classname="EditorCommandHandlers Block comment around line comments" name="should switch to line uncomment, all of line-comment line selected (following line is block comment)" time="0.083"></testcase>
<testcase classname="EditorCommandHandlers Block comment around line comments" name="should line uncomment, multiple line comments selected" time="0.077"></testcase>
<testcase classname="EditorCommandHandlers Block comment around line comments" name="should line uncomment, multiline selection covers line comment plus whitespace" time="0.082"></testcase>
<testcase classname="EditorCommandHandlers Block comment around line comments" name="should switch to line uncomment mode, selection starts in whitespace &amp; ends in middle of line comment" time="0.103"></testcase>
<testcase classname="EditorCommandHandlers Block comment around line comments" name="should switch to line uncomment mode, selection starts in whitespace &amp; ends at end of line comment" time="0.085"></testcase>
<testcase classname="EditorCommandHandlers Block comment around line comments" name="should block comment, selection starts in code &amp; ends in middle of line comment" time="0.097"></testcase>
<testcase classname="EditorCommandHandlers Block comment around line comments" name="should block comment, selection starts in middle of code &amp; ends at end of line comment" time="0.093"></testcase>
<testcase classname="EditorCommandHandlers Block comment around line comments" name="should block comment, selection starts in code &amp; ends at end of line comment" time="0.098"></testcase>
<testcase classname="EditorCommandHandlers Block comment around line comments" name="should block comment, selection starts at col 0 of code &amp; ends at end of line comment" time="0.093"></testcase>
<testcase classname="EditorCommandHandlers Block comment around line comments" name="should block comment, selection starts on line with line comment" time="0.092"></testcase>
<testcase classname="EditorCommandHandlers Block comment around line comments" name="should block comment, selection ends on line with line comment" time="0.09"></testcase>
<testcase classname="EditorCommandHandlers Block comment around line comments" name="should line uncomment, selection covers several line comments separated by whitespace" time="0.089"></testcase>
</testsuite>
<testsuite name="EditorCommandHandlers Block comment around line comments with multiple selections" errors="0" tests="2" failures="0" time="0.179" timestamp="2014-05-08T13:27:13">
<testcase classname="EditorCommandHandlers Block comment around line comments with multiple selections" name="should handle multiple selections where one of them is in a line comment" time="0.101"></testcase>
<testcase classname="EditorCommandHandlers Block comment around line comments with multiple selections" name="should handle multiple selections where several of them are in the same line comment, preserving the ignored selections" time="0.076"></testcase>
</testsuite>
<testsuite name="EditorCommandHandlers Line comment auto-switching to block comment" errors="0" tests="11" failures="0" time="0.736" timestamp="2014-05-08T13:27:14">
<testcase classname="EditorCommandHandlers Line comment auto-switching to block comment" name="should block-comment entire line that cursor is in" time="0.056"></testcase>
<testcase classname="EditorCommandHandlers Line comment auto-switching to block comment" name="should block-comment entire line that sub-line selection is in" time="0.08"></testcase>
<testcase classname="EditorCommandHandlers Line comment auto-switching to block comment" name="should block-comment full multi-line selection" time="0.075"></testcase>
<testcase classname="EditorCommandHandlers Line comment auto-switching to block comment" name="should block-comment partial multi-line selection as if it were full" time="0.072"></testcase>
<testcase classname="EditorCommandHandlers Line comment auto-switching to block comment" name="should uncomment multi-line block comment selection, selected exactly" time="0.062"></testcase>
<testcase classname="EditorCommandHandlers Line comment auto-switching to block comment" name="should uncomment multi-line block comment selection, selected including trailing newline" time="0.06"></testcase>
<testcase classname="EditorCommandHandlers Line comment auto-switching to block comment" name="should uncomment multi-line block comment selection, only start selected" time="0.062"></testcase>
<testcase classname="EditorCommandHandlers Line comment auto-switching to block comment" name="should uncomment multi-line block comment selection, only middle selected" time="0.061"></testcase>
<testcase classname="EditorCommandHandlers Line comment auto-switching to block comment" name="should uncomment multi-line block comment selection, only end selected" time="0.076"></testcase>
<testcase classname="EditorCommandHandlers Line comment auto-switching to block comment" name="should uncomment multi-line block comment selection, only end selected, ends at EOF" time="0.069"></testcase>
<testcase classname="EditorCommandHandlers Line comment auto-switching to block comment" name="should uncomment multi-line block comment that cursor is in" time="0.056"></testcase>
</testsuite>
<testsuite name="EditorCommandHandlers Comment/uncomment with mixed syntax modes" errors="0" tests="6" failures="0" time="1.067" timestamp="2014-05-08T13:27:14">
<testcase classname="EditorCommandHandlers Comment/uncomment with mixed syntax modes" name="should block comment/uncomment generic HTML code" time="0.115"></testcase>
<testcase classname="EditorCommandHandlers Comment/uncomment with mixed syntax modes" name="should block comment/uncomment generic CSS code" time="0.12"></testcase>
<testcase classname="EditorCommandHandlers Comment/uncomment with mixed syntax modes" name="should line comment/uncomment generic JS code" time="0.094"></testcase>
<testcase classname="EditorCommandHandlers Comment/uncomment with mixed syntax modes" name="should block comment/uncomment generic JS code" time="0.142"></testcase>
<testcase classname="EditorCommandHandlers Comment/uncomment with mixed syntax modes" name="should HTML comment/uncomment around outside of &lt;style&gt; block" time="0.12"></testcase>
<testcase classname="EditorCommandHandlers Comment/uncomment with mixed syntax modes" name="shouldn&apos;t comment anything when selection mixes modes" time="0.083"></testcase>
</testsuite>
<testsuite name="EditorCommandHandlers Comment/uncomment with mixed syntax modes with multiple selections" errors="0" tests="3" failures="0" time="0.387" timestamp="2014-05-08T13:27:15">
<testcase classname="EditorCommandHandlers Comment/uncomment with mixed syntax modes with multiple selections" name="should handle multiple selections in different regions, toggling block selection in each" time="0.127"></testcase>
<testcase classname="EditorCommandHandlers Comment/uncomment with mixed syntax modes with multiple selections" name="should handle multiple selections in different regions, toggling line selection (but falling back to block selection in HTML/CSS)" time="0.121"></testcase>
<testcase classname="EditorCommandHandlers Comment/uncomment with mixed syntax modes with multiple selections" name="shouldn&apos;t comment anything in a mixed-mode selection, but should track it properly and comment the other selections" time="0.135"></testcase>
</testsuite>
<testsuite name="EditorCommandHandlers Duplicate" errors="0" tests="10" failures="0" time="1.066" timestamp="2014-05-08T13:27:15">
<testcase classname="EditorCommandHandlers Duplicate" name="should duplicate whole line if no selection" time="0.069"></testcase>
<testcase classname="EditorCommandHandlers Duplicate" name="should duplicate line +
if selected line is at end of file" time="0.07"></testcase>
<testcase classname="EditorCommandHandlers Duplicate" name="should duplicate first line" time="0.056"></testcase>
<testcase classname="EditorCommandHandlers Duplicate" name="should duplicate empty line" time="0.075"></testcase>
<testcase classname="EditorCommandHandlers Duplicate" name="should duplicate selection within a line" time="0.084"></testcase>
<testcase classname="EditorCommandHandlers Duplicate" name="should duplicate when entire line selected, excluding newline" time="0.065"></testcase>
<testcase classname="EditorCommandHandlers Duplicate" name="should duplicate when entire line selected, including newline" time="0.073"></testcase>
<testcase classname="EditorCommandHandlers Duplicate" name="should duplicate when multiple lines selected" time="0.069"></testcase>
<testcase classname="EditorCommandHandlers Duplicate" name="should duplicate selection crossing line boundary" time="0.074"></testcase>
<testcase classname="EditorCommandHandlers Duplicate" name="should duplicate after select all" time="0.07"></testcase>
</testsuite>
<testsuite name="EditorCommandHandlers Duplicate with multiple selections" errors="0" tests="5" failures="0" time="0.351" timestamp="2014-05-08T13:27:16">
<testcase classname="EditorCommandHandlers Duplicate with multiple selections" name="should duplicate multiple lines containing cursors" time="0.07"></testcase>
<testcase classname="EditorCommandHandlers Duplicate with multiple selections" name="should not duplicate the same line multiple times" time="0.069"></testcase>
<testcase classname="EditorCommandHandlers Duplicate with multiple selections" name="should duplicate multiple range selections" time="0.068"></testcase>
<testcase classname="EditorCommandHandlers Duplicate with multiple selections" name="should duplicate a mix of cursors and ranges" time="0.07"></testcase>
<testcase classname="EditorCommandHandlers Duplicate with multiple selections" name="should duplicate line first, then range, if both a cursor and range are on the same line" time="0.07"></testcase>
</testsuite>
<testsuite name="EditorCommandHandlers Move Lines Up/Down" errors="0" tests="20" failures="0" time="2.076" timestamp="2014-05-08T13:27:16">
<testcase classname="EditorCommandHandlers Move Lines Up/Down" name="should move whole line up if no selection" time="0.065"></testcase>
<testcase classname="EditorCommandHandlers Move Lines Up/Down" name="should move whole line down if no selection" time="0.062"></testcase>
<testcase classname="EditorCommandHandlers Move Lines Up/Down" name="shouldn&apos;t move up first line" time="0.049"></testcase>
<testcase classname="EditorCommandHandlers Move Lines Up/Down" name="shouldn&apos;t move down last line" time="0.056"></testcase>
<testcase classname="EditorCommandHandlers Move Lines Up/Down" name="should move up empty line" time="0.089"></testcase>
<testcase classname="EditorCommandHandlers Move Lines Up/Down" name="should move down empty line" time="0.068"></testcase>
<testcase classname="EditorCommandHandlers Move Lines Up/Down" name="should move up when entire line selected, excluding newline" time="0.086"></testcase>
<testcase classname="EditorCommandHandlers Move Lines Up/Down" name="should move down when entire line selected, excluding newline" time="0.063"></testcase>
<testcase classname="EditorCommandHandlers Move Lines Up/Down" name="should move up when entire line selected, including newline" time="0.075"></testcase>
<testcase classname="EditorCommandHandlers Move Lines Up/Down" name="should move down when entire line selected, including newline" time="0.064"></testcase>
<testcase classname="EditorCommandHandlers Move Lines Up/Down" name="should move up when multiple lines selected" time="0.085"></testcase>
<testcase classname="EditorCommandHandlers Move Lines Up/Down" name="should move down when multiple lines selected" time="0.063"></testcase>
<testcase classname="EditorCommandHandlers Move Lines Up/Down" name="should move up selection crossing line boundary" time="0.066"></testcase>
<testcase classname="EditorCommandHandlers Move Lines Up/Down" name="should move down selection crossing line boundary" time="0.063"></testcase>
<testcase classname="EditorCommandHandlers Move Lines Up/Down" name="should move the last line up" time="0.074"></testcase>
<testcase classname="EditorCommandHandlers Move Lines Up/Down" name="should move the first line down" time="0.057"></testcase>
<testcase classname="EditorCommandHandlers Move Lines Up/Down" name="should move the last lines up" time="0.076"></testcase>
<testcase classname="EditorCommandHandlers Move Lines Up/Down" name="should move the first lines down" time="0.062"></testcase>
<testcase classname="EditorCommandHandlers Move Lines Up/Down" name="shouldn&apos;t move up after select all" time="0.072"></testcase>
<testcase classname="EditorCommandHandlers Move Lines Up/Down" name="shouldn&apos;t move down after select all" time="0.058"></testcase>
</testsuite>
<testsuite name="EditorCommandHandlers Move Lines Up/Down with multiple selections" errors="0" tests="10" failures="0" time="0.706" timestamp="2014-05-08T13:27:18">
<testcase classname="EditorCommandHandlers Move Lines Up/Down with multiple selections" name="should move discontiguous lines up" time="0.08"></testcase>
<testcase classname="EditorCommandHandlers Move Lines Up/Down with multiple selections" name="should move discontiguous lines down" time="0.076"></testcase>
<testcase classname="EditorCommandHandlers Move Lines Up/Down with multiple selections" name="should move adjacent single lines with multiple selections up together" time="0.065"></testcase>
<testcase classname="EditorCommandHandlers Move Lines Up/Down with multiple selections" name="should move adjacent single lines with multiple selections down together" time="0.062"></testcase>
<testcase classname="EditorCommandHandlers Move Lines Up/Down with multiple selections" name="should move adjacent blocks of lines with multiple selections up together" time="0.068"></testcase>
<testcase classname="EditorCommandHandlers Move Lines Up/Down with multiple selections" name="should move adjacent blocks of lines with multiple selections down together" time="0.067"></testcase>
<testcase classname="EditorCommandHandlers Move Lines Up/Down with multiple selections" name="should move each line up only once if there are multiple cursors/selections on the same line, but preserve the selections" time="0.071"></testcase>
<testcase classname="EditorCommandHandlers Move Lines Up/Down with multiple selections" name="should move each line down only once if there are multiple cursors/selections on the same line, but preserve the selections" time="0.07"></testcase>
<testcase classname="EditorCommandHandlers Move Lines Up/Down with multiple selections" name="should properly coalesce selections that end/start on the same line when moving up" time="0.072"></testcase>
<testcase classname="EditorCommandHandlers Move Lines Up/Down with multiple selections" name="should properly coalesce selections that end/start on the same line when moving down" time="0.066"></testcase>
</testsuite>
<testsuite name="EditorCommandHandlers Delete Line" errors="0" tests="12" failures="0" time="1.215" timestamp="2014-05-08T13:27:19">
<testcase classname="EditorCommandHandlers Delete Line" name="should delete the first line when selection is an IP in that line" time="0.058"></testcase>
<testcase classname="EditorCommandHandlers Delete Line" name="should delete the first line when selection is a range in that line" time="0.075"></testcase>
<testcase classname="EditorCommandHandlers Delete Line" name="should delete a middle line when selection is an IP in that line" time="0.058"></testcase>
<testcase classname="EditorCommandHandlers Delete Line" name="should delete a middle line when selection is a range in that line" time="0.087"></testcase>
<testcase classname="EditorCommandHandlers Delete Line" name="should delete the last line when selection is an IP in that line" time="0.074"></testcase>
<testcase classname="EditorCommandHandlers Delete Line" name="should delete the last line when selection is a range in that line" time="0.063"></testcase>
<testcase classname="EditorCommandHandlers Delete Line" name="should delete multiple lines starting at the top when selection spans them" time="0.064"></testcase>
<testcase classname="EditorCommandHandlers Delete Line" name="should not delete an extra line after a whole selected line" time="0.062"></testcase>
<testcase classname="EditorCommandHandlers Delete Line" name="should not delete an extra line at the end of the document after a whole selected line" time="0.067"></testcase>
<testcase classname="EditorCommandHandlers Delete Line" name="should not delete an extra line after several whole lines that are selected" time="0.062"></testcase>
<testcase classname="EditorCommandHandlers Delete Line" name="should delete multiple lines ending at the bottom when selection spans them" time="0.064"></testcase>
<testcase classname="EditorCommandHandlers Delete Line" name="should leave empty text when all lines are selected" time="0.06"></testcase>
</testsuite>
<testsuite name="EditorCommandHandlers Delete Line with multiple selections" errors="0" tests="6" failures="0" time="0.411" timestamp="2014-05-08T13:27:19">
<testcase classname="EditorCommandHandlers Delete Line with multiple selections" name="should delete lines containing any cursor in a multiple selection" time="0.063"></testcase>
<testcase classname="EditorCommandHandlers Delete Line with multiple selections" name="should delete lines containing any range in a multiple selection" time="0.074"></testcase>
<testcase classname="EditorCommandHandlers Delete Line with multiple selections" name="should handle multiple cursors/selections on the same line (only deleting the line once)" time="0.074"></testcase>
<testcase classname="EditorCommandHandlers Delete Line with multiple selections" name="should handle multiple selections that span multiple lines" time="0.067"></testcase>
<testcase classname="EditorCommandHandlers Delete Line with multiple selections" name="should delete the rest of a selection that starts on a line previously deleted" time="0.063"></testcase>
<testcase classname="EditorCommandHandlers Delete Line with multiple selections" name="should merge the primary selection into another selection on the same line" time="0.065"></testcase>
</testsuite>
<testsuite name="EditorCommandHandlers Delete Line - editor with visible range" errors="0" tests="5" failures="0" time="0.388" timestamp="2014-05-08T13:27:20">
<testcase classname="EditorCommandHandlers Delete Line - editor with visible range" name="should delete the top line of the visible range" time="0.087"></testcase>
<testcase classname="EditorCommandHandlers Delete Line - editor with visible range" name="should delete the bottom line of the visible range" time="0.07"></testcase>
<testcase classname="EditorCommandHandlers Delete Line - editor with visible range" name="should leave a single newline when all visible lines are selected" time="0.073"></testcase>
<testcase classname="EditorCommandHandlers Delete Line - editor with visible range" name="should leave a single newline when only one line is visible" time="0.064"></testcase>
<testcase classname="EditorCommandHandlers Delete Line - editor with visible range" name="should properly handle multiple selection, including first and last line deletion" time="0.077"></testcase>
</testsuite>
<testsuite name="EditorCommandHandlers Select Line" errors="0" tests="7" failures="0" time="1.087" timestamp="2014-05-08T13:27:20">
<testcase classname="EditorCommandHandlers Select Line" name="should select the first line with IP in that line" time="0.067"></testcase>
<testcase classname="EditorCommandHandlers Select Line" name="should select the last line with IP in that line" time="0.195"></testcase>
<testcase classname="EditorCommandHandlers Select Line" name="should select all in one-line file" time="0.068"></testcase>
<testcase classname="EditorCommandHandlers Select Line" name="should extend selection to whole line" time="0.063"></testcase>
<testcase classname="EditorCommandHandlers Select Line" name="should extend whole line selection to next line" time="0.058"></testcase>
<testcase classname="EditorCommandHandlers Select Line" name="should extend multi-line selection to full lines" time="0.062"></testcase>
<testcase classname="EditorCommandHandlers Select Line" name="should extend full multi-line selection to one more line" time="0.057"></testcase>
</testsuite>
<testsuite name="EditorCommandHandlers Select Line with multiple selections" errors="0" tests="8" failures="0" time="0.512" timestamp="2014-05-08T13:27:21">
<testcase classname="EditorCommandHandlers Select Line with multiple selections" name="should extend multiple cursors to multiple lines" time="0.069"></testcase>
<testcase classname="EditorCommandHandlers Select Line with multiple selections" name="should extend multiple selections to multiple lines" time="0.086"></testcase>
<testcase classname="EditorCommandHandlers Select Line with multiple selections" name="should extend multiple multi-line selections to whole lines, and handle end properly" time="0.06"></testcase>
<testcase classname="EditorCommandHandlers Select Line with multiple selections" name="should extend whole lines in multiple selection to next line, except at end" time="0.06"></testcase>
<testcase classname="EditorCommandHandlers Select Line with multiple selections" name="should extend multiple lines in multiple selection to additional line, and handle end properly" time="0.059"></testcase>
<testcase classname="EditorCommandHandlers Select Line with multiple selections" name="should merge selections that collide" time="0.057"></testcase>
<testcase classname="EditorCommandHandlers Select Line with multiple selections" name="should track a non-default primary selection" time="0.058"></testcase>
<testcase classname="EditorCommandHandlers Select Line with multiple selections" name="should track a reversed selection" time="0.061"></testcase>
</testsuite>
<testsuite name="EditorCommandHandlers Select Line - editor with visible range" errors="0" tests="4" failures="0" time="0.265" timestamp="2014-05-08T13:27:21">
<testcase classname="EditorCommandHandlers Select Line - editor with visible range" name="shouldn&apos;t select past end of visible range, IP in middle of last visible line" time="0.071"></testcase>
<testcase classname="EditorCommandHandlers Select Line - editor with visible range" name="shouldn&apos;t select past end of visible range, IP at start of last visible line" time="0.059"></testcase>
<testcase classname="EditorCommandHandlers Select Line - editor with visible range" name="should extend selection to include last line of visible range" time="0.061"></testcase>
<testcase classname="EditorCommandHandlers Select Line - editor with visible range" name="should properly expand multiselection at start and end" time="0.071"></testcase>
</testsuite>
<testsuite name="EditorCommandHandlers Open Line Above and Below" errors="0" tests="14" failures="0" time="1.52" timestamp="2014-05-08T13:27:21">
<testcase classname="EditorCommandHandlers Open Line Above and Below" name="should insert new line above if no selection" time="0.063"></testcase>
<testcase classname="EditorCommandHandlers Open Line Above and Below" name="should insert new line above the first line if no selection" time="0.06"></testcase>
<testcase classname="EditorCommandHandlers Open Line Above and Below" name="should insert new line above the last line if no selection" time="0.074"></testcase>
<testcase classname="EditorCommandHandlers Open Line Above and Below" name="should insert new line above with no indentation if no selection" time="0.061"></testcase>
<testcase classname="EditorCommandHandlers Open Line Above and Below" name="should insert new line above when characters selected" time="0.066"></testcase>
<testcase classname="EditorCommandHandlers Open Line Above and Below" name="should insert new line above when linewise selection" time="0.096"></testcase>
<testcase classname="EditorCommandHandlers Open Line Above and Below" name="should insert new line above when multiple line selection" time="0.072"></testcase>
<testcase classname="EditorCommandHandlers Open Line Above and Below" name="should insert new line below when no selection" time="0.063"></testcase>
<testcase classname="EditorCommandHandlers Open Line Above and Below" name="should insert new line below the first line if no selection" time="0.06"></testcase>
<testcase classname="EditorCommandHandlers Open Line Above and Below" name="should insert new line below the last line if no selection" time="0.077"></testcase>
<testcase classname="EditorCommandHandlers Open Line Above and Below" name="should insert new line below with no indentation if no selection" time="0.071"></testcase>
<testcase classname="EditorCommandHandlers Open Line Above and Below" name="should insert new line below when characters selected" time="0.068"></testcase>
<testcase classname="EditorCommandHandlers Open Line Above and Below" name="should insert new line below when linewise selection" time="0.068"></testcase>
<testcase classname="EditorCommandHandlers Open Line Above and Below" name="should insert new line below when multiple line selection" time="0.068"></testcase>
</testsuite>
<testsuite name="EditorCommandHandlers Open Line Above and Below with multiple selections" errors="0" tests="6" failures="0" time="0.547" timestamp="2014-05-08T13:27:22">
<testcase classname="EditorCommandHandlers Open Line Above and Below with multiple selections" name="should insert new line above each selection cursor/range" time="0.087"></testcase>
<testcase classname="EditorCommandHandlers Open Line Above and Below with multiple selections" name="should ignore multiple selections on same line when inserting above" time="0.079"></testcase>
<testcase classname="EditorCommandHandlers Open Line Above and Below with multiple selections" name="should not ignore multiple selections that end on the same line if the second one starts on a different line when inserting above" time="0.109"></testcase>
<testcase classname="EditorCommandHandlers Open Line Above and Below with multiple selections" name="should insert new line below each selection cursor/range" time="0.087"></testcase>
<testcase classname="EditorCommandHandlers Open Line Above and Below with multiple selections" name="should ignore multiple selections on same line when inserting below" time="0.103"></testcase>
<testcase classname="EditorCommandHandlers Open Line Above and Below with multiple selections" name="should not ignore multiple selections that start on the same line if the second one ends on a different line when inserting below" time="0.079"></testcase>
</testsuite>
<testsuite name="EditorCommandHandlers Add Line to Selection" errors="0" tests="12" failures="0" time="0.705" timestamp="2014-05-08T13:27:23">
<testcase classname="EditorCommandHandlers Add Line to Selection" name="should add a cursor on the next line after a single cursor selection and make it primary" time="0.052"></testcase>
<testcase classname="EditorCommandHandlers Add Line to Selection" name="should add a cursor on the previous line before a single cursor selection and make it primary" time="0.056"></testcase>
<testcase classname="EditorCommandHandlers Add Line to Selection" name="should add a cursor on the next line after a single-line range selection, below the end pos of the range" time="0.06"></testcase>
<testcase classname="EditorCommandHandlers Add Line to Selection" name="should add a cursor on the previous line after a single-line range selection, above the start pos of the range" time="0.06"></testcase>
<testcase classname="EditorCommandHandlers Add Line to Selection" name="should add a cursor on the next line after a multi-line range selection, below the end pos of the range" time="0.059"></testcase>
<testcase classname="EditorCommandHandlers Add Line to Selection" name="should add a cursor on the previous line before a multi-line range selection, above the start pos of the range" time="0.059"></testcase>
<testcase classname="EditorCommandHandlers Add Line to Selection" name="should do nothing if trying to add selection down at last line" time="0.057"></testcase>
<testcase classname="EditorCommandHandlers Add Line to Selection" name="should do nothing if trying to add selection up at first line" time="0.051"></testcase>
<testcase classname="EditorCommandHandlers Add Line to Selection" name="should add cursors below each range in a multiple selection, making the correct one primary" time="0.06"></testcase>
<testcase classname="EditorCommandHandlers Add Line to Selection" name="should add cursors above each range in a multiple selection, making the correct one primary" time="0.065"></testcase>
<testcase classname="EditorCommandHandlers Add Line to Selection" name="should not add cursors downward that overlap another selection" time="0.061"></testcase>
<testcase classname="EditorCommandHandlers Add Line to Selection" name="should not add cursors upward that overlap another selection" time="0.06"></testcase>
</testsuite>
<testsuite name="EditorCommandHandlers Add Line to Selection with Tabs" errors="0" tests="2" failures="0" time="0.098" timestamp="2014-05-08T13:27:24">
<testcase classname="EditorCommandHandlers Add Line to Selection with Tabs" name="should add a cursor on the next line before a single cursor in same visual position" time="0.048"></testcase>
<testcase classname="EditorCommandHandlers Add Line to Selection with Tabs" name="should add a cursor on the previous line before a single cursor selection in same visual position" time="0.049"></testcase>
</testsuite>
<testsuite name="FindReplace - Unit" errors="0" tests="0" failures="0" time="0" timestamp="2014-05-08T13:27:26">
</testsuite>
<testsuite name="FindReplace - Unit getWordAt" errors="0" tests="8" failures="0" time="0.431" timestamp="2014-05-08T13:27:24">
<testcase classname="FindReplace - Unit getWordAt" name="should select a word bounded by whitespace from a pos in the middle of the word" time="0.049"></testcase>
<testcase classname="FindReplace - Unit getWordAt" name="should select a word bounded by whitespace from a pos at the beginning of the word" time="0.074"></testcase>
<testcase classname="FindReplace - Unit getWordAt" name="should select a word bounded by whitespace from a pos at the end of the word" time="0.055"></testcase>
<testcase classname="FindReplace - Unit getWordAt" name="should select a word bounded by nonword characters from a pos in the middle of the word" time="0.049"></testcase>
<testcase classname="FindReplace - Unit getWordAt" name="should select a word bounded by nonword characters from a pos at the beginning of the word" time="0.061"></testcase>
<testcase classname="FindReplace - Unit getWordAt" name="should select a word bounded by nonword characters from a pos at the end of the word" time="0.046"></testcase>
<testcase classname="FindReplace - Unit getWordAt" name="should return an empty range in the middle of whitespace" time="0.045"></testcase>
<testcase classname="FindReplace - Unit getWordAt" name="should return an empty range in the middle of non-word chars" time="0.046"></testcase>
</testsuite>
<testsuite name="FindReplace - Unit expandAndAddNextToSelection" errors="0" tests="10" failures="0" time="0.592" timestamp="2014-05-08T13:27:24">
<testcase classname="FindReplace - Unit expandAndAddNextToSelection" name="should do nothing if the cursor is in non-word/whitespace" time="0.055"></testcase>
<testcase classname="FindReplace - Unit expandAndAddNextToSelection" name="should expand a single cursor to the containing word without adding a new selection" time="0.057"></testcase>
<testcase classname="FindReplace - Unit expandAndAddNextToSelection" name="should add the next match for a single word selection as a new primary selection" time="0.068"></testcase>
<testcase classname="FindReplace - Unit expandAndAddNextToSelection" name="should add the next match for an existing range that isn&apos;t actually a word" time="0.063"></testcase>
<testcase classname="FindReplace - Unit expandAndAddNextToSelection" name="should find the next match case-insensitively" time="0.064"></testcase>
<testcase classname="FindReplace - Unit expandAndAddNextToSelection" name="should expand two cursors without adding a new selection" time="0.055"></testcase>
<testcase classname="FindReplace - Unit expandAndAddNextToSelection" name="should, when one cursor and one range are selected, expand the cursor and add the next match for the range to the selection" time="0.058"></testcase>
<testcase classname="FindReplace - Unit expandAndAddNextToSelection" name="should wrap around the end of the document and add the next instance at the beginning of the document" time="0.057"></testcase>
<testcase classname="FindReplace - Unit expandAndAddNextToSelection" name="should skip over matches that are already in the selection" time="0.054"></testcase>
<testcase classname="FindReplace - Unit expandAndAddNextToSelection" name="should do nothing if all instances are already selected" time="0.055"></testcase>
</testsuite>
<testsuite name="FindReplace - Unit expandAndAddNextToSelection - with removeCurrent (for Skip Match)" errors="0" tests="6" failures="0" time="0.36" timestamp="2014-05-08T13:27:25">
<testcase classname="FindReplace - Unit expandAndAddNextToSelection - with removeCurrent (for Skip Match)" name="should remove a single range selection and select the next instance" time="0.059"></testcase>
<testcase classname="FindReplace - Unit expandAndAddNextToSelection - with removeCurrent (for Skip Match)" name="should expand a single cursor to a range, then change the selection to the next instance of that range" time="0.075"></testcase>
<testcase classname="FindReplace - Unit expandAndAddNextToSelection - with removeCurrent (for Skip Match)" name="should, when one cursor and one range are selected, expand the cursor and change the range selection to its next match" time="0.056"></testcase>
<testcase classname="FindReplace - Unit expandAndAddNextToSelection - with removeCurrent (for Skip Match)" name="should wrap around the end of the document and switch to the next instance at the beginning of the document" time="0.057"></testcase>
<testcase classname="FindReplace - Unit expandAndAddNextToSelection - with removeCurrent (for Skip Match)" name="should skip over matches that are already in the selection (but still remove the current one)" time="0.054"></testcase>
<testcase classname="FindReplace - Unit expandAndAddNextToSelection - with removeCurrent (for Skip Match)" name="should just remove the primary selection if all instances are already selected" time="0.056"></testcase>
</testsuite>
<testsuite name="FindReplace - Unit findAllAndSelect" errors="0" tests="6" failures="0" time="0.431" timestamp="2014-05-08T13:27:25">
<testcase classname="FindReplace - Unit findAllAndSelect" name="should find all instances of a selected range when first instance is selected, keeping it primary" time="0.067"></testcase>
<testcase classname="FindReplace - Unit findAllAndSelect" name="should find all instances of a selected range when instance other than first is selected, keeping it primary" time="0.07"></testcase>
<testcase classname="FindReplace - Unit findAllAndSelect" name="should throw away selections other than the primary selection" time="0.072"></testcase>
<testcase classname="FindReplace - Unit findAllAndSelect" name="should expand cursor to range, then find other instances" time="0.06"></testcase>
<testcase classname="FindReplace - Unit findAllAndSelect" name="should find all case insensitively" time="0.063"></testcase>
<testcase classname="FindReplace - Unit findAllAndSelect" name="should not change the selection if the primary selection is a cursor inside a non-word" time="0.093"></testcase>
</testsuite>
</testsuites>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment