pyinotify上用于运行命令(通常是测试)的包装器

gorun的Python项目详细描述


(c)彼得·本特松,mail@peterbe.com,2009-2012年 许可证:python

使用(py)inotify在文件更改时运行命令

厌倦了切换控制台,向上箭头,回车,切换控制台 你在写有测试的代码时所做的每一点改变? 使用gorun.py运行使您能够在编辑器中保存 测试将自动立即运行。

gorun.py不使用保持点击的慢速拉取过程 文件修改时间。相反,它使用inotify这是“一个linux内核 提供文件系统事件通知的子系统。

安装

这只适用于在 内核。(大多数现代内核都有)

pip install gorun

这将安装pyinotify

然后,创建一个设置文件,它只是一个python文件 定义一个名为DIRECTORIES的变量。下面是一个示例:

DIRECTORIES = (
   ('some/place/', './myframework test --dir some/place'),
   ('some/place/unitests.py',
    './myframework test --dir some/place --testclass Unittests'),
   ('/var/log/torrentsdownload.log',
    'growl downloads --logfile /var/log/torrentsdownload.log'),
)

例如,将该文件另存为gorun_settings.py,然后启动它 像这样:

$ gorun.py gorun_settings

配置

一旦你将gorun设置为监视一个目录,它将启动任何 在该目录中更改的文件。默认情况下,像autosave这样的东西 自动创建来自某些编辑器的文件(例如foo.py或 foo.py~)这些都被忽略了。如果有其他文件扩展名 希望Gorun忽略将此添加到您的设置文件:

IGNORE_EXTENSIONS = ('log',)

这将添加到已忽略的文件扩展名列表中,如 .pyc

同样,如果有某些目录不希望 请注意,您可以这样列出它们:

IGNORE_DIRECTORIES = ('xapian_index', '.autosavefiles')

免责声明

此代码尚未经过广泛测试,依赖于导入 python模块,所以不要让不可信的白痴摆弄您的开发人员 环境。

待办事项

在进行django开发时,我经常在 一次又一次直到我摆脱所有的错误。做这个的时候 我必须更改设置以便它只运行一个测试 我完成了,我回去设置它,以便它在相邻的时候运行所有测试 代码工作。

这是件麻烦事,总有一天我会设法解决的。如果你有 有什么建议请告诉我。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
Java类之间并发性不一致的HashMap   插件如何在JavaSwing中使用UIManager和Classloader从外部jar安装外观?   java JasperReports:找不到子报表   在项目中找不到java生成的Javadoc文件   java BigDecimal。multiply()和divide()方法返回十六进制数。为什么?   java统计出现次数并从字符串中删除重复项   调用运算符时发生java NullPointerException   Spring和Hibernate之间的java配置错误   JavaZK将用户重定向回上一页   Javasocket为传出连接指定特定的网络接口   如果拖动到某个区域外,java Make按钮操作将被取消   如何在Eclipse for selenium 3.141.59中添加Java文档链接   java从匹配条件的数组中获取所有索引   docker未连接到RemoteWebDriver的java Gitlab ci selenium测试   java重写run方法   utf 8如何使用java解码UTF8编码的字符串?   java如何从eclipse调试部署在tomcat上的web应用程序?   将字母字符与前面没有百分号的Java正则表达式匹配