Starting a major refactor of the client code. #184

Merged
merged 7 commits into from Apr 12, 2012

3 participants

@nrn
Collaborator
nrn commented Apr 8, 2012

This is the start of modularizing the client code, and adding unit tests. We are using a node based build process, using browserify, and adding tests with mocha. client.coffee is getting split into files in lib, and files with the same name in test are being used to unit test them.

The commands to work with this are currently in notes.md.

Thanks to @WardCunningham for pairing on this.

@nrn
Collaborator

I'm continuing to work on this branch, slowly moving parts out of legacy and adding some tests. The test setup we have seems to be working very well, using Mocha to run the tests, Expect to assert things, and I just added Sinon for spys, stubs, and mochs.

@WardCunningham

I've untwisted much of the client code (now in legacy.coffee) and fixed a few bugs too.

made refresh small enough to understand
pass item forward to buildPage through the dom
collected like methods together, improving comments
fixed bug that led to out of order fetch resolution

@WardCunningham

I've moved the code to a branch named modules. I've messed up my models branch and can't push it.

@nrn
Collaborator

Doh. I'm off to jury duty today :/ But if there is anything I can do to help tomorrow or thursday let me know.

@GerryG

Too bad they hold you in-communicado when in the courthouse. Can you use a portable computer? I think Ethan is coding today while traveling to Portland. Git works great disconnected :)

@nrn
Collaborator

I actually could have, I didn't know ahead of time, but they had wifi, tables, and power. I took the time to catch up on some reading though.

Ward, do you want me to take a stab at merging models and modules, or wait till we have a moment to work together on this?

@WardCunningham
@nrn
Collaborator

No worries Ward, this reorganization stuff does not play well with git.

I'm having problems figuring out how to test some stuff (like the history/location code), but most things I feel like I'm getting meaningful tests in on. Getting jQuery on the test page how we really want it is part of what we are wedged up on :)

Very nice!

@nrn nrn Merge remote-tracking branch 'wc/modules' into models
Conflicts:
	client/client.js
	client/lib/legacy.coffee
	client/lib/util.coffee
	client/test/testclient.js
	client/test/util.coffee
	client/testclient.coffee
2081903
@nrn
Collaborator

Big merge resolved! Everything is looking good so far, but this needs some shaking out for sure. One test fails because we haven't gotten the main wiki api free yet, and I figured it was better to leave it broken instead of faking it.

nrn added some commits Apr 12, 2012
@nrn nrn Merge pull request #1 from WardCunningham/4a6e239fcf5a900fe8a9f1d4163…
…ce18a229c99f0

improve reporting of recent changes
63e596c
@nrn nrn Merge pull request #2 from WardCunningham/modules
speeding up the talking builder
9ff202b
@WardCunningham WardCunningham merged commit 9ff202b into WardCunningham:master Apr 12, 2012
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment