This class provides APIs to all of the registers of the TI BQ35100 battery gauge, as used on the u-blox C030 primary battery shield.

Dependents:   example-battery-gauge-bq35100

Revision:
0:cec745c014b7
Child:
1:ee7cc8d75283
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/TESTS/unit_tests/default/main.cpp	Mon Jul 03 16:12:22 2017 +0000
@@ -0,0 +1,72 @@
+#include "mbed.h"
+#include "greentea-client/test_env.h"
+#include "unity.h"
+#include "utest.h"
+#include "battery_gauge_bq35100.h"
+
+using namespace utest::v1;
+
+// ----------------------------------------------------------------
+// COMPILE-TIME MACROS
+// ----------------------------------------------------------------
+
+// ----------------------------------------------------------------
+// PRIVATE VARIABLES
+// ----------------------------------------------------------------
+
+// I2C interface
+I2C * gpI2C = new I2C(I2C_SDA, I2C_SCL);
+
+// ----------------------------------------------------------------
+// PRIVATE FUNCTIONS
+// ----------------------------------------------------------------
+
+// ----------------------------------------------------------------
+// TESTS
+// ----------------------------------------------------------------
+
+// Test that the BQ35100 battery gauge can be initialised
+void test_init() {
+    BatteryGaugeBq35100 * pBatteryGauge = new BatteryGaugeBq35100();
+    
+    TEST_ASSERT_FALSE(pBatteryGauge->init(NULL));
+    TEST_ASSERT(pBatteryGauge->init(gpI2C));
+}
+
+// ----------------------------------------------------------------
+// TEST ENVIRONMENT
+// ----------------------------------------------------------------
+
+// Setup the test environment
+utest::v1::status_t test_setup(const size_t number_of_cases) {
+    // Setup Greentea, timeout is long enough to run these tests with
+    // DEBUG_BQ35100 defined
+    GREENTEA_SETUP(480, "default_auto");
+    return verbose_test_setup_handler(number_of_cases);
+}
+
+// Test cases
+Case cases[] = {
+    Case("Initialisation", test_init)
+};
+
+Specification specification(test_setup, cases);
+
+// ----------------------------------------------------------------
+// MAIN
+// ----------------------------------------------------------------
+
+// Entry point into the tests
+int main() {    
+    bool success = false;
+    
+    if (gpI2C != NULL) {        
+        success = !Harness::run(specification);
+    } else {
+        printf ("Unable to instantiate I2C interface.\n");
+    }
+    
+    return success;
+}
+
+// End Of File