df

Dependencies:   mbed

Fork of APP1 by Team APP

TestAccelerometer.cpp

Committer:
dupm2216
Date:
2017-01-14
Revision:
3:1a9d0f0a50bf
Child:
4:303fb83498fd

File content as of revision 3:1a9d0f0a50bf:

#include "TestAccelerometer.hpp"
#include "Accelerometer.hpp"
#include "mbed.h"

#include <cassert>

namespace accelerometer
{
    void run_all_tests()
    {
        test_raw_axis_data_to_int();
        test_set_standby_and_active();
    }
    
    void test_raw_axis_data_to_int()
    {    
        assert(128 == (unsigned char)(0x80));
        assert(-128 == (signed char)(0x80));
        
        assert(0 == raw_axis_data_to_int(0x00));
        assert(1 == raw_axis_data_to_int(0x01));
        assert(127 == raw_axis_data_to_int(0x7F));
        assert(-1 == raw_axis_data_to_int(0xFF));
        assert(-128 == raw_axis_data_to_int(0x80));
    }
    
    void test_set_standby_and_active()
    {
        Accelerometer accelerometer(p9, p10, I2C_ACCELEROMETER_ADDRESS);
    
        accelerometer.set_standby();
        char value = accelerometer.read_register(CTRL_REG1_REGISTER_ADDRESS);
        if(value % 2 != 0)
        {
            printf("Fail\r\n");
        }
    
        accelerometer.set_active();
        value = accelerometer.read_register(CTRL_REG1_REGISTER_ADDRESS);
        if(value % 2 != 1)
        {
            printf("Fail\r\n");
        }
    }
}