Code Monkey home page Code Monkey logo

atom-phpunit-integrator's People

Stargazers

 avatar

Watchers

 avatar  avatar

Forkers

recca0120

atom-phpunit-integrator's Issues

docblocks missing

The setUp and tearDown methods of an auto generated test class are missing docblocks.

Debug and code coverage toggle seems to have disappeared

Not sure how or why this happened, but in the latest releases, I think around 0.0.47 or 0.0.48, these both seem to have disappeared. I have xdebug disabled in php.ini but have configured xdebug.so via the package settings.

Minor button styling feedback

The styling has much improved since the headers were added to the tests tree and the classes are collapsed by default (on passing tests contained in it).

The icons also match Atom a lot better now, thanks!

A minor nitpick about the buttons is that they currently still contain custom styling by some sort of white-grey border. The styleguide contains classes for buttons that contain icons, such as the btn class, under the "Icon buttons" heading. These also include hover states and such as styled by the theme. I think using these for the tests panel buttons may further improve the styling.

Apart from that, in the short time this package has been released, it went from a not-so-great look to a pretty awesome look!

I also like how the overview row on the bottom of the tree is now colored according to whether tests passed or not, it really helps by throwing failed tests in your face so you don't miss them.

Finally, I originally mentioned that the percentages in the tree don't take away the focus, but found myself experimenting a bit today with alternative solutions anyway. Alas, I didn't find a better way to display them. I tried:

  • Only showing them on hover, but then I tend to ignore them entirely
  • Using the same color as the filename, but then they just blend in with everything else and everything becomes a giant blob
  • Using a slightly more transparent color, but then they become hard to read
  • Using the current color, but making it a bit transparent, which didn't help much
  • Making the font smaller and vertically aligning to the top, which helped a little, but didn't solve much of the original problem

I also thought of making them toggleable, but then I think you'd usually just ignore them as well. Besides, there is already the code coverage panel for seeing that. I see PhpStorm also just uses a slightly less apparent color, so perhaps a change isn't necessary.

Show progress of multiple tests

Currently when running multiple test suite/files, there is no indication of progress.

Perhaps adding a progress bar below the result tree, visible only during batch tests, would help.

Allow running all test suites in project

When a project contains multiple test ruites, such as, coincidentally, PHP Integrator's core, you can only run one suite at a time. It would be handy to be able to run all suites in one run, such as phpunit does by default.

I assume, but may be wrong in, that this also causes code coverage information to not be complete, as it only shows the sole test suite that ran.

Coverage panel missaligned

The columns in the body do not line up with the header. This is especially noticeable when there is a scrollbar.

Idea: show code coverage information in tree view

This is something I saw (stole) from PhpStorm. As is currently the case, there is also a tab that shows a list of files that have code coverage and how much coverage they have. PhpStorm provides an additional integration with the tree view - screenshot I shamelessly plugged from somewhere - that does the same, but shows the percentages next to the file names.

The advantage would be that you're constantly confronted with the coverage whilst browsing the tree view and, for the most part, the dock/pane displaying may even be replaced for the most part (though it may still be useful in a very large codebase where there is little coverage).

This is more of an idea, to put a bug in your ear, so feel free to close this if it is unfeasible or you don't feel it's something you want to do.

Denote failed tests more clearly

I've been using php-unit-integrator for a while now, and overall it's pretty much anything I'd expect of a test running package. ๐Ÿ‘

Today, I was running tests and apparently I broke something (happens). However, whilst I did run the tests at a later point, I still didn't see that the tests were failing. The bottom bar lists the amount of failed tests, but it blends in with the rest of the panel. A button pops up to filter failed tests only when there are some to filter, but I didn't notice this change either. Finally, there were some failed tests in the tree, but they were listed further down, so they couldn't be seen without scrolling first.

Perhaps moving failed tests up top or providing some other overall obvious status on the top of the panel would be appropriate? This could be as simple as an obvious red message stating "Some tests failed" and a green text "All tests passing" otherwise.

What do you think? Or maybe I'm just not paying enough attention... ๐Ÿ˜‰ .

Interface scrambled since 0.0.6

