zhukai
5 years ago
committed by
qiaozhanwei
2 changed files with 110 additions and 0 deletions
@ -0,0 +1,109 @@ |
|||||||
|
/* |
||||||
|
* Licensed to the Apache Software Foundation (ASF) under one or more |
||||||
|
* contributor license agreements. See the NOTICE file distributed with |
||||||
|
* this work for additional information regarding copyright ownership. |
||||||
|
* The ASF licenses this file to You under the Apache License, Version 2.0 |
||||||
|
* (the "License"); you may not use this file except in compliance with |
||||||
|
* the License. You may obtain a copy of the License at |
||||||
|
* |
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
* |
||||||
|
* Unless required by applicable law or agreed to in writing, software |
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS, |
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||||
|
* See the License for the specific language governing permissions and |
||||||
|
* limitations under the License. |
||||||
|
*/ |
||||||
|
|
||||||
|
package org.apache.dolphinscheduler.api.utils; |
||||||
|
|
||||||
|
import org.junit.After; |
||||||
|
import org.junit.Before; |
||||||
|
import org.junit.Rule; |
||||||
|
import org.junit.Test; |
||||||
|
import org.junit.rules.TemporaryFolder; |
||||||
|
import org.mockito.Mockito; |
||||||
|
import org.slf4j.Logger; |
||||||
|
import org.slf4j.LoggerFactory; |
||||||
|
import org.springframework.core.io.Resource; |
||||||
|
import org.springframework.web.multipart.MultipartFile; |
||||||
|
|
||||||
|
import java.io.ByteArrayInputStream; |
||||||
|
import java.io.File; |
||||||
|
import java.io.IOException; |
||||||
|
import java.io.InputStream; |
||||||
|
|
||||||
|
import static org.junit.Assert.*; |
||||||
|
|
||||||
|
public class FileUtilsTest { |
||||||
|
|
||||||
|
private static final Logger logger = LoggerFactory.getLogger(FileUtilsTest.class); |
||||||
|
|
||||||
|
@Rule |
||||||
|
public TemporaryFolder folder = null; |
||||||
|
|
||||||
|
private String rootPath = null; |
||||||
|
|
||||||
|
@Before |
||||||
|
public void setUp() throws Exception { |
||||||
|
|
||||||
|
folder = new TemporaryFolder(); |
||||||
|
folder.create(); |
||||||
|
|
||||||
|
rootPath = folder.getRoot().getAbsolutePath(); |
||||||
|
} |
||||||
|
|
||||||
|
@After |
||||||
|
public void tearDown() throws Exception { |
||||||
|
|
||||||
|
folder.delete(); |
||||||
|
} |
||||||
|
|
||||||
|
/** |
||||||
|
* Use mock to test copyFile |
||||||
|
* @throws IOException |
||||||
|
*/ |
||||||
|
@Test |
||||||
|
public void testCopyFile() throws IOException { |
||||||
|
|
||||||
|
//Define dest file path
|
||||||
|
String destFilename = rootPath + System.getProperty("file.separator") + "data.txt"; |
||||||
|
logger.info("destFilename: "+destFilename); |
||||||
|
|
||||||
|
//Define InputStream for MultipartFile
|
||||||
|
String data = "data text"; |
||||||
|
InputStream targetStream = new ByteArrayInputStream(data.getBytes()); |
||||||
|
|
||||||
|
//Use Mockito to mock MultipartFile
|
||||||
|
MultipartFile file = Mockito.mock(MultipartFile.class); |
||||||
|
Mockito.when(file.getInputStream()).thenReturn(targetStream); |
||||||
|
|
||||||
|
//Invoke copyFile
|
||||||
|
FileUtils.copyFile(file,destFilename); |
||||||
|
|
||||||
|
//Test file exists
|
||||||
|
File destFile = new File(destFilename); |
||||||
|
assertTrue(destFile.exists()); |
||||||
|
|
||||||
|
} |
||||||
|
|
||||||
|
@Test |
||||||
|
public void testFile2Resource() throws IOException { |
||||||
|
|
||||||
|
//Define dest file path
|
||||||
|
String destFilename = rootPath + System.getProperty("file.separator") + "data.txt"; |
||||||
|
logger.info("destFilename: "+destFilename); |
||||||
|
|
||||||
|
//Define test resource
|
||||||
|
File file = folder.newFile("resource.txt"); |
||||||
|
|
||||||
|
//Invoke file2Resource and test not null
|
||||||
|
Resource resource = FileUtils.file2Resource(file.getAbsolutePath()); |
||||||
|
assertNotNull(resource); |
||||||
|
|
||||||
|
//Invoke file2Resource and test null
|
||||||
|
Resource resource1 = FileUtils.file2Resource(file.getAbsolutePath()+"abc"); |
||||||
|
assertNull(resource1); |
||||||
|
|
||||||
|
} |
||||||
|
} |
Loading…
Reference in new issue