2011-02-24 54 views
0

我正在編寫一個Powershell腳本,它將出現在客戶端的當前源代碼控制系統中,並對所有文件進行批量重命名,以便它們遵循新的命名約定。處理PSUnit中的文件

作爲我是一名勤奮的TDD開發人員,我開始將PSUnit測試用例組合在一起。起初,我想我會傳遞一個字符串給我的函數作爲文件名(以及其他一些相關參數),然後返回一個字符串。然後,我想我需要將文件名拆分爲擴展名和基本名稱。由於System.IO.FileInfo已經有了這個功能,我想爲什麼不傳遞一個文件對象而不是一個字符串?

但是,如果我這樣做,那麼我不明白如何在不依賴外部資源的情況下編寫我的PSUnit測試(在這種情況下,文件必須存在以獲取FileInfo對象 - 或者它?)。

有沒有一種「乾淨」的方式來處理這個問題?其他人如何處理這些問題?

感謝您的任何幫助或建議!

+0

darn it;)我在'setview'部分回答了你的ClearCase問題。你究竟發現了什麼? – VonC 2011-02-28 20:20:02

+0

我發現我是一個白癡,在一個地方改變了一個變量名,但沒有改變。 ;)setview的東西,我仍然沒有找到一個解決方案,雖然。這只是解決了無法更改文件名的問題。 – 2011-02-28 20:39:50

+0

但setview只是一種在Unix上擁有動態視圖快捷方式的方法。在Windows上,您可以使用簡單(非ClearCase)Windows命令「subst」將文件夾映射到驅動器盤符(http://www.howtogeek.com/howto/windows-vista/map-a-drive -letter-to-a-folder-the-easy-in-windows /) – VonC 2011-03-01 10:04:40

回答

1

我的建議是:務實,將基名和擴展名作爲兩個單獨的字符串傳遞。爲了方便起見,您可以提供接受FileInfo的超載。

+0

一個很好的建議,謝謝! – 2011-02-25 15:17:21