! Copyright (C) 2009 Joe Groff.
! See http://factorcode.org/license.txt for BSD license.
-USING: multiline gpu.shaders gpu.shaders.private tools.test ;
+USING: gpu.shaders gpu.shaders.private io.pathnames tools.test ;
IN: gpu.shaders.tests
{ "ERROR: foo.factor:20: Bad command or filename
"ERROR: 0:1: Bad command or filename
INFO: 0:11: The operation completed successfully
NOT:A:LOG:LINE" replace-log-line-numbers ] unit-test
+
+SYMBOL: a-test-symbol
+
+{ "shaders" } [
+ a-test-symbol word-directory file-name
+] unit-test
: link-program ( program -- program-instance )
dup shaders>> [ <shader-instance> ] map (link-program) ;
+: word-directory ( word -- directory )
+ where first parent-directory ;
+
: in-word's-path ( word kind filename -- word kind filename' )
- [ over ] dip [ where first parent-directory ] dip append-path ;
+ pick word-directory prepend-path ;
: become-shader-instance ( shader-instance new-shader-instance -- )
handle>> [ swap delete-gl-shader ] curry change-handle drop ;