65 lines
1.9 KiB
C#
65 lines
1.9 KiB
C#
using ICSharpCode.SharpZipLib.Zip;
|
|
|
|
namespace YLErp.Modules.ClientModule
|
|
{
|
|
[TestClass]
|
|
public class TestClientInfoQueryService
|
|
{
|
|
[TestMethod]
|
|
public void TestGetZipFileOfClientFiles()
|
|
{
|
|
OtcAppContext.Initialize(s =>
|
|
{
|
|
var s2 = s.Trim('/').Replace("/", "\\");
|
|
return @"d:\\" + s2;
|
|
});
|
|
|
|
var req = new ClientInfoQueryModel
|
|
{
|
|
ClientNumber = "ZQZ0094"
|
|
};
|
|
|
|
var buf1 = new ClientInfoQueryService(OptUserInfo.SystemUser).GetZipFileOfClientFiles(req);
|
|
|
|
File.WriteAllBytes(@"D:\temp\unittest\clientfile1.zip", buf1);
|
|
|
|
using (var mstream = File.Open(@"D:\temp\unittest\clientfile1.zip", FileMode.Open))
|
|
using (var s = new ZipInputStream(mstream))
|
|
{
|
|
ZipEntry theEntry;
|
|
|
|
var count = 0;
|
|
|
|
while ((theEntry = s.GetNextEntry()) != null)
|
|
{
|
|
count++;
|
|
var fileName = Path.GetFileName(theEntry.Name);
|
|
|
|
if (fileName == string.Empty)
|
|
{
|
|
continue;
|
|
}
|
|
|
|
using var streamWriter = File.Create(@"D:\temp\unittest\" + theEntry.Name);
|
|
var size = 2048;
|
|
var data = new byte[2048];
|
|
while (true)
|
|
{
|
|
size = s.Read(data, 0, data.Length);
|
|
if (size > 0)
|
|
{
|
|
streamWriter.Write(data, 0, size);
|
|
}
|
|
else
|
|
{
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
Assert.AreEqual("", "");
|
|
}
|
|
}
|
|
}
|