Skip to content

MonoDevelop Addin #8

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 16 commits into
base: master
Choose a base branch
from

Conversation

ermshiperete
Copy link

Review on Reviewable

This addin integrates AutoTest.NET in MonoDevelop. The status icon allows
to enable or disable watching for changes. When enabled AutoTest.NET
will watch for changes in the current solution directory and any sub-
directories, kick off a build when it finds a change and then run the
unit tests.

The buttons on the left allow filtering the build and test messages. The
button at the very left controls optimistic builds: when enabled only
the project which contains the changed file will be built, otherwise the
entire solution.

A double click on a build message places the cursor in the failing line
of the source file.

Selecting a failing test in the list of messages allows to run or debug
this single test.
- add addin-project.xml
- Change output path for release builds
The solution needs to be in a parent directory of all the projects
included in the solution in order for building on addins.monodevelop.com
to work.
This is necessary to build on addins.monodevelop.com
MonoDevelop 4.0.x doesn't have the GetDebugExecutionMode method,
therefore debugging tests with the addin is disabled for now.
@acken
Copy link
Member

acken commented Sep 30, 2013

This is fantastic! Have been wanting to get a MonoDevelop addin but have not had the time. This is hugely appreciated. I am drowning in work right now but will merge this in as soon as I get the chance!

@gregoryyoung
Copy link
Member

Nice! This looks very cool. Is there anything we need to understand to test this etc? Both Svein and I work on unix. Are there some basic instructions for getting it up and running to test with?

@ermshiperete
Copy link
Author

ermshiperete commented Oct 1, 2013

The addin should work with MonoDevelop 4.0 (not tested) and 4.1. You can install it through the MD Addin-Manager under Testing in the Beta channel.

When building from source: the Debug configuration is set to compile for MD 4.1 (4.1 adds a new method that allows to start a debugging session). The build output is copied directly to the correct location under ~/.local/... so that it'll show up as addin in MD. The AutoTest.MDAddin project is set up to run a new MD instance (which is expected to be under /opt/monodevelop. This is the case when installed from https://launchpad.net/~ermshiperete/+archive/monodevelop or https://launchpad.net/~ermshiperete/+archive/monodevelop-beta).

The Release configuration will compile for MD 4.0.

To get it to work you'll have to adjust the paths in the AutoTest.config file. It might help to know that I have MD 4.1 installed (from the mentioned ppa), together with mono-3 from that ppa. I have NUnit 2.6 in a custom path, basically just unzipped the NUnit zip file to a folder and added a wrapper script.

An explanation of the features can be found on the addin project page (http://addins.monodevelop.com/Project/Index/96), or in the commit message of 5066e08.

It would be nice if a test could be debugged through a context menu instead of going through the main menu, but I couldn't find a way to get the context menu to show up :-( Maybe I'll eventually find the problem :-)

@acken
Copy link
Member

acken commented Oct 1, 2013

Great stuff. The only thing I see that we probably have to deal with is Cecil. We use a custom version of cecil to get around some memory usage issues. Do you know if the changes are present in last version of cecil Greg?

@gregoryyoung
Copy link
Member

I'm not sure all are. We can deal with that though by embedding the version
we use.

On Tuesday, October 1, 2013, Svein Arne Ackenhausen wrote:

Great stuff. The only thing I see that we probably have to deal with is
Cecil. We use a custom version of cecil to get around some memory usage
issues. Do you know if the changes are present in last version of cecil
Greg?


Reply to this email directly or view it on GitHubhttps://github.com//pull/8#issuecomment-25492191
.

Le doute n'est pas une condition agréable, mais la certitude est absurde.

@acken
Copy link
Member

acken commented Oct 9, 2013

I have been playing with the pull request and think I'll have a "hot swap"
solution for cecil. Will make separate deploy scripts for monodevelop
addin, vs addin and standalone client as the dependency hierarchy starts to
get a bit nasty now. Will get this in as soon as I get the time. Sorry for
the delays. Workload has been a bit crazy for the last year or so. As soon
as I get head above water I'll get to it :) The pull request is really
appreciated!

On Wed, Oct 2, 2013 at 3:28 AM, Greg Young [email protected] wrote:

I'm not sure all are. We can deal with that though by embedding the
version
we use.

On Tuesday, October 1, 2013, Svein Arne Ackenhausen wrote:

Great stuff. The only thing I see that we probably have to deal with is
Cecil. We use a custom version of cecil to get around some memory usage
issues. Do you know if the changes are present in last version of cecil
Greg?


Reply to this email directly or view it on GitHub<
https://github.com/continuoustests/AutoTest.Net/pull/8#issuecomment-25492191>

.

Le doute n'est pas une condition agréable, mais la certitude est absurde.


Reply to this email directly or view it on GitHubhttps://github.com//pull/8#issuecomment-25507438
.

Best regards
Svein Arne Ackenhausen

Blog - http://ackenpacken.blogspot.com/
Twitter - http://twitter.com/ackenpacken

It is now possible to create a solution specific configuration file
through the menu item. Previously you could only edit an existing
config file.
This reverts commit a4fbd7d.
Since the current MD version is now 5.0 we don't need this
anymore.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants