From e18a528c6b399d4a330e77657ba64a72b09fcf23 Mon Sep 17 00:00:00 2001 From: Anastasia Klimchuk Date: Mon, 8 Aug 2022 10:42:39 +1000 Subject: tests: Test allow_brick is required for i2c programmers init Add tests for i2c programmers that assert that initialisation fails when allow_brick parameter is not provided. Example of logs from test run: [ RUN ] parade_lspcon_no_allow_brick_test_success Testing init error path for programmer=parade_lspcon with params: bus=254 ... ... init failed with error code -1 as expected [ OK ] parade_lspcon_no_allow_brick_test_success BUG=b:181803212 TEST=ninja test Change-Id: I382f563016502f3342131d5f9c0de41dc665b03a Signed-off-by: Anastasia Klimchuk Reviewed-on: https://review.coreboot.org/c/flashrom/+/66508 Tested-by: build bot (Jenkins) Reviewed-by: Felix Singer Reviewed-by: Thomas Heijligen --- tests/mediatek_i2c_spi.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'tests/mediatek_i2c_spi.c') diff --git a/tests/mediatek_i2c_spi.c b/tests/mediatek_i2c_spi.c index caf69808..d2780bc9 100644 --- a/tests/mediatek_i2c_spi.c +++ b/tests/mediatek_i2c_spi.c @@ -31,6 +31,22 @@ void mediatek_i2c_spi_basic_lifecycle_test_success(void **state) run_basic_lifecycle(state, &mediatek_i2c_spi_io, &programmer_mediatek_i2c_spi, "bus=254,allow_brick=yes"); } +void mediatek_i2c_no_allow_brick_test_success(void **state) +{ + struct io_mock_fallback_open_state mediatek_i2c_spi_fallback_open_state = { + .noc = 0, + .paths = { "/dev/i2c-254", NULL }, + .flags = { O_RDWR }, + }; + const struct io_mock mediatek_i2c_spi_io = { + .fallback_open_state = &mediatek_i2c_spi_fallback_open_state, + }; + + run_init_error_path(state, &mediatek_i2c_spi_io, &programmer_mediatek_i2c_spi, + "bus=254", SPI_GENERIC_ERROR); +} + #else SKIP_TEST(mediatek_i2c_spi_basic_lifecycle_test_success) + SKIP_TEST(mediatek_i2c_no_allow_brick_test_success) #endif /* CONFIG_MEDIATEK_I2C_SPI */ -- cgit v1.2.3