Я изучаю инструменты Google для закрытия, написав простую игру на JavaScript. У меня возникли проблемы с выяснением того, как настроить jsTestDriver, чтобы он хорошо работал с библиотекой закрытия.
В частности: я хотел бы использовать механизм goog.require для включения любых дополнительных файлов JavaScript, а не вручную добавлять их все в файл конфигурации.
Следуя предложению Мейерти, я сделал простой скрипт для автоматической записи зависимостей в конфигурационный файл.
#!/bin/bash
cp tests/jsTestDriver.conf.proto tests/jsTestDriver.conf
libs/closure-library/closure/bin/build/closurebuilder.py --root="./libs/closure-library" --root="./js" --namespace="lds" | sed "s#^# - \.\./#" >> tests/jsTestDriver.conf
Файлtests/jsTestDriver.conf.proto представляет собой простой шаблон:
test:
- "*.js"
load:
- ../libs/knockout-2.1.0.js
# Crucial, the load key needs to be last, and this comment must be followed by a newline.
Это очень хрупкий скрипт, но, надеюсь, кто-нибудь (кроме меня) найдет это полезным.