The interface seems to be botched since the 0.0.6 release, not sure what happened here. Thought I'd let you know.

test

Running the tests tries to expand the view to make it larger and larger, but it does not add a scrollbar, so the test output eventually fills the entire dock.

This seems to happen with all themes.

Idea - Auto-expand failed test output

This idea comes from the fact that, when one of my tests fail and I'm making modifications, I find myself constantly re-expanding the failed test output, sometimes to discover that I didn't actually fix the original issue, and sometimes to find that a new issue popped up. With a quick test-modify-test cycle, expanding in the tree every time quickly becomes a nuisance.

This may be a bit controversial, as the tree will expand in size rather quickly if this happens if there are many failing tests or there is just a lot of output from the failed test. Perhaps a setting for it may be appropriate.

To avoid large test output quickly making the tree large, you could also limit the height of the tree and show a "Show more" / "Show less" button to lift/reapply the height limitation.

Select methods to generate

When creating a new test class, it would be ideal for each public method to be auto generated. A selection should be provided to the user.

TypeError: Cannot read property 'setAttribute' of undefined

Since 0.0.44, whenever I run tests, the following error pops up:

 TypeError: Cannot read property 'setAttribute' of undefined
        at /home/werk/.atom/packages/php-unit-integrator/lib/views/php-unit-integrator-view.js:452:45
        at ViewRegistry.performDocumentUpdate (/usr/lib/atom/src/view-registry.js:238:7)

Not sure where it's coming from.

Cannot read property 'startsWith' of undefined

Encountering this one after the update to 0.0.51:

TypeError: Cannot read property 'startsWith' of undefined
    at /home/werk/.atom/packages/shared-settings/lib/shared-settings.js:18:67
    at PaneContainer.observePaneItems (/usr/lib/atom/src/pane-container.js:104:45)
    at WorkspaceCenter.observePaneItems (/usr/lib/atom/src/workspace-center.js:71:59)
    at CompositeDisposable.getPaneContainers.map.container (/usr/lib/atom/src/workspace.js:637:62)
    at Array.map (native)
    at Workspace.observePaneItems (/usr/lib/atom/src/workspace.js:637:35)
    at Object.activate (/home/werk/.atom/packages/shared-settings/lib/shared-settings.js:17:47)
    at Package.activateNow (/usr/lib/atom/src/package.js:225:27)
    at measure (/usr/lib/atom/src/package.js:201:27)
    at Package.measure (/usr/lib/atom/src/package.js:83:19)
    at activationPromise.Promise (/usr/lib/atom/src/package.js:195:14)
    at Promise (<anonymous>)
    at Package.activate (/usr/lib/atom/src/package.js:193:32)
    at PackageManager.activatePackage (/usr/lib/atom/src/package-manager.js:684:36)
    at config.transactAsync (/usr/lib/atom/src/package-manager.js:659:30)
    at Config.transactAsync (/usr/lib/atom/src/config.js:866:22)
    at PackageManager.activatePackages (/usr/lib/atom/src/package-manager.js:657:17)
    at PackageManager.activate (/usr/lib/atom/src/package-manager.js:636:44)
    at loadStatePromise.loadState.then (/usr/lib/atom/src/atom-environment.js:857:21)
    at <anonymous>

I was also encountering a problem related to an unknown setting alwaysOpen in 0.0.50, but I see you've modified code related to that in 0.0.51, so it's probably fixed (if it isn't, I'll let you know).

Coverage view rounding errors

The coverage panel uses Math.round on the percentage. This causes 95.6% coverage to become 100% which is obviously wrong.

"Go To Testcase" appears to not function

This may be due to a setup issue on my side, but this context menu item appears to have no effect. It is available as option when right-clicking a test in the tests tree.

It would also be neat if this same behavior was achieved when a test in the tree is double-clicked (i.e. without having to right-click it first). Perhaps this is already the case, but I can't know for sure since the context menu isn't currently working for me either, so I thought I'd mention it anyways.

Also, a cursor: pointer style for the tests in the tests tree may be handy to indicate the available interaction (collapse/expand/open).

Failed tests get an expando, but nothing expands

When one of my tests fails, it gets an expando to the left of it for some reason:

