Как записать растровое изображение в файл, а затем прочитать его как растровое изображение с помощью Robolectric? - PullRequest
0 голосов
/ 15 июня 2019

Я хочу написать тест для сохранения растрового изображения в виде файла и его извлечения.Я создал растровое изображение шириной 200 и высотой и записал его в файл.Но когда я читаю из файла, его ширина всегда возвращается как 100 из-за какой-то ошибки.

@RunWith(RobolectricTestRunner::class)
class ViewModelTest {
    private var tempFile: File? = null
    @Before
    @Throws(Exception::class)
    fun setUp() {
        val cacheDir = ApplicationProvider.getApplicationContext<Application>().cacheDir
        cacheDir.mkdir()
        tempFile = File(cacheDir, "temp.jpeg")
    }

    @Test
    fun bitmapTest() {
        val sampleBitmap = Bitmap.createBitmap(200, 200, Bitmap.Config.ARGB_8888)
        if (tempFile?.exists() == true)
            tempFile?.delete()
        try {
            val out = FileOutputStream(tempFile)
            sampleBitmap?.compress(Bitmap.CompressFormat.JPEG, 100, out)
            out.flush()
            out.close()
        } catch (e: Exception) {
            e.printStackTrace()
        }
        val bitmap = BitmapFactory.decodeStream(FileInputStream(tempFile))
        assertEquals(200, bitmap.height)
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...