47 lines
1.1 KiB
Factor
47 lines
1.1 KiB
Factor
! Copyright (C) 2015 Doug Coleman.
|
|
! See http://factorcode.org/license.txt for BSD license.
|
|
USING: accessors fry git io io.directories io.encodings.utf8
|
|
io.launcher io.streams.string kernel sequences tools.test ;
|
|
IN: git.tests
|
|
|
|
: run-process-stdout ( process -- string )
|
|
>process utf8 [ contents ] with-process-reader ;
|
|
|
|
: with-empty-test-git-repo ( quot -- )
|
|
'[
|
|
{ "git" "init" } run-process drop
|
|
@
|
|
] with-test-directory ; inline
|
|
|
|
: with-zero-byte-file-repo ( quot -- )
|
|
'[
|
|
"empty-file" touch-file
|
|
{ "git" "add" "empty-file" } run-process drop
|
|
{ "git" "commit" "-m" "initial commit of empty file" } run-process drop
|
|
@
|
|
] with-empty-test-git-repo ; inline
|
|
|
|
{ "hello" } [
|
|
commit new "author" "hello\r\n"
|
|
[ parse-commit-field ] with-string-reader
|
|
author>>
|
|
] unit-test
|
|
|
|
{ "refs/heads/master" } [
|
|
[ git-head-ref ] with-empty-test-git-repo
|
|
] unit-test
|
|
|
|
|
|
{ } [
|
|
[
|
|
! "." t recursive-directory-files
|
|
git-log [ commit. ] each
|
|
] with-zero-byte-file-repo
|
|
] unit-test
|
|
|
|
{ } [
|
|
[
|
|
{ "git" "log" } run-process-stdout print
|
|
] with-zero-byte-file-repo
|
|
] unit-test
|