failed test

I thought the actual failed assertions may be hidden behind it, but clicking it doesn't seem to expand anything. I also can't find any additional content via the developer tools, so I assume it's a minor bug ๐Ÿ˜„ .

Little bit of styling/usability feedback

The visual appearance of this package has already much improved since the first version, in my opinion. Design and usability isn't my expertise, but I thought I'd bounce some things I've noticed off of you, so you can decide if you want to fix them or not ๐Ÿ˜„.

  • Add title attributes to the action buttons, e.g. title="Run tests" in their HTML, so that hovering over the buttons shows what they do
  • The mentioning of the status after the test name, such as passed feels a bit redundant, as the icon already provides a (better) indicator of this; removing it would reduce clutter in the tests tree (optionally, you could also try adding title attributes to the status icons)
  • I'd use another color for the amount of time a test took. Using the "passed" color (usually green) really draws your eyes to the time, whilst in most cases it is just a minor detail - I do agree showing the time is useful, however, to track down slow tests. Perhaps a good color may be a somewhat darker or less apparent or "phased out" version of the color used for the test name.
    • Alternatively, you could move it to a second column or inside the expando for each test. The expando would move it out of sight, but makes you lose the ability to get a quick overview. Using a second column, on the other hand, would allow sorting by it.
  • I'd replace colors with the colors defined by classes specified in the atom styleguide package, e.g. <div class='text-success'>Success text</div>. Theme authors use the styleguide to theme everything in Atom and using these colors helps ensure the package looks visually appealing in even the most exuberant of themes.
    • There is also a list of default icons in Atom in there (octicons). Using these for the action buttons as well as in the tests tree (passed/failed/skipped) would also improve the visual appeal.
  • Show a progress/busy indicator - there is one in the styleguide - over the tests tree whilst PHPUnit is still running
  • I seem to be able to type inside the raw tests output, though the fact that I can select and copy output is extremely useful - if it is impossible to fix without removing that ability, I'd just leave it ๐Ÿ˜„ .
  • The down arrow in the suite selection dropdown seems to overlap the text inside it: example

Incorrect coverage when running multiple tests

Running all files/suites results in less coverage than running the single default suite. This discrepancy can be as much as 40%. Obviously there is a problem with how the reports are merged.

TestCase names truncated

The test case names are truncated more than the parent suite names. This causes a large space between the ellipses and the time.

Provide ability to exclude test suites

As PHPUnit runs all test suites by default, it is possible to exclude one or more from them via the <groups><exclude><group>MyGroup</group></exclude></groups> tags.

PHP Integrator's core does this to avoid running the performance test suite by default, but to keep the unit and integration test suite running by default.

When running "all test suites", php-unit-integrator currently loops over the available ones and runs all of them, excluded or not.

