package com.zte.ums.cnms.pm.datfileupload.ranomm.clean; import com.zte.ums.cnms.pm.datfileupload.ranomm.util.Utils; import lombok.extern.slf4j.Slf4j; import javax.inject.Inject; import java.util.HashMap; import java.util.Map; import java.util.List; import java.nio.file.Paths; @Slf4j public class FileCleanRunnable implements Runnable{ // @Inject // private FileCleanTask fileCleanTask; // @Inject // private CleanTaskPollService cleanTaskPollService; private FileCleanParaQueryService fileCleanParaQueryService=new FileCleanParaQueryService(); // private FileCleanTaskResponse fileCleanTaskResponse; private Map<String, Integer> cleanPathRetainMap=new HashMap<>(); private String dir; public FileCleanRunnable(String dir){ this.dir = dir; } @Override public void run() { //do cleaning // neIdDirs=fileCleanTask.getCleanDirs(); // log.info("prepared Clean Dir:"+dir); try { cleanDir(); } catch (Exception e) { log.error("File clean me dir: failed",e); } } private void cleanDir() { long startTimeMills = System.currentTimeMillis(); String tmpPath; log.info("fileCleanParaQueryService:"+fileCleanParaQueryService); Map<String, Integer> pmParas= fileCleanParaQueryService.getCleanParas(); cleanPathRetainMap.put(CleanUtil.FTP, pmParas.get(FileCleanParaQueryService.LOCAL_FTP)); cleanPathRetainMap.put(CleanUtil.BAK, pmParas.get(FileCleanParaQueryService.LOCAL_BAK)); cleanPathRetainMap.put(CleanUtil.PARSE_ERR, pmParas.get(FileCleanParaQueryService.LOCAL_PARSE_ERR)); log.info("File clean thread start, clean dir : {} ", dir); // for (String neIdDir : dir) { for (Map.Entry<String, Integer> entry : cleanPathRetainMap.entrySet()) { tmpPath = Paths.get(dir, entry.getKey()).toString(); log.info("tmpPath:"+tmpPath); Utils.deleleFilesOfDir(tmpPath, entry.getValue()); } // } log.info("File clean thread finish,dir size: {},cost: {} ms", dir, (System.currentTimeMillis() - startTimeMills)); } }写单元测试,框架为junit3

时间: 2024-02-15 18:06:19 浏览: 19
好的,以下是一个可能的JUnit3测试类的示例,用于测试上述代码中的FileCleanRunnable类: ``` import junit.framework.TestCase; public class FileCleanRunnableTest extends TestCase { private FileCleanRunnable fileCleanRunnable; private String dir = "C:/clean"; public void setUp() { fileCleanRunnable = new FileCleanRunnable(dir); } public void testCleanDir() { fileCleanRunnable.run(); // 在这里编写断言,验证代码的正确性 // ... } } ``` 在上面的示例代码中,我们首先创建了一个FileCleanRunnable类的实例fileCleanRunnable,并将需要清理的目录传递给它。然后在setUp方法中初始化该实例。 在testCleanDir方法中,我们调用了fileCleanRunnable的run方法,这样就可以执行清理逻辑。然后,在这个方法中,我们需要编写断言来验证代码的正确性。具体的断言逻辑取决于您的代码实现和测试需求。 希望这可以帮助您编写单元测试。
相关问题

Invalid bound statement (not found): com.zte.mapper.UserMapper.select

Invalid bound statement (not found)错误是由于mybatis-plus在调用mapper方法查询数据库时找不到对应的SQL语句导致的。解决这个问题的方法是通过配置正确的mapper文件路径。 在application.yml中,通过配置mybatis-plus的mapper-locations属性来指定mapper文件的路径。例如,将mapper文件放在com.zte.mapper.xml包下,可以使用以下配置: ```yaml mybatis-plus: mapper-locations: classpath:com/zte/mapper/xml/*.xml ``` 另外,还需要在Java的配置文件中创建与mapper接口包名相同的包,并将mapper映射文件放进去。注意将包名中的“/”替换为“.”。这样就能正确加载到mapper文件。

zte_ereader_3.09.210510_lite.zip

zte_ereader_3.09.210510_lite.zip是一个ZIP文件,由ZTE开发并提供的一款名为"eReader"的软件版本。这个软件是用于在ZTE设备上阅读电子书的应用程序。它提供了一个方便的界面,使用户可以访问和阅读各种类型的电子书,如小说、杂志、报纸等。 这个ZIP文件包含了安装和运行这个软件所需的所有文件。要安装这个软件,只需将ZIP文件解压缩,并将其中的文件复制到ZTE设备上。用户可以通过连接设备到计算机,将这些文件传输到设备上。然后,在设备上找到这些文件,并运行其中的安装程序。安装完成后,用户就可以在设备上打开这个eReader应用,并开始阅读他们喜欢的电子书了。 这个Lite版的eReader是一个精简版的应用程序,相比于完整版,它可能提供更小的文件大小和更简化的功能。这可以使它在资源有限的设备上更加高效地运行。然而,这也可能意味着一些高级功能或特定功能可能在Lite版中不可用。用户可以根据自己的需求和设备的性能选择安装完整版或Lite版。 总之,zte_ereader_3.09.210510_lite.zip是一个由ZTE提供的用于在其设备上阅读电子书的应用程序的压缩文件。用户只需解压缩并安装这个ZIP文件,就可以开始体验这个应用程序,并享受阅读电子书的乐趣了。

相关推荐

最新推荐

recommend-type

华为悦盒连接STB工具开启adb教程.pdf

使用华为STB管理工具可以方便地开启华为安卓设备的ADB功能,这是连接和开启ADB功能的图文教程。
recommend-type

OV5640自动对焦照相模组应用指南(MIPI接口)R2.13C-ZTE.pdf

OV5640自动对焦照相模组应用指南(MIPI接口)R2.13C-ZTE.pdf
recommend-type

VxWorks的调试手段.doc

1 TORNADO的调试工具 4 1.1 WINDSHELL 4 1.1.1 简介 4 ...1.6.2. 堆栈使用率/运行时间统计:zte 36 1.6.3. 进程最近打印内容观察:ztecall/ ztemsg 36 1.6.4. 进程最近打印的1K内容和打印时间:zteprint 37
recommend-type

ZTE中兴外包商培训理论考试试题

(06NCTCN211)ZXT10外包商培训理论考试试题,非常适合想做这一块技术的朋友
recommend-type

yolov5-face-landmarks-opencv

yolov5检测人脸和关键点,只依赖opencv库就可以运行,程序包含C++和Python两个版本的。 本套程序根据https://github.com/deepcam-cn/yolov5-face 里提供的训练模型.pt文件。转换成onnx文件, 然后使用opencv读取onnx文件做前向推理,onnx文件从百度云盘下载,下载 链接:https://pan.baidu.com/s/14qvEOB90CcVJwVC5jNcu3A 提取码:duwc 下载完成后,onnx文件存放目录里,C++版本的主程序是main_yolo.cpp,Python版本的主程序是main.py 。此外,还有一个main_export_onnx.py文件,它是读取pytorch训练模型.pt文件生成onnx文件的。 如果你想重新生成onnx文件,不能直接在该目录下运行的,你需要把文件拷贝到https://github.com/deepcam-cn/yolov5-face 的主目录里运行,就可以生成onnx文件。
recommend-type

zigbee-cluster-library-specification

最新的zigbee-cluster-library-specification说明文档。
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

实现实时数据湖架构:Kafka与Hive集成

![实现实时数据湖架构:Kafka与Hive集成](https://img-blog.csdnimg.cn/img_convert/10eb2e6972b3b6086286fc64c0b3ee41.jpeg) # 1. 实时数据湖架构概述** 实时数据湖是一种现代数据管理架构,它允许企业以低延迟的方式收集、存储和处理大量数据。与传统数据仓库不同,实时数据湖不依赖于预先定义的模式,而是采用灵活的架构,可以处理各种数据类型和格式。这种架构为企业提供了以下优势: - **实时洞察:**实时数据湖允许企业访问最新的数据,从而做出更明智的决策。 - **数据民主化:**实时数据湖使各种利益相关者都可
recommend-type

2. 通过python绘制y=e-xsin(2πx)图像

可以使用matplotlib库来绘制这个函数的图像。以下是一段示例代码: ```python import numpy as np import matplotlib.pyplot as plt def func(x): return np.exp(-x) * np.sin(2 * np.pi * x) x = np.linspace(0, 5, 500) y = func(x) plt.plot(x, y) plt.xlabel('x') plt.ylabel('y') plt.title('y = e^{-x} sin(2πx)') plt.show() ``` 运行这段
recommend-type

JSBSim Reference Manual

JSBSim参考手册,其中包含JSBSim简介,JSBSim配置文件xml的编写语法,编程手册以及一些应用实例等。其中有部分内容还没有写完,估计有生之年很难看到完整版了,但是内容还是很有参考价值的。