Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2fba665a authored by Hui Peng's avatar Hui Peng Committed by Android (Google) Code Review
Browse files

Merge "Add tests for the following change" into udc-mainline-prod

parents fcd276e6 a6b4a43d
Loading
Loading
Loading
Loading
+69 −0
Original line number Diff line number Diff line
@@ -126,6 +126,75 @@ TEST_F(BtaDipTest, test_bta_create_dip_sdp_record) {
  ASSERT_EQ(record.dip.primary_record, true);
}

// test for b/263958603
TEST_F(BtaDipTest, test_invalid_type_checks) {
  bluetooth_sdp_record record{};

  // here we provide the wrong types of records
  // and verify that the provided values are not accepted
  g_attr_spec_id.attr_len_type = (BOOLEAN_DESC_TYPE<<12)|1;
  g_attr_spec_id.attr_value.v.u16 = 0x0103;

  g_attr_vendor_id.attr_len_type = (BOOLEAN_DESC_TYPE<<12)|2;
  g_attr_vendor_id.attr_value.v.u16 = 0x18d1;

  g_attr_vendor_id_src.attr_len_type = (BOOLEAN_DESC_TYPE<<12)|2;
  g_attr_vendor_id_src.attr_value.v.u16 = 1;

  g_attr_vendor_product_id.attr_len_type = (BOOLEAN_DESC_TYPE<<12)|2;
  g_attr_vendor_product_id.attr_value.v.u16 = 0x1234;

  g_attr_vendor_product_version.attr_len_type = (BOOLEAN_DESC_TYPE<<12)|2;
  g_attr_vendor_product_version.attr_value.v.u16 = 0x0100;

  g_attr_vendor_product_primary_record.attr_len_type = (UINT_DESC_TYPE<<12)|1;
  g_attr_vendor_product_primary_record.attr_value.v.u8 = 1;

  bluetooth::testing::bta_create_dip_sdp_record(&record, &g_rec);

  ASSERT_EQ(record.dip.spec_id, 0);
  ASSERT_EQ(record.dip.vendor, 0);
  ASSERT_EQ(record.dip.vendor_id_source, 0);
  ASSERT_EQ(record.dip.product, 0);
  ASSERT_EQ(record.dip.version, 0);
  ASSERT_EQ(record.dip.primary_record, false);
}

// test for b/263958603
TEST_F(BtaDipTest, test_invalid_size_checks) {
  bluetooth_sdp_record record{};

  // here we provide the wrong sizes of records
  // and verify that the provided values are not accepted
  g_attr_spec_id.attr_len_type = (UINT_DESC_TYPE<<12)|1;
  g_attr_spec_id.attr_value.v.u16 = 0x0103;

  g_attr_vendor_id.attr_len_type = (UINT_DESC_TYPE<<12)|1;
  g_attr_vendor_id.attr_value.v.u16 = 0x18d1;

  g_attr_vendor_id_src.attr_len_type = (UINT_DESC_TYPE<<12)|1;
  g_attr_vendor_id_src.attr_value.v.u16 = 1;

  g_attr_vendor_product_id.attr_len_type = (UINT_DESC_TYPE<<12)|1;
  g_attr_vendor_product_id.attr_value.v.u16 = 0x1234;

  g_attr_vendor_product_version.attr_len_type = (UINT_DESC_TYPE<<12)|1;
  g_attr_vendor_product_version.attr_value.v.u16 = 0x0100;

  g_attr_vendor_product_primary_record.attr_len_type = (BOOLEAN_DESC_TYPE<<12)|2;
  g_attr_vendor_product_primary_record.attr_value.v.u8 = 1;

  bluetooth::testing::bta_create_dip_sdp_record(&record, &g_rec);

  ASSERT_EQ(record.dip.spec_id, 0);
  ASSERT_EQ(record.dip.vendor, 0);
  ASSERT_EQ(record.dip.vendor_id_source, 0);
  ASSERT_EQ(record.dip.product, 0);
  ASSERT_EQ(record.dip.version, 0);
  ASSERT_EQ(record.dip.primary_record, false);
}


TEST_F(BtaDipTest, test_bta_sdp_search_cback) {
  Uuid* userdata = (Uuid*)malloc(sizeof(Uuid));