I don't think it's necessary to actually read the PHPUnit file - you could do that nonetheless, of course. Instead, it may be easier to provide a "null" menu item in the list of suites that does not pass any suite arguments to PHPUnit, which would make it use its default behavior (and revert to what's specified in the XML). Setting this as default selection would apply the same behavior to this package as PHPUnit does via the command line.

Alternatively, you could make the suites dropdown a multiselect using checkboxes to toggle the ones you want.

Failed to load the php-unit-integrator package

Steps to reproduce:

  1. Just install the package and let it activate itself.

Atom: 1.25.0 x64
Electron: 1.8.4
Thrown From: php-unit-integrator package 0.0.2

Stack Trace

Failed to load the php-unit-integrator package

At variable @text-color-ignored is undefined in ~/.atom/packages/php-unit-integrator/styles/php-unit-integrator.less:116:17

LessError: variable @text-color-ignored is undefined
at ~/.atom/packages/php-unit-integrator/styles/php-unit-integrator.less:116:17

Not sure if this is something specific to my setup.

Docker support

It's looking like Docker is the way forward for PHP development.

I currently have multiple packages which run either the PHP binary directly or binaries compiled to be used with PHP (composer, symfony, phpunit...). There are also multiple other packages out there doing similar.

Since it would be cumbersome to try adding the same code to each package, I suggest to create an npm module which can read the atom shared.php config (overridable by a package of course) and spawn the correct process.

Uncaught (in promise) TypeError: Cannot read property 'Symbol(Symbol.iterator)' of null

I get this error in the console sometimes. It doesn't show up as error notification. I think it's related to the parsing of PHP code.

php-unit-proxy.js? [sm]:415 Uncaught (in promise) TypeError: Cannot read property 'Symbol(Symbol.iterator)' of null
            at PhpUnitProxy.<anonymous> (php-unit-proxy.js? [sm]:358)
            at Generator.next (<anonymous>)
            at step (/home/user/.atom/packages/php-unit-integrator/lib/proxy/php-unit-proxy.js:9)
            at <anonymous>

I also see this often when ysyntax errors occur, also in the developer tools console.

SyntaxError: Parse Error : syntax error, unexpected '$this' (T_VARIABLE), expecting ';' on line 91
            at parser.raiseError (/home/user/.atom/packages/php-unit-integrator/node_modules/php-parser/src/parser.js:290)
            at parser.error (/home/user/.atom/packages/php-unit-integrator/node_modules/php-parser/src/parser.js:335)
            at parser.expectEndOfStatement (/home/user/.atom/packages/php-unit-integrator/node_modules/php-parser/src/parser.js:360)
            at parser.read_statement (/home/user/.atom/packages/php-unit-integrator/node_modules/php-parser/src/parser/statement.js:368)
            at parser.read_inner_statement (/home/user/.atom/packages/php-unit-integrator/node_modules/php-parser/src/parser/statement.js:186)
            at parser.read_inner_statements (/home/user/.atom/packages/php-unit-integrator/node_modules/php-parser/src/parser/statement.js:86)
            at parser.read_code_block (/home/user/.atom/packages/php-unit-integrator/node_modules/php-parser/src/parser/statement.js:397)
            at parser.read_function (/home/user/.atom/packages/php-unit-integrator/node_modules/php-parser/src/parser/function.js:47)
            at parser.read_class_body (/home/user/.atom/packages/php-unit-integrator/node_modules/php-parser/src/parser/class.js:101)
            at parser.read_class (/home/user/.atom/packages/php-unit-integrator/node_modules/php-parser/src/parser/class.js:28)
            at parser.read_top_statement (/home/user/.atom/packages/php-unit-integrator/node_modules/php-parser/src/parser/statement.js:46)
            at parser.read_top_statements (/home/user/.atom/packages/php-unit-integrator/node_modules/php-parser/src/parser/statement.js:16)
            at parser.read_namespace (/home/user/.atom/packages/php-unit-integrator/node_modules/php-parser/src/parser/namespace.js:33)
            at parser.read_start (/home/user/.atom/packages/php-unit-integrator/node_modules/php-parser/src/parser/main.js:15)
            at parser.parse (/home/user/.atom/packages/php-unit-integrator/node_modules/php-parser/src/parser.js:272)
            at engine.parseCode (/home/user/.atom/packages/php-unit-integrator/node_modules/php-parser/src/index.js:168)
            at PhpCoreService.<anonymous> (php-core-service.js? [sm]:94)
            at Generator.next (<anonymous>)
            at step (/home/user/.atom/packages/php-unit-integrator/lib/proxy/php-core-service.js:9)
            at /home/user/.atom/packages/php-unit-integrator/lib/proxy/php-core-service.js:9
            at Promise (<anonymous>)
            at PhpCoreService.<anonymous> (/home/user/.atom/packages/php-unit-integrator/lib/proxy/php-core-service.js:9)
            at PhpCoreService.<anonymous> (php-core-service.js? [sm]:31)
            at Generator.next (<anonymous>)
            at step (/home/user/.atom/packages/php-unit-integrator/lib/proxy/php-core-service.js:9)
            at <anonymous>

Coverage highlight doesn't fill line

The coverage highlight of a single line is fixed at 100 characters. This should be changed to either the longest line in the editor or the current lines actual length

Uncaught TypeError: report.getFilePath is not a function

This error seems to occur when I double-click a test class name in the tests tree. Double-clicking the tests themselves, in the nodes underneath it, work fine, though.

At /home/user/.atom/packages/php-unit-integrator/lib/views/php-unit-report-view.js:328

TypeError: report.getFilePath is not a function
    at handleDoubleClick (/packages/php-unit-integrator/lib/views/php-unit-report-view.js:328:22)
    at Function.module.exports.Emitter.simpleDispatch (/usr/lib/atom/node_modules/event-kit/lib/emitter.js:25:14)
    at Emitter.module.exports.Emitter.emit (/usr/lib/atom/node_modules/event-kit/lib/emitter.js:141:28)
    at EtchTreeNode.value (/packages/php-unit-integrator/node_modules/colletch/components/etch-component.js:142:16)
    at EtchTreeNode.onClick (/packages/php-unit-integrator/node_modules/colletch/components/etch-tree-node.js:127:23)

Multi select improvements

The '--- All ---' and '--- None ---' options in the multi selects are ugly. A better alternative would be to use word only but include a separator within the dropdown.

Add keyboard shortcut for running tests

Hi

After your post on php-integrator, I decided to take your package for a spin. I wanted to give some feedback to help you along. Expect more tickets to show up in the coming minutes ๐Ÿ˜‰.

A keyboard shortcut for running tests with would be handy. This prevents having the click the button with the mouse every time.

TypeError: Cannot read property 'target' of undefined

Heh, by now you must be getting tired of me reporting issues, but here it goes!

Uncaught (in promise) TypeError: Cannot read property 'target' of undefined
        php-unit-workspace.js? [sm]:190
        at php-unit-workspace.js? [sm]:139
        at Generator.next (<anonymous>)
        at step (/home/werk/.atom/packages/php-unit-integrator/lib/workspace/php-unit-workspace.js:9)
        at <anonymous>

This one appeared whilst running tests in the current class by pressing ctrl-alt-c.

Uncaught TypeError: Cannot read property 'getProject' of undefined

This happens when I disable the Code Coverage toggle button again after having run the test suite with code coverage enabled.

At /home/me/.atom/packages/php-unit-integrator/lib/views/php-unit-coverage-view.js:70

TypeError: Cannot read property 'getProject' of undefined
    at PhpUnitCoverageView.update (/packages/php-unit-integrator/lib/views/php-unit-coverage-view.js:70:33)
    at /packages/php-unit-integrator/lib/views/php-unit-integrator-view.js:365:31
    at ViewRegistry.performDocumentUpdate (/usr/lib/atom/src/view-registry.js:238:7)

Don't move cursor when invoking "Run test method"

Another tale from the battlefield :-).

