summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Joey Hess <joey@kitenet.net>2010-11-10 10:49:35 -0400
committerGravatar Joey Hess <joey@kitenet.net>2010-11-10 10:49:35 -0400
commit515d6b6c7d90e1ff44e791421066450cf4322b47 (patch)
treeeb2b5ae47c93c5d4cd3a928295ed7658b84bf4c4
parent536bc97d25479ac969273b49442c2fd8c31358c4 (diff)
Avoid using runghc to run test suite as it is not available on all architectures. Closes: #603006
-rw-r--r--CmdLine.hs5
-rw-r--r--Makefile11
-rw-r--r--debian/changelog2
-rw-r--r--doc/git-annex.mdwn4
-rw-r--r--test.hs3
5 files changed, 16 insertions, 9 deletions
diff --git a/CmdLine.hs b/CmdLine.hs
index adcf25e9a..1c73533df 100644
--- a/CmdLine.hs
+++ b/CmdLine.hs
@@ -32,6 +32,7 @@ import qualified Command.Init
import qualified Command.Fsck
import qualified Command.Unlock
import qualified Command.Lock
+import qualified Command.PreCommit
subCmds :: [SubCommand]
subCmds =
@@ -51,8 +52,8 @@ subCmds =
"initialize git-annex with repository description"
, SubCommand "unannex" path (withFilesInGit Command.Unannex.start)
"undo accidential add command"
- , SubCommand "pre-commit" path (withFilesToBeCommitted Command.Fix.start)
- "fix up symlinks before they are committed"
+ , SubCommand "pre-commit" path (withFilesToBeCommitted Command.PreCommit.start)
+ "run by git pre-commit hook"
, SubCommand "fromkey" key (withFilesMissing Command.FromKey.start)
"adds a file using a specific key"
, SubCommand "dropkey" key (withKeys Command.DropKey.start)
diff --git a/Makefile b/Makefile
index eb74bb727..ee4d50f9f 100644
--- a/Makefile
+++ b/Makefile
@@ -1,8 +1,10 @@
all: git-annex docs
+ghcmake=ghc -Wall -odir build -hidir build --make
+
git-annex:
mkdir -p build
- ghc -Wall -odir build -hidir build --make git-annex
+ $(ghcmake) git-annex
install:
install -d $(DESTDIR)/usr/bin
@@ -17,7 +19,8 @@ IKIWIKI=ikiwiki
endif
test:
- runghc test.hs
+ $(ghcmake) test
+ ./test
docs:
./mdwn2man git-annex 1 doc/git-annex.mdwn > git-annex.1
@@ -27,7 +30,7 @@ docs:
--disable-plugin=smiley
clean:
- rm -rf build git-annex git-annex.1
+ rm -rf build git-annex git-annex.1 test
rm -rf doc/.ikiwiki html
-.PHONY: git-annex
+.PHONY: git-annex test
diff --git a/debian/changelog b/debian/changelog
index 9fd96de95..97939af66 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -14,6 +14,8 @@ git-annex (0.04) UNRELEASED; urgency=low
* Annexed file contents are now made unwritable and put in unwriteable
directories, to avoid them accidentially being removed or modified.
(Thanks Josh Triplett for the idea.)
+ * Avoid using runghc to run test suite as it is not available on all
+ architectures. Closes: #603006
-- Joey Hess <joeyh@debian.org> Mon, 08 Nov 2010 12:36:39 -0400
diff --git a/doc/git-annex.mdwn b/doc/git-annex.mdwn
index 61f0f8fca..d3cf594aa 100644
--- a/doc/git-annex.mdwn
+++ b/doc/git-annex.mdwn
@@ -101,7 +101,6 @@ Many git-annex subcommands will stage changes for later `git commit` by you.
Initializes git-annex with a description of the git repository,
and sets up `.gitattributes` and the pre-commit hook.
- This is an optional, but recommended step.
* lock [path ...]
@@ -123,7 +122,8 @@ Many git-annex subcommands will stage changes for later `git commit` by you.
* pre-commit [path ...]
Fixes up symlinks that are staged as part of a commit, to ensure they
- point to annexed content. Also handles committing checked-out files.
+ point to annexed content. Also handles injecting changes to unlocked
+ files into the annex.
This is meant to be called from git's pre-commit hook. `git annex init`
automatically creates a pre-commit hook using this.
diff --git a/test.hs b/test.hs
index 288532d7b..2faf579a2 100644
--- a/test.hs
+++ b/test.hs
@@ -1,15 +1,16 @@
-- TODO find a test harness that is actually in Debian and use it.
-import Test.QuickCheck
import Test.HUnit
import Test.HUnit.Tools
import GitRepo
import Locations
+alltests :: [Test]
alltests = [
qctest "prop_idempotent_deencode" prop_idempotent_deencode,
qctest "prop_idempotent_fileKey" prop_idempotent_fileKey
]
+main :: IO (Counts, Int)
main = runVerboseTests (TestList alltests)