Hi Patrick I know you are busy but could you do a write up on the NHForge site, probably in the wiki, outlinging how to set up VS to work with GitHub and how to generate tests and submit them, as you are describing here. That way this would not get lost and by doing it in the wiki refinements can easily be added.
If you want you can just send me what you would enter there and I will include it for you if that makes things easier. John Davidson On Tue, Sep 6, 2011 at 4:01 PM, Patrick Earl <[email protected]> wrote: > It does make sense to just archive up the test files. When applying, > we generally just copy the few files from the NH#### folder and paste > them into a folder in NHibernate.Test. If people want to submit the > test more directly, a pull request against the main repo would work. > As I mentioned in another message, there's now a Contributor Guide in > the NHibernate source that shows how to easily make such a test. > IMHO, it's not a significant difference in effort, and doesn't involve > redoing work if you suddenly get the itch to try fixing it. > > To summarize my viewpoint, here are the steps that differ for each: > > Separate Test: > 1. Download and unarchive or clone test repository. > 2. Edit hibernate.cfg.xml for your database. If it's not SQL server > this will involve more steps as the alternate configurations are not > at hand. You will also need to find whatever dlls are pertinent for > your database and either reference them or copy them to your output > folder. > 3. Make your test by editing the existing files. > 4. If you don't have a third party test runner like ReSharper, you'll > need to add code to run your test and determine the results. > 5. Archive the test. > 6. Attach the test as a zip file on the issue. > > NHibernate Core (following the Contributor Guide directions): > 1. Clone the main repository. > 2. Use the build menu to set up a configuration for your database. > Multiple alternative databases are supported out of the box, so you > can more easily attempt your test against different databases. The > recommended settings and assemblies for each database are already > present, so it's usually just a matter of editing the connection > string. Simple as A, B, C. ;) > 3. Copy and paste the NH0000 test. > 4. Make your test by editing the existing files. > 5. Run the test, even if you don't have a third party runner > installer, by starting the test project in the VS debugger. The > included NUnit GUI is started automatically. > 6. Commit. > 7. Submit a pull request. > 8. Link to the pull request from the issue. > > Steps 6-8 could be replaced with an archive of the test folder if > desired. It's just that in this scenario, the pull request can have > discussion and futher commits with almost no effort. > > So, in essence, if you're willing to wait longer for the download, the > nhibernate-core repo lets you configure and run your test more easily, > and allows for multiple commits to work out any kinks. Since it's in > context, you can also be sure that your test has not had side-effects > that broke other tests and you can immediately start debugging > NHibernate. > > I can imagine it being made even easier, for example, condensing the > build menu steps and copying of test into a single batch file for the > simple case. Doing this would condense steps 2 and 3, making it > basically the same basic steps as the separate test project. > > Maybe my head is in the clouds, but I like to think that we can have > our cake and eat it too if we're willing to put up with the longer > download for the core. I'm happy to hear people's thoughts around > this. Would love to make the contribution process very smooth. > > Patrick Earl >
