87 lines
3.2 KiB
Kotlin
87 lines
3.2 KiB
Kotlin
package com.example.hpostesting
|
|
|
|
//
|
|
//class LogFileManagerImplTest {
|
|
//
|
|
// @Mock
|
|
// private lateinit var mockContext: Context
|
|
//
|
|
// private lateinit var logFileManager: LogFileManagerImpl
|
|
//
|
|
// @Before
|
|
// fun setUp() {
|
|
// mockContext = mock()
|
|
// logFileManager = LogFileManagerImpl(mockContext)
|
|
// }
|
|
|
|
// @Test
|
|
// fun testCreateLogFileSuccess() {
|
|
// // Mock filesDir
|
|
// whenever(mockContext.getString(R.string.app_name)).thenReturn("MockedAppName")
|
|
// val mockFilesDir = mock<File>()
|
|
// doReturn(true).whenever(mockContext).getFilesDir().exists()
|
|
// doReturn(mockFilesDir).whenever(mockContext).getFilesDir()
|
|
//
|
|
// // Set expected file name
|
|
// val expectedFileName = "hpos_1234567890.log"
|
|
// val currentTime = System.currentTimeMillis() / 1000L
|
|
// doReturn(true).whenever(mockFilesDir).createNewFile(expectedFileName)
|
|
// doReturn(mockFilesDir.absolutePath + File.separator + expectedFileName).whenever(mockFilesDir).absolutePath
|
|
//
|
|
// // Mock FileOutputStream
|
|
// val mockFileOutputStream = mock<FileOutputStream>()
|
|
// doReturn(mockFileOutputStream).whenever(FileOutputStream(mockFilesDir.absolutePath + File.separator + expectedFileName))
|
|
//
|
|
// // Call createLogFile and verify result
|
|
// val logFile = logFileManager.createLogFile()
|
|
//
|
|
// assertNotNull(logFile)
|
|
// assertTrue(logFile.exists())
|
|
// assertEquals(expectedFileName, logFile.name)
|
|
//
|
|
// // Verify FileOutputStream was called
|
|
// verify(mockFileOutputStream).write(any())
|
|
// verify(mockFileOutputStream).close()
|
|
// }
|
|
//
|
|
// @Test
|
|
// fun testCreateLogFileExistingFile() throws IOException {
|
|
// // Mock filesDir with existing file
|
|
// val mockFilesDir = mock<File>()
|
|
// val existingFile = mock<File>()
|
|
// doReturn(true).whenever(mockContext).getFilesDir().exists()
|
|
// doReturn(mockFilesDir).whenever(mockContext).getFilesDir()
|
|
// doReturn(true).whenever(mockFilesDir).exists()
|
|
// doReturn(listOf(existingFile)).whenever(mockFilesDir).listFiles()
|
|
//
|
|
// // Call createLogFile and expect exception
|
|
// try {
|
|
// logFileManager.createLogFile()
|
|
// fail("Expected IOException due to existing file")
|
|
// } catch (e: IOException) {
|
|
// // Expected behavior
|
|
// }
|
|
//
|
|
// // Verify FileOutputStream was not called
|
|
// verify(mockFilesDir, times(0)).createNewFile(anyString())
|
|
// }
|
|
//
|
|
// @Test
|
|
// fun testCreateLogFileIOException() throws IOException {
|
|
// // Mock filesDir and IOException
|
|
// val mockFilesDir = mock<File>()
|
|
// doReturn(true).whenever(mockContext).getFilesDir().exists()
|
|
// doReturn(mockFilesDir).whenever(mockContext).getFilesDir()
|
|
// doReturn(true).whenever(mockFilesDir).exists()
|
|
// doThrow(IOException("Mock IOException")).whenever(mockFilesDir).createNewFile(anyString())
|
|
//
|
|
// // Call createLogFile and expect null result
|
|
// val logFile = logFileManager.createLogFile()
|
|
//
|
|
// assertNull(logFile)
|
|
//
|
|
// // Verify FileOutputStream was not called
|
|
// verify(mockFilesDir, times(0)).createNewFile(anyString())
|
|
// }
|
|
//}
|