75 lines
2.6 KiB
C
75 lines
2.6 KiB
C
/* 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();
|
|
}
|