"Run test method" is a really useful command to quickly run only the test the cursor is in. Unfortunately, for some reason this command decides to move the cursor to the start of the method signature after having done that, which takes away focus from what you were doing.

To make matters worse, you can't run "Run test method" again when the method is on the signature, so a constant "Move cursor", "Run test method", "Move cursor" is required.

Icons of buttons in the dock don't show up

It seems the icons of the buttons in the dock don't show up for me. Perhaps this has something to do with the fact that they appear to be icon fonts. I'm using the nebula theme, but using a default Atom theme, such as One Dark, yields no improvement.

Screenshot of the behavior:

example

Perhaps you could replace the custom font or icon fonts with standard Atom icons. If you open the Atom styleguide (it is a default Atom package), there should be a list of available octicons that are available for use in packages.

Can run tests twice using shortcuts

I think I can run the tests twice whilst using the shortcuts. The console is then populated with an amalgamation of all of these runs.

Not really a problem, just thought I'd mention it :-).

TypeError: _this5[_symbols2.default.self].flexData[Symbol.iterator] is not a function

TypeError: _this5[_symbols2.default.self].flexData[Symbol.iterator] is not a function
    at previousFlex (/home/user/.atom/packages/php-unit-integrator/node_modules/colletch/components/etch-flex-container.js:335:58)
    at /home/user/.atom/packages/php-unit-integrator/node_modules/colletch/components/etch-flex-container.js:353:23
    at Array.map (native)
    at EtchFlexContainer.value (/home/user/.atom/packages/php-unit-integrator/node_modules/colletch/components/etch-flex-container.js:345:58)
    at ResizeObserver.<anonymous> (/home/user/.atom/packages/php-unit-integrator/node_modules/colletch/components/etch-flex-container.js:85:64)

