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

Fixups for PR #125 #146

Merged
merged 24 commits into from
Oct 24, 2014
Merged

Conversation

pjf
Copy link
Member

@pjf pjf commented Oct 24, 2014

After merging these, we can merge old_125_branch into master. :)

See #125 for references. :)

pjf and others added 24 commits October 23, 2014 15:25
In particular we have a kraken when something doesn't appear to be a KSP
directory, and the cmdline client tests for it in particular.
Fix verson detection and validation of KSP gamedir
- CKANTests and NetKAN are root notes.
- Test classes are named after the code they exercise.
- Directory structure changed to reflect this.
- Test data now in `TestData.cs` for ease of re-use.

For KSP-CKAN#90
Flipped IsKspDir() to internal so we can test it.

Three new data directories:

- `KSP/KSP-0.25` - A "good" install of KSP 0.25
- `KSP/bad-ksp` - A directory with no version info
- `KSP/missing-gamedata` - A 0.25 install with no GameData dir.

For KSP-CKAN#90
Git doesn't really grok empty directories.

For KSP-CKAN#90.
NB: KSP.DetectVersion changed to *static*, as it uses no object data,
and this is how it's used in master.

* 90_test_ksp:
  Populated GameData in test dir to make git happy.
  Added tests for IsKspDir() and test data.
  Test framework organisation overhaul.
  Fix verson detection and validation of KSP gamedir

Conflicts:
	CKAN/CKAN/KSP.cs
	CKAN/Tests/Test.cs
- Split management of multiple instances into KSPManager
- No need to manually save or load from registry.
- Added GetPreferredInstance() as the best way to find the user's
  preferred instance, if a single preferred instance exists.
- Added PortableDir() to install portable installs.
- Decoupled transactional file transactions from KSP class.
- KSPPathConstants in their own file
- KSPPathUtils in its own file.
- Some tests, but not enough, darn it!

For KSP-CKAN#125
I'm really not so sure about this change. It means we no longer have
problems where we try to access the registry before we have a
current install, but it is a monumental pain in the ass.

Luckily, this commit should also be easily reversable.
Holy smokes this works again. I have dreamed of this moment.
- `FromJson()`
- `ToJson()`
- `FromFile()`
- `ToFile()`
@pjf
Copy link
Member Author

pjf commented Oct 24, 2014

Assigning to @AlexanderDzhoganov , as this is a PR against his work. :)

AlexanderDzhoganov added a commit that referenced this pull request Oct 24, 2014
@AlexanderDzhoganov AlexanderDzhoganov merged commit e62cc9f into KSP-CKAN:old_125_branch Oct 24, 2014
@pjf pjf deleted the 125_fixups branch October 25, 2014 02:06
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.

None yet

4 participants