Bisher wurde beim Codieren mit vim der gleiche Vorgang ausgeführt, indem "** Code schreiben, → Komponententest ausführen **" wiederholt wurde. Der Komponententest wird jedoch ausgeführt, sobald die Datei gespeichert wird. Ich habe es möglich gemacht.
Speichern Sie es, indem Sie es in einem anderen Bereich anzeigen, z. B. in einem anderen tmux, wie im obigen Screenshot gezeigt. Sie können das Ausführungsergebnis des Komponententests in dem Moment sehen, in dem Sie dies tun.
qiita.rb
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import sys
import datetime
import time
import os
from stat import *
import commands
import fnmatch
def watch(dir, command, extension):
timestamp = time.mktime(datetime.datetime.now().utctimetuple())
while True:
for root, dirnames, filenames in os.walk(dir):
for filename in fnmatch.filter(filenames, '*' + extension):
file = os.path.join(root, filename)
file_timestamp = os.stat(file)[ST_MTIME]
if timestamp < file_timestamp:
timestamp = file_timestamp
print "Executing..."
print(commands.getoutput(command))
break
#Warten Sie 100 Millisekunden
time.sleep(0.1)
def help():
print(u'Das erste Argument ist das zu überwachende Verzeichnis.')
print(u'Das zweite Argument ist ein Befehl, der ausgeführt werden soll, wenn sich die überwachte Datei ändert.')
print(u'Das dritte Argument ist die Erweiterung')
print(u'Beispiel: % dirwatch . \'phpunit\' \'php\'')
print(u'Im Beispiel wird Hallo angezeigt, wenn sich die Datei im aktuellen Verzeichnis ändert.')
if __name__ == '__main__':
#Zeigen Sie die Hilfe an, wenn nicht genügend Argumente vorhanden sind.
if 4 > len(sys.argv):
help()
else:
watch(sys.argv[1], sys.argv[2], sys.argv[3])
% wget https://gist.github.com/matsubo/4992894/raw/36c0c4a08953effabfa2731ccd5186f2d6c92347/dirwatch.py
% chmod 755 dirwatch.py
% ./dirwatch.py [Zielverzeichnis für die Dateiüberwachung] [Befehl zum Ausführen, wenn die Datei geändert wird] [Überwachte Dateierweiterung]
% ./dirwatch.py /path/to/sourcecode/ phpunit php
% ./dirwatch.py /path/to/sourcecode/ "phpunit Tests/UserRegistrationTest.php" php
Wie unten gezeigt, wird der Komponententest ausgeführt, sobald die Datei gespeichert wird. Es ist sehr gut, zuerst mit Test zu entwickeln, das Fenster mit Bildschirm oder tmux zu teilen und es die ganze Zeit anzuzeigen.
Recommended Posts