Not exactly sure why or how this started happening, but all of a sudden I can't avoid getting this error anymore. Every start up generates multiple of them.

Toggling the console for some reason is duplicating the two toggle buttons Debug and Code Coverage as well, which is probably related.

Replace --colors=always with just --colors to support paratest

Before PHPUnit 5.x, the --colors option did not take a parameters. In PHPUnit 5.x and up, it can be set to always.

In short, this behavior isn't incorrect, but the reason I'm asking is because paratest complains about the additional value. If it is removed, phpunit can be interchanged with paratest and it just works.

In case you're interested, the PHPUnit behavior is in this file. You can change 5.0 to other versions in the URL and search for --colors, if you like.

Run test case broken

Selecting a test case within the tree and clicking 'run selected' is broken, AGAIN!

Idea - Only enable xdebug for code coverage or optionally

An idea I had today was to only enable the xdebug extension conditionally.

As you probably know, just enabling the xdebug extension in php.ini causes code to become considerably slower, likely due to additional tracing happening in the background. For larger test suites, such as for PHP Integrator, this is a massive pain. To give an example: the default suite takes around 15 seconds without XDebug and around 40 seconds with XDebug loaded on my machine. (This is without code coverage being generated, of course.)

Usually I just disable the XDebug extension in my php.ini unless I need it for code coverage, but this quickly becomes tedious when I need to re-enable it to have code coverage once every so often. Because some people may want to have it enabled all the time - for smaller suites, it matters little -, an option to toggle it may be interesting.

There are some related possibilities here:

  • Allow configuring additional command line arguments for PHP in the settings panel (currently you can only configure PHPUnit parameters and the PHP executable itself), which would allow one to add -dzend_extension=xdebug.so here if desired - but it does not solve the tediousness of toggling it on and off
  • Allow configuring the command line arguments used for PHP specifically when using code coverage, so one could add something like -dzend_extension=xdebug.so and keep it off in php.ini, which ensures it's only used for code coverage
  • Add a toggle switch - much like the code coverage switch - that toggles whether xdebug is enabled, which in the background just adds -dzend_extension=xdebug.so - which would, again, probably need to be configurable, as the library name and/or path can differ per platform - when enabled and which is automatically force enabled by toggling the code coverage switch

There may be a better way to present this to the user. Unfortunately, there is no easier way to toggle XDebug, i.e. xdebug_disable() does not have the same effect and it can be useful, such as for code coverage or just plain ol' debugging.

Font in tests tree is rather large

The font of the tests in the tests tree is rather large on my system. I think this is because of the font-size: 1.1em that is applied to the .php-unit-integrator .php-unit-report-view > .php-unit-report-tree .list-item selector.

font

The font of the code coverage pane is fine, though. Perhaps there is a specific reason for this?

Failed to activate

[Enter steps to reproduce:]

  1. Install Plugin
  2. Activate Plugin

Atom: 1.26.0 ia32
Electron: 1.7.11
OS: Microsoft Windows 10 Home
Thrown From: php-unit-integrator package 0.0.32

Stack Trace

Failed to activate the php-unit-integrator package

At (0 , _util.promisify) is not a function

