summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--tests/spi25.c19
-rw-r--r--tests/tests.c1
-rw-r--r--tests/tests.h1
3 files changed, 21 insertions, 0 deletions
diff --git a/tests/spi25.c b/tests/spi25.c
index 993257421..aa1eea012 100644
--- a/tests/spi25.c
+++ b/tests/spi25.c
@@ -168,3 +168,22 @@ void probe_spi_at25f_test_success(void **state)
will_return(__wrap_spi_send_command, AT25F_RDID_INSIZE);
assert_int_equal(0, probe_spi_at25f(&flashctx));
}
+
+/* spi95.c */
+void probe_spi_st95_test_success(void **state)
+{
+ (void) state; /* unused */
+
+ /* setup initial test state. */
+ struct flashctx flashctx = { .chip = &mock_chip };
+ expect_memory(__wrap_spi_send_command, flash,
+ &flashctx, sizeof(flashctx));
+
+ /* chip total size < 64K. */
+ uint32_t rdid_outsize = ST_M95_RDID_2BA_OUTSIZE; // 16 bit address
+
+ will_return(__wrap_spi_send_command, rdid_outsize);
+ will_return(__wrap_spi_send_command, ST_M95_RDID);
+ will_return(__wrap_spi_send_command, ST_M95_RDID_INSIZE);
+ assert_int_equal(0, probe_spi_st95(&flashctx));
+}
diff --git a/tests/tests.c b/tests/tests.c
index 02f043813..1a6b65fe2 100644
--- a/tests/tests.c
+++ b/tests/tests.c
@@ -47,6 +47,7 @@ int main(void)
cmocka_unit_test(probe_spi_res2_test_success),
cmocka_unit_test(probe_spi_res3_test_success),
cmocka_unit_test(probe_spi_at25f_test_success),
+ cmocka_unit_test(probe_spi_st95_test_success), /* spi95.c */
};
ret |= cmocka_run_group_tests_name("spi25.c tests", spi25_tests, NULL, NULL);
diff --git a/tests/tests.h b/tests/tests.h
index 83cfdea72..107cb514a 100644
--- a/tests/tests.h
+++ b/tests/tests.h
@@ -23,5 +23,6 @@ void probe_spi_res1_test_success(void **state);
void probe_spi_res2_test_success(void **state);
void probe_spi_res3_test_success(void **state);
void probe_spi_at25f_test_success(void **state);
+void probe_spi_st95_test_success(void **state); /* spi95.c */
#endif /* TESTS_H */