这个单元测试应该通过,但我不明白为什么没有通过。该代码在我的主控制器中运行,所以我知道它确实有效。但我觉得它在我的单元测试中的评估有所不同。
我尝试过各种其他断言,但错误的布尔值除外。我不想进行错误的比较。
[TestMethod]
public void DownloadFileNames()
{
// Arrange
string ftpBase = "myfiles.com/public/doc";
string fileName = "10408c";
Search model = new Search();
model.FileName = fileName;
//A string to hold the base FTP address:
Search searchResults = new Search();
List<string> fnl = new List<string>();
var uriBuilder = new UriBuilder();
// Act
uriBuilder.Scheme = "ftp";
uriBuilder.Host = ftpBase;
FtpWebRequest reqFTP = (FtpWebRequest)FtpWebRequest.Create(uriBuilder.Uri);
reqFTP.Method = WebRequestMethods.Ftp.ListDirectory;
FtpWebResponse response = (FtpWebResponse)reqFTP.GetResponse();
Stream responseStream = response.GetResponseStream();
List<string> files = new List<string>();
StreamReader reader = new StreamReader(responseStream);
while (!reader.EndOfStream)
files.Add(reader.ReadLine());
reader.Close();
responseStream.Dispose();
//Loop through the resulting file names.
foreach (string folder in files)
{
if (folder.IndexOf(".") < 1)
{
var childDirectory = uriBuilder.Uri + folder + "/";
FtpWebRequest request = (FtpWebRequest)FtpWebRequest.Create(childDirectory);
request.Method = WebRequestMethods.Ftp.ListDirectory;
response = (FtpWebResponse)request.GetResponse();
responseStream = response.GetResponseStream();
reader = new StreamReader(responseStream);
string result = reader.ReadToEnd();
reader.Close();
我希望 fnl 和字符串匹配。但 Expected 给出了这个代码。
“预期的:。 ”
我怀疑我错过了一些东西,但由于我在单元测试方面仍然处于绿色状态,所以我不知道我错过了什么。
如果您没有什么建设性的意见,请转达任何意见。我一直在寻找我的问题的答案,但我发现的任何内容似乎都与我的问题无关,不足以提供任何帮助。
尚方宝剑之说
相关分类