/* Copyright 2019 The Chromium OS Authors. All rights reserved. * Use of this source code is governed by a BSD-style license that can be * found in the LICENSE file. * * Test USB common module. */ #include "test_util.h" #include "usb_common.h" int test_pd_get_cc_state(void) { TEST_EQ(pd_get_cc_state(TYPEC_CC_VOLT_RP_3_0, TYPEC_CC_VOLT_RP_3_0), PD_CC_DFP_DEBUG_ACC, "%d"); TEST_EQ(pd_get_cc_state(TYPEC_CC_VOLT_RP_3_0, TYPEC_CC_VOLT_RP_1_5), PD_CC_DFP_DEBUG_ACC, "%d"); TEST_EQ(pd_get_cc_state(TYPEC_CC_VOLT_RP_3_0, TYPEC_CC_VOLT_RP_DEF), PD_CC_DFP_DEBUG_ACC, "%d"); TEST_EQ(pd_get_cc_state(TYPEC_CC_VOLT_RP_1_5, TYPEC_CC_VOLT_RP_3_0), PD_CC_DFP_DEBUG_ACC, "%d"); TEST_EQ(pd_get_cc_state(TYPEC_CC_VOLT_RP_1_5, TYPEC_CC_VOLT_RP_1_5), PD_CC_DFP_DEBUG_ACC, "%d"); TEST_EQ(pd_get_cc_state(TYPEC_CC_VOLT_RP_1_5, TYPEC_CC_VOLT_RP_DEF), PD_CC_DFP_DEBUG_ACC, "%d"); TEST_EQ(pd_get_cc_state(TYPEC_CC_VOLT_RP_DEF, TYPEC_CC_VOLT_RP_3_0), PD_CC_DFP_DEBUG_ACC, "%d"); TEST_EQ(pd_get_cc_state(TYPEC_CC_VOLT_RP_DEF, TYPEC_CC_VOLT_RP_1_5), PD_CC_DFP_DEBUG_ACC, "%d"); TEST_EQ(pd_get_cc_state(TYPEC_CC_VOLT_RP_DEF, TYPEC_CC_VOLT_RP_DEF), PD_CC_DFP_DEBUG_ACC, "%d"); TEST_EQ(pd_get_cc_state(TYPEC_CC_VOLT_RP_3_0, TYPEC_CC_VOLT_OPEN), PD_CC_DFP_ATTACHED, "%d"); TEST_EQ(pd_get_cc_state(TYPEC_CC_VOLT_RP_1_5, TYPEC_CC_VOLT_OPEN), PD_CC_DFP_ATTACHED, "%d"); TEST_EQ(pd_get_cc_state(TYPEC_CC_VOLT_RP_DEF, TYPEC_CC_VOLT_OPEN), PD_CC_DFP_ATTACHED, "%d"); TEST_EQ(pd_get_cc_state(TYPEC_CC_VOLT_OPEN, TYPEC_CC_VOLT_RP_3_0), PD_CC_DFP_ATTACHED, "%d"); TEST_EQ(pd_get_cc_state(TYPEC_CC_VOLT_OPEN, TYPEC_CC_VOLT_RP_1_5), PD_CC_DFP_ATTACHED, "%d"); TEST_EQ(pd_get_cc_state(TYPEC_CC_VOLT_OPEN, TYPEC_CC_VOLT_RP_DEF), PD_CC_DFP_ATTACHED, "%d"); TEST_EQ(pd_get_cc_state(TYPEC_CC_VOLT_RD, TYPEC_CC_VOLT_RD), PD_CC_UFP_DEBUG_ACC, "%d"); TEST_EQ(pd_get_cc_state(TYPEC_CC_VOLT_RD, TYPEC_CC_VOLT_RA), PD_CC_UFP_ATTACHED, "%d"); TEST_EQ(pd_get_cc_state(TYPEC_CC_VOLT_RD, TYPEC_CC_VOLT_OPEN), PD_CC_UFP_ATTACHED, "%d"); TEST_EQ(pd_get_cc_state(TYPEC_CC_VOLT_RA, TYPEC_CC_VOLT_RD), PD_CC_UFP_ATTACHED, "%d"); TEST_EQ(pd_get_cc_state(TYPEC_CC_VOLT_OPEN, TYPEC_CC_VOLT_RD), PD_CC_UFP_ATTACHED, "%d"); TEST_EQ(pd_get_cc_state(TYPEC_CC_VOLT_RA, TYPEC_CC_VOLT_RA), PD_CC_UFP_AUDIO_ACC, "%d"); TEST_EQ(pd_get_cc_state(TYPEC_CC_VOLT_OPEN, TYPEC_CC_VOLT_OPEN), PD_CC_NONE, "%d"); TEST_EQ(pd_get_cc_state(TYPEC_CC_VOLT_OPEN, TYPEC_CC_VOLT_RA), PD_CC_NONE, "%d"); TEST_EQ(pd_get_cc_state(TYPEC_CC_VOLT_RA, TYPEC_CC_VOLT_OPEN), PD_CC_NONE, "%d"); return EC_SUCCESS; } void run_test(int argc, char **argv) { RUN_TEST(test_pd_get_cc_state); test_print_result(); }