TypeError: (0 , _util.promisify) is not a function
    at /packages/php-unit-integrator/lib/util/php-unit-utils.js:9:19)
    at /packages/php-unit-integrator/lib/util/php-unit-utils.js:388:2)
    at Module.get_Module._compile (~/AppData/Local/atom/app-1.26.0/resources/app/src/native-compile-cache.js:106:36)
    at Object.value [as .js] (~/AppData/Local/atom/app-1.26.0/resources/app/src/compile-cache.js:240:29)
    at Module.load (module.js:488:32)
    at tryModuleLoad (module.js:447:12)
    at Function.Module._load (module.js:439:3)
    at Module.require (/app.asar/static/index.js:47:45)
    at require (~/AppData/Local/atom/app-1.26.0/resources/app/src/native-compile-cache.js:66:33)
    at /packages/php-unit-integrator/lib/views/php-unit-integrator-view.js:14:35)
    at /packages/php-unit-integrator/lib/views/php-unit-integrator-view.js:27:43)
    at Module.get_Module._compile (~/AppData/Local/atom/app-1.26.0/resources/app/src/native-compile-cache.js:106:36)
    at Object.value [as .js] (~/AppData/Local/atom/app-1.26.0/resources/app/src/compile-cache.js:240:29)
    at Module.load (module.js:488:32)
    at tryModuleLoad (module.js:447:12)
    at Function.Module._load (module.js:439:3)
    at Module.require (/app.asar/static/index.js:47:45)
    at require (~/AppData/Local/atom/app-1.26.0/resources/app/src/native-compile-cache.js:66:33)
    at /packages/php-unit-integrator/lib/php-unit-integrator.js:6:68)
    at /packages/php-unit-integrator/lib/php-unit-integrator.js:14:39)
    at Module.get_Module._compile (~/AppData/Local/atom/app-1.26.0/resources/app/src/native-compile-cache.js:106:36)
    at Object.value [as .js] (~/AppData/Local/atom/app-1.26.0/resources/app/src/compile-cache.js:240:29)
    at Module.load (module.js:488:32)
    at tryModuleLoad (module.js:447:12)
    at Function.Module._load (module.js:439:3)
    at Module.require (/app.asar/static/index.js:47:45)
    at require (~/AppData/Local/atom/app-1.26.0/resources/app/src/native-compile-cache.js:66:33)
    at /packages/php-unit-integrator/lib/main.js:3:27)
    at /packages/php-unit-integrator/lib/main.js:7:3)
    at Module.get_Module._compile (~/AppData/Local/atom/app-1.26.0/resources/app/src/native-compile-cache.js:106:36)
    at Object.value [as .js] (~/AppData/Local/atom/app-1.26.0/resources/app/src/compile-cache.js:240:29)
    at Module.load (module.js:488:32)
    at tryModuleLoad (module.js:447:12)
    at Function.Module._load (module.js:439:3)
    at Module.require (/app.asar/static/index.js:47:45)
    at require (internal/module.js:20:19)
    at customRequire (~/AppData/Local/atom/app-1.26.0/resources/app/static/<embedded>:96:26)
    at Package.requireMainModule (~/AppData/Local/atom/app-1.26.0/resources/app/src/package.js:782:33)
    at Package.activateNow (~/AppData/Local/atom/app-1.26.0/resources/app/src/package.js:220:40)
    at measure (~/AppData/Local/atom/app-1.26.0/resources/app/src/package.js:206:33)
    at Package.measure (~/AppData/Local/atom/app-1.26.0/resources/app/src/package.js:88:25)
    at activationPromise.Promise (~/AppData/Local/atom/app-1.26.0/resources/app/src/package.js:200:20)
    at Promise (<anonymous>)
    at Package.activate (~/AppData/Local/atom/app-1.26.0/resources/app/src/package.js:198:38)
    at PackageManager.activatePackage (~/AppData/Local/atom/app-1.26.0/resources/app/src/package-manager.js:695:42)
    at ~/AppData/Local/atom/app-1.26.0/resources/app/node_modules/settings-view/lib/package-manager.js:491:35
    at exit (~/AppData/Local/atom/app-1.26.0/resources/app/node_modules/settings-view/lib/package-manager.js:128:22)
    at triggerExitCallback (~/AppData/Local/atom/app-1.26.0/resources/app/src/buffered-process.js:267:15)
    at ChildProcess.process.on (~/AppData/Local/atom/app-1.26.0/resources/app/src/buffered-process.js:297:15)
    at emitTwo (events.js:106:13)
    at ChildProcess.emit (events.js:194:7)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:215:12)

