Skip to content
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

Support .NET Core #348

Merged
merged 57 commits into from
Sep 2, 2017
Merged

Support .NET Core #348

merged 57 commits into from
Sep 2, 2017

Conversation

ErikSchierboom
Copy link
Member

@ErikSchierboom ErikSchierboom commented Aug 29, 2017

This PR fixes several issues:

  • Create a project for each exercise. This makes getting started a lot simpler. (Create project for each exercise #309)
  • All the exercises now have a default, stub file. This also makes getting started easier. All the easy (difficulty 1-3) exercises have stub methods with fully specified types, also to help people get started. The medium (difficulty 4-7) exercises have stub methods without types (type-inference) and the hard exercises (difficulty 8-10) only have an empty stub module. (Use default file #229)
  • Allow exercises to run on .NET Core. This is great for our cross-platform support. Users on Mac or Unix should now have the same options (and command-line interface) as Windows users. (Allow exercises to build and run on .NET Core #308)
  • FsUnit is used to make the tests appear more functional. (Using FsUnit for more expressive tests #203)

What is left to do is:

Note: it is still a work-in-progress, but if you'd be willing to take a look, that would be great!

CC: @jpreese Would you also mind taking a look?

This fixes #203, #229, #251, #277, #297, #308, #309

@ErikSchierboom ErikSchierboom changed the title [WIP] Support .NET Core Support .NET Core Sep 2, 2017
@ErikSchierboom
Copy link
Member Author

@robkeim The PR has been updated and I think it is now correctly working. Could you perhaps review the PR again? If you deem it correct, feel free to merge.

Copy link
Contributor

@robkeim robkeim left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Awesome work @ErikSchierboom!!

docs/TESTS.md Outdated

Install [NUnit](http://nunit.org/index.php?p=download) via NuGet package manager with the NUnit.Console package. This will add the reference to the project.
Solving an exercise means making all its tests pass. By default, only one test (the first one) is executed when you run the tests. This is intentional, as it allows you to focus on just making that one test pass. Once it passes, you can enable the next test by removing `Skip = "Remove to run test"` from the test's `[<Fact>]` or `[<Theory?]` attribute. When all tests have been enabled and your implementation makes them all pass, you'll have solved the exercise!
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Minor typo: [<Theory>]

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed!

open Acronym

[<Test>]
let ``Empty string abbreviated to empty string`` () =
Assert.That(acronym "", Is.EqualTo(""))
acronym "" |> should equal ""
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@ErikSchierboom did you decide not to update this to EmptyString for some reason?

Update small typo
@ErikSchierboom
Copy link
Member Author

@robkeim I forgot about the EmptyString. Perhaps I can fix it later in a new commit?

@robkeim
Copy link
Contributor

robkeim commented Sep 2, 2017

@ErikSchierboom yes I figured you could do it in another PR. Once the fix of my typo is green I'll go ahead and merge this branch.

@robkeim
Copy link
Contributor

robkeim commented Sep 2, 2017

Thanks for your hard work on this @ErikSchierboom! Great job 🎉 🎉 🎉

@robkeim robkeim merged commit 613db78 into exercism:master Sep 2, 2017
@ErikSchierboom
Copy link
Member Author

Hurray!

@ErikSchierboom ErikSchierboom deleted the dotnet-core branch September 3, 2017 06:44
@ErikSchierboom
Copy link
Member Author

image

@Mousaka @kytrinyx The F# track has now been updated to support .NET Core, which is its biggest overhaul yet!

@kytrinyx
Copy link
Member

kytrinyx commented Sep 3, 2017

@ErikSchierboom Fantastic. Thanks so much for taking the time to do this overhaul... this is huge.

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.

Using FsUnit for more expressive tests
4 participants