USING: tools.test vocabs.refresh.monitor io.pathnames ;
IN: vocabs.refresh.monitor.tests
-{ "kernel" } [ "core/kernel/kernel.factor" path>vocab ] unit-test
-{ "kernel" } [ "core/kernel/" path>vocab ] unit-test
-{ "kernel" } [ "core/kernel/" resource-path path>vocab ] unit-test
+{ "kernel" } [ "core/kernel/kernel.factor" path>vocab-name ] unit-test
+{ "kernel" } [ "core/kernel/" path>vocab-name ] unit-test
+{ "kernel" } [ "core/kernel/" resource-path path>vocab-name ] unit-test
trim-tail-separators
convert-separators ;
-: path>vocab-name ( path -- vocab )
+: path>vocab-parent-dir ( path -- path' )
dup ".factor" tail? [ parent-directory ] when ;
: chop-vocab-root ( path -- path' )
[ head? ] with find nip
?head drop ;
-: path>vocab ( path -- vocab )
- chop-vocab-root path>vocab-name vocab-dir>vocab-name ;
+: path>vocab-name ( path -- vocab-name )
+ chop-vocab-root path>vocab-parent-dir vocab-dir>vocab-name ;
: monitor-loop ( monitor -- )
! On OS X, monitors give us the full path, so we chop it
[
next-change path>>
[
- path>vocab
+ path>vocab-name
[ changed-vocab ] [ reset-cache ] bi
] [
[