Skip to content

Go mono!#89

Merged
tathamoddie merged 12 commits intoTestableIO:masterfrom
ilkerde:go-mono
Sep 21, 2014
Merged

Go mono!#89
tathamoddie merged 12 commits intoTestableIO:masterfrom
ilkerde:go-mono

Conversation

@ilkerde
Copy link
Copy Markdown
Contributor

@ilkerde ilkerde commented Sep 20, 2014

This pull request essentially enables System.IO.Abstractions to be used on Mono. In particular, it fixes #82 as well.

The trick which got me into fixing it actually is to remove the recursive access for MockFileSystem.Directory (see 3e17340). The rest was to fix all backwhacked tests to run as well on slashdotted systems. I followed a lazy strategy by introducing a MockUnixSupport helper. I aliased it in tests with XFS for the sake of brevity.

All tests pass both on Mono and Windows.

I tested on Win7 w/ Net4 and Linux 3.16.3-1 w/ Mono3.4.

@nosami @tathamoddie It was sort of a stretch to get this running on Mono as well, but I suppose it's worth the effort. Feedback and comments welcome.

@tathamoddie
Copy link
Copy Markdown
Contributor

Howdy. Had an issue with the build on first pass, due to package restore not being run, because of the nuget.targets reference being removed. I've now updated the build process to include the restore step, without requiring the MSBuild customization, as that's the more modern way to work anyway. We're all green now, so happy to merge this in. Thanks for the contribution.

tathamoddie added a commit that referenced this pull request Sep 21, 2014
@tathamoddie tathamoddie merged commit 85e2996 into TestableIO:master Sep 21, 2014
@tathamoddie
Copy link
Copy Markdown
Contributor

@nosami
Copy link
Copy Markdown

nosami commented Sep 21, 2014

+1 I'm happy that this was merged in. Hopefully, I'll be able to use this now!

The nuget.targets thing is usually just case sensitivity issue. It should have been NuGet.targets but seems like that's been resolved now.

Want to set up a mono CI environment? Travis is free and is just a case of committing a travis.yml file into the root of your project - see here https://github.com/nosami/OmniSharpServer/blob/master/.travis.yml for an example.

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.

NullReferenceException when instantiating MockFileSystem in Mono/Mac

3 participants