60 lines
1.4 KiB
Factor
60 lines
1.4 KiB
Factor
USING: math kernel sequences io.files io.pathnames
|
|
tools.crossref tools.crossref.private tools.test parser
|
|
namespaces source-files generic definitions words accessors
|
|
compiler.units classes ;
|
|
IN: tools.crossref.tests
|
|
|
|
GENERIC: predicate-test ( a -- b )
|
|
|
|
M: class predicate-test ;
|
|
|
|
M: generic predicate-test ;
|
|
|
|
[ f ] [ \ + irrelevant? ] unit-test
|
|
[ t ] [ \ predicate-test "engines" word-prop first irrelevant? ] unit-test
|
|
|
|
GENERIC: foo ( a b -- c )
|
|
|
|
M: integer foo + ;
|
|
|
|
"vocab:tools/crossref/test/foo.factor" run-file
|
|
|
|
[ t ] [ integer \ foo lookup-method \ + usage member? ] unit-test
|
|
[ t ] [ \ foo usage [ pathname? ] any? ] unit-test
|
|
|
|
! Issues with forget
|
|
GENERIC: generic-forget-test-1 ( a b -- c )
|
|
|
|
M: integer generic-forget-test-1 / ;
|
|
|
|
[ t ] [
|
|
\ / usage [ word? ] filter
|
|
[ name>> "integer=>generic-forget-test-1" = ] any?
|
|
] unit-test
|
|
|
|
[ ] [
|
|
[ \ generic-forget-test-1 forget ] with-compilation-unit
|
|
] unit-test
|
|
|
|
[ f ] [
|
|
\ / usage [ word? ] filter
|
|
[ name>> "integer=>generic-forget-test-1" = ] any?
|
|
] unit-test
|
|
|
|
GENERIC: generic-forget-test-2 ( a b -- c )
|
|
|
|
M: sequence generic-forget-test-2 = ;
|
|
|
|
[ t ] [
|
|
\ = usage [ word? ] filter
|
|
[ name>> "sequence=>generic-forget-test-2" = ] any?
|
|
] unit-test
|
|
|
|
[ ] [
|
|
[ M\ sequence generic-forget-test-2 forget ] with-compilation-unit
|
|
] unit-test
|
|
|
|
[ f ] [
|
|
\ = usage [ word? ] filter
|
|
[ name>> "sequence=>generic-forget-test-2" = ] any?
|
|
] unit-test |