Keyboard firmwares for Atmel AVR and Cortex-M
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

busout_ut.cpp 1.7KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. #include "TestHarness.h"
  2. #include <utility>
  3. #include "mbed.h"
  4. TEST_GROUP(BusOut_mask)
  5. {
  6. };
  7. TEST(BusOut_mask, led_1_2_3)
  8. {
  9. BusOut bus_data(LED1, LED2, LED3);
  10. CHECK_EQUAL(0x07, bus_data.mask());
  11. }
  12. TEST(BusOut_mask, led_nc_nc_nc_nc)
  13. {
  14. BusOut bus_data(NC, NC, NC, NC);
  15. CHECK_EQUAL(0x00, bus_data.mask());
  16. }
  17. TEST(BusOut_mask, led_1_2_3_nc_nc)
  18. {
  19. BusOut bus_data(LED1, LED2, LED3, NC, NC);
  20. CHECK_EQUAL(0x07, bus_data.mask());
  21. }
  22. TEST(BusOut_mask, led_1_nc_2_nc_nc_3)
  23. {
  24. BusOut bus_data(LED1, NC, LED2, NC, NC, LED3);
  25. CHECK_EQUAL(0x25, bus_data.mask());
  26. }
  27. ///////////////////////////////////////////////////////////////////////////////
  28. TEST_GROUP(BusOut_dummy)
  29. {
  30. };
  31. TEST(BusOut_dummy, dummy)
  32. {
  33. }
  34. #ifdef MBED_OPERATORS
  35. TEST_GROUP(BusOut_digitalout_write)
  36. {
  37. };
  38. TEST(BusOut_digitalout_write, led_nc)
  39. {
  40. BusOut bus_data(NC);
  41. CHECK_EQUAL(false, bus_data[0].is_connected())
  42. }
  43. TEST(BusOut_digitalout_write, led_1_2_3)
  44. {
  45. BusOut bus_data(LED1, LED2, LED3);
  46. bus_data[0].write(1);
  47. bus_data[1].write(1);
  48. bus_data[2].write(1);
  49. CHECK(bus_data[0].read());
  50. CHECK(bus_data[1].read());
  51. CHECK(bus_data[2].read());
  52. }
  53. TEST(BusOut_digitalout_write, led_1_2_3_nc_nc)
  54. {
  55. BusOut bus_data(LED1, LED2, LED3, NC, NC);
  56. bus_data[0].write(0);
  57. bus_data[1].write(0);
  58. bus_data[2].write(0);
  59. CHECK(bus_data[0].read() == 0);
  60. CHECK(bus_data[1].read() == 0);
  61. CHECK(bus_data[2].read() == 0);
  62. }
  63. TEST(BusOut_digitalout_write, led_1_nc_2_nc_nc_3)
  64. {
  65. BusOut bus_data(LED1, NC, LED2, NC, NC, LED3);
  66. bus_data[0].write(1);
  67. bus_data[2].write(0);
  68. bus_data[5].write(0);
  69. CHECK(bus_data[0].read());
  70. CHECK(bus_data[2].read() == 0);
  71. CHECK(bus_data[5].read() == 0);
  72. }
  73. #endif