Commands

     -3:11.8.0 fuzzy-finder:toggle-file-finder (div.results-view.focusable-panel)
     -3:10 core:confirm (input.hidden-input)
     -3:08.1.0 intentions:highlight (input.hidden-input)
     -3:08.0 find-and-replace:show (input.hidden-input)
     -3:07.8.0 core:paste (input.hidden-input)
     -3:07.7.0 core:confirm (input.hidden-input)
     -3:01.4.0 intentions:highlight (input.hidden-input)
     -3:01.1.0 command-palette:toggle (input.hidden-input)
  2x -2:58.2.0 core:move-down (input.hidden-input)
     -2:54.7.0 core:confirm (input.hidden-input)
     -2:54.7.0 settings-view:install-packages-and-themes (input.hidden-input)
     -2:34.7.0 editor:consolidate-selections (input.hidden-input)
     -2:34.7.0 core:cancel (input.hidden-input)
     -1:16.6.0 core:confirm (input.hidden-input)
     -0:47.1.0 core:select-all (input.hidden-input)
  2x -0:46.1.0 core:confirm (input.hidden-input)

Non-Core Packages

aligner 1.2.4 
aligner-css 1.2.1 
aligner-javascript 1.3.0 
aligner-php 1.2.0 
aligner-scss 1.3.1 
atom-beautify 0.32.2 
atom-clock 0.1.16 
atom-ide-ui 0.11.0 
atom-shortcuts 0.0.2 
atom-typescript 12.3.8 
autocomplete-modules 2.0.0 
autocomplete-php 0.3.7 
autoprefixer 3.7.1 
blade-snippets 0.2.0 
busy-signal 1.4.3 
color-picker 2.3.0 
css-snippets 1.1.0 
docblockr 0.13.7 
editorconfig 2.2.2 
file-icons 2.1.18 
format-sql 0.3.0 
ftp-remote-edit 0.12.12 
highlight-bad-chars 1.0.7 
highlight-line 0.12.0 
highlight-selected 0.13.1 
html-id-class-snippets 1.4.1 
intentions 1.1.5 
language-blade 0.39.0 
language-sql-mysql 0.3.1 
language-vue 0.23.1 
language-vue-component 0.5.0 
larasnippets 0.44.0 
laravel 0.7.1 
linter 2.2.0 
linter-alex 4.0.0 
linter-jshint 3.1.6 
linter-php 1.5.1 
linter-phpcs 1.6.8 
linter-sass-lint 1.8.3 
linter-ui-default 1.7.1 
linter-write-good 0.9.0 
merge-conflicts 1.4.5 
minimap 4.29.8 
minimap-bookmarks 0.4.2 
minimap-git-diff 4.3.1 
minimap-highlight-selected 4.6.1 
minimap-pigments 0.2.2 
minimap-selection 4.5.0 
php-cs-fixer 4.1.1 
php-debug 0.2.6 
php-unit-integrator 0.0.32 
pigments 0.40.2 
pinned-tabs 2.0.5 
print-atom 0.1.1 
project-manager 3.3.5 
qolor 0.4.2 
scroll-sync 0.2.4 
tabs-to-spaces 1.0.4 
teletype 0.13.0 
tree-view-git-modified 0.7.3 
vue-autocomplete 0.1.1 
vue-format 0.4.0 
vue2-autocomplete 0.1.0-alpha.4 
vuejs2-snippets 1.1.0 

Aborting test fails

Clicking the abort button during the file gathering process fails to abort the file gathering or the following tests.

Enable separation of components into own tabs

It would be neat if the failed assertions could somehow be viewed via this package. PhpStorm, for example, allows showing tooltips (such as those provided by atom-ide-ui) with the failed assertions and PHPUnit failed assertion diffs in.

The PHPUnit raw console output is currently occupying a rather large portion of the dock. Whilst it is always useful to have handy for debugging, it could be hidden behind an additional button if its prime and most common use case, viewing failed assertions, could be replaced by a way to view them from the tests tree - be it via a tooltip, expando or something else.

Idea: show some small statistics in/above/around tests tree

It may be interesting to show some minor statistics in, above or around the tests tree, in particular the amount of tests run - perhaps also the amount of passed tests as opposed to the total -, the amount of assertions run and the total time it took to complete the last run.

All of these things are already printed by PHPUnit by default.

New testMethod written outside of class

Navigating to the test method, when it doesn't exist, prompts for its creation. The created method is written to the file after the class' closing brace.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.