1 USING: math kernel sequences io.files io.pathnames
2 tools.crossref tools.crossref.private tools.test parser
3 namespaces source-files generic definitions words accessors
4 compiler.units classes ;
5 IN: tools.crossref.tests
7 GENERIC: predicate-test ( a -- b )
9 M: class predicate-test ;
11 M: generic predicate-test ;
13 { f } [ \ + irrelevant? ] unit-test
14 { t } [ \ predicate-test "engines" word-prop first irrelevant? ] unit-test
16 GENERIC: foo ( a b -- c )
20 "vocab:tools/crossref/test/foo.factor" run-file
22 { t } [ integer \ foo lookup-method \ + usage member? ] unit-test
23 { t } [ \ foo usage [ pathname? ] any? ] unit-test
26 GENERIC: generic-forget-test-1 ( a b -- c )
28 M: integer generic-forget-test-1 / ;
31 \ / usage [ word? ] filter
32 [ name>> "integer=>generic-forget-test-1" = ] any?
36 [ \ generic-forget-test-1 forget ] with-compilation-unit
40 \ / usage [ word? ] filter
41 [ name>> "integer=>generic-forget-test-1" = ] any?
44 GENERIC: generic-forget-test-2 ( a b -- c )
46 M: sequence generic-forget-test-2 = ;
49 \ = usage [ word? ] filter
50 [ name>> "sequence=>generic-forget-test-2" = ] any?
54 [ M\ sequence generic-forget-test-2 forget ] with-compilation-unit
58 \ = usage [ word? ] filter
59 [ name>> "sequence=>generic-forget-test-2" = ] any?