mirror of
https://github.com/kidfromjupiter/nearby.git
synced 2026-09-16 15:36:12 -04:00
Update SharedCredential definition
PiperOrigin-RevId: 507568902
This commit is contained in:
committed by
Copybara-Service
parent
d1d7cfad56
commit
5f4144cd0b
@@ -34,7 +34,8 @@ namespace nearby {
|
||||
namespace presence {
|
||||
|
||||
namespace {
|
||||
using ::nearby::ByteArray; // NOLINT
|
||||
using ::nearby::ByteArray; // NOLINT
|
||||
using ::nearby::internal::IdentityType;
|
||||
using ::nearby::internal::SharedCredential; // NOLINT
|
||||
using ::testing::ElementsAre;
|
||||
using ::protobuf_matchers::EqualsProto;
|
||||
@@ -48,10 +49,10 @@ constexpr absl::string_view kAccountName = "test account";
|
||||
|
||||
ScanRequest GetScanRequest() {
|
||||
return {.account_name = std::string(kAccountName),
|
||||
.identity_types = {internal::IDENTITY_TYPE_PRIVATE,
|
||||
internal::IDENTITY_TYPE_TRUSTED,
|
||||
internal::IDENTITY_TYPE_PUBLIC,
|
||||
internal::IDENTITY_TYPE_PROVISIONED}};
|
||||
.identity_types = {IdentityType::IDENTITY_TYPE_PRIVATE,
|
||||
IdentityType::IDENTITY_TYPE_TRUSTED,
|
||||
IdentityType::IDENTITY_TYPE_PUBLIC,
|
||||
IdentityType::IDENTITY_TYPE_PROVISIONED}};
|
||||
}
|
||||
|
||||
#if USE_RUST_LDT == 1
|
||||
@@ -60,10 +61,10 @@ ScanRequest GetScanRequest(std::vector<SharedCredential> credentials) {
|
||||
credentials};
|
||||
return ScanRequestBuilder()
|
||||
.SetAccountName(kAccountName)
|
||||
.AddIdentityType(internal::IDENTITY_TYPE_PRIVATE)
|
||||
.AddIdentityType(internal::IDENTITY_TYPE_TRUSTED)
|
||||
.AddIdentityType(internal::IDENTITY_TYPE_PUBLIC)
|
||||
.AddIdentityType(internal::IDENTITY_TYPE_PROVISIONED)
|
||||
.AddIdentityType(IdentityType::IDENTITY_TYPE_PRIVATE)
|
||||
.AddIdentityType(IdentityType::IDENTITY_TYPE_TRUSTED)
|
||||
.AddIdentityType(IdentityType::IDENTITY_TYPE_PUBLIC)
|
||||
.AddIdentityType(IdentityType::IDENTITY_TYPE_PROVISIONED)
|
||||
.AddScanFilter(scan_filter)
|
||||
.Build();
|
||||
}
|
||||
@@ -77,7 +78,7 @@ SharedCredential GetPublicCredential() {
|
||||
165, 34, 64, 181, 204, 44, 203, 95, 141, 82, 137,
|
||||
163, 203, 100, 235, 53, 65, 202, 97, 75, 180});
|
||||
SharedCredential public_credential;
|
||||
public_credential.set_authenticity_key(seed.AsStringView());
|
||||
public_credential.set_key_seed(seed.AsStringView());
|
||||
public_credential.set_metadata_encryption_key_tag(known_mac.AsStringView());
|
||||
return public_credential;
|
||||
}
|
||||
@@ -86,10 +87,10 @@ TEST(AdvertisementDecoder, DecodeBaseNpPrivateAdvertisement) {
|
||||
std::string salt = "AB";
|
||||
ByteArray metadata_key(
|
||||
{205, 104, 63, 225, 161, 209, 248, 70, 84, 61, 10, 19, 212, 174});
|
||||
absl::flat_hash_map<internal::IdentityType,
|
||||
std::vector<internal::SharedCredential>>
|
||||
absl::flat_hash_map<IdentityType, std::vector<internal::SharedCredential>>
|
||||
credentials;
|
||||
credentials[internal::IDENTITY_TYPE_PRIVATE].push_back(GetPublicCredential());
|
||||
credentials[IdentityType::IDENTITY_TYPE_PRIVATE].push_back(
|
||||
GetPublicCredential());
|
||||
AdvertisementDecoder decoder(GetScanRequest(), &credentials);
|
||||
|
||||
absl::StatusOr<Advertisement> result = decoder.DecodeAdvertisement(
|
||||
@@ -97,7 +98,7 @@ TEST(AdvertisementDecoder, DecodeBaseNpPrivateAdvertisement) {
|
||||
|
||||
ASSERT_OK(result);
|
||||
EXPECT_EQ(result->metadata_key, metadata_key.AsStringView());
|
||||
EXPECT_EQ(result->identity_type, internal::IDENTITY_TYPE_PRIVATE);
|
||||
EXPECT_EQ(result->identity_type, IdentityType::IDENTITY_TYPE_PRIVATE);
|
||||
EXPECT_THAT(result->data_elements,
|
||||
ElementsAre(DataElement(DataElement::kSaltFieldType, salt),
|
||||
DataElement(DataElement::kTxPowerFieldType,
|
||||
@@ -120,7 +121,7 @@ TEST(AdvertisementDecoder,
|
||||
|
||||
ASSERT_OK(result);
|
||||
EXPECT_EQ(result->metadata_key, metadata_key.AsStringView());
|
||||
EXPECT_EQ(result->identity_type, internal::IDENTITY_TYPE_PRIVATE);
|
||||
EXPECT_EQ(result->identity_type, IdentityType::IDENTITY_TYPE_PRIVATE);
|
||||
EXPECT_THAT(result->data_elements,
|
||||
ElementsAre(DataElement(DataElement::kSaltFieldType, salt),
|
||||
DataElement(DataElement::kTxPowerFieldType,
|
||||
@@ -133,10 +134,10 @@ TEST(AdvertisementDecoder, DecodeBaseNpTrustedAdvertisement) {
|
||||
std::string salt = "AB";
|
||||
ByteArray metadata_key(
|
||||
{205, 104, 63, 225, 161, 209, 248, 70, 84, 61, 10, 19, 212, 174});
|
||||
absl::flat_hash_map<internal::IdentityType,
|
||||
std::vector<internal::SharedCredential>>
|
||||
absl::flat_hash_map<IdentityType, std::vector<internal::SharedCredential>>
|
||||
credentials;
|
||||
credentials[internal::IDENTITY_TYPE_TRUSTED].push_back(GetPublicCredential());
|
||||
credentials[IdentityType::IDENTITY_TYPE_TRUSTED].push_back(
|
||||
GetPublicCredential());
|
||||
AdvertisementDecoder decoder(GetScanRequest(), &credentials);
|
||||
|
||||
absl::StatusOr<Advertisement> result = decoder.DecodeAdvertisement(
|
||||
@@ -144,7 +145,7 @@ TEST(AdvertisementDecoder, DecodeBaseNpTrustedAdvertisement) {
|
||||
|
||||
ASSERT_OK(result);
|
||||
EXPECT_EQ(result->metadata_key, metadata_key.AsStringView());
|
||||
EXPECT_EQ(result->identity_type, internal::IDENTITY_TYPE_TRUSTED);
|
||||
EXPECT_EQ(result->identity_type, IdentityType::IDENTITY_TYPE_TRUSTED);
|
||||
EXPECT_THAT(
|
||||
result->data_elements,
|
||||
UnorderedElementsAre(DataElement(DataElement::kSaltFieldType, salt),
|
||||
@@ -160,10 +161,9 @@ TEST(AdvertisementDecoder, DecodeBaseNpProvisionedAdvertisement) {
|
||||
std::string salt = "AB";
|
||||
ByteArray metadata_key(
|
||||
{205, 104, 63, 225, 161, 209, 248, 70, 84, 61, 10, 19, 212, 174});
|
||||
absl::flat_hash_map<internal::IdentityType,
|
||||
std::vector<internal::SharedCredential>>
|
||||
absl::flat_hash_map<IdentityType, std::vector<internal::SharedCredential>>
|
||||
credentials;
|
||||
credentials[internal::IDENTITY_TYPE_PROVISIONED].push_back(
|
||||
credentials[IdentityType::IDENTITY_TYPE_PROVISIONED].push_back(
|
||||
GetPublicCredential());
|
||||
AdvertisementDecoder decoder(GetScanRequest(), &credentials);
|
||||
|
||||
@@ -172,7 +172,7 @@ TEST(AdvertisementDecoder, DecodeBaseNpProvisionedAdvertisement) {
|
||||
|
||||
ASSERT_OK(result);
|
||||
EXPECT_EQ(result->metadata_key, metadata_key.AsStringView());
|
||||
EXPECT_EQ(result->identity_type, internal::IDENTITY_TYPE_PROVISIONED);
|
||||
EXPECT_EQ(result->identity_type, IdentityType::IDENTITY_TYPE_PROVISIONED);
|
||||
EXPECT_THAT(
|
||||
result->data_elements,
|
||||
UnorderedElementsAre(DataElement(DataElement::kSaltFieldType, salt),
|
||||
@@ -188,10 +188,10 @@ TEST(AdvertisementDecoder, InvalidEncryptedContent) {
|
||||
std::string salt = "AB";
|
||||
ByteArray metadata_key(
|
||||
{205, 104, 63, 225, 161, 209, 248, 70, 84, 61, 10, 19, 212, 174});
|
||||
absl::flat_hash_map<internal::IdentityType,
|
||||
std::vector<internal::SharedCredential>>
|
||||
absl::flat_hash_map<IdentityType, std::vector<internal::SharedCredential>>
|
||||
credentials;
|
||||
credentials[internal::IDENTITY_TYPE_PRIVATE].push_back(GetPublicCredential());
|
||||
credentials[IdentityType::IDENTITY_TYPE_PRIVATE].push_back(
|
||||
GetPublicCredential());
|
||||
AdvertisementDecoder decoder(GetScanRequest(), &credentials);
|
||||
|
||||
EXPECT_THAT(decoder.DecodeAdvertisement(absl::HexStringToBytes(
|
||||
@@ -209,7 +209,7 @@ TEST(AdvertisementDecoder, DecodeBaseNpPublicAdvertisement) {
|
||||
absl::HexStringToBytes("002041420337C1C2C31BEE"));
|
||||
|
||||
ASSERT_OK(result);
|
||||
EXPECT_EQ(result->identity_type, internal::IDENTITY_TYPE_PUBLIC);
|
||||
EXPECT_EQ(result->identity_type, IdentityType::IDENTITY_TYPE_PUBLIC);
|
||||
EXPECT_EQ(result->version, 0);
|
||||
EXPECT_THAT(
|
||||
result->data_elements,
|
||||
@@ -246,9 +246,9 @@ TEST(AdvertisementDecoder,
|
||||
ScanForEncryptedIdentityIgnoresPublicIdentityAdvertisement) {
|
||||
AdvertisementDecoder decoder(
|
||||
{.account_name = std::string(kAccountName),
|
||||
.identity_types = {internal::IDENTITY_TYPE_PRIVATE,
|
||||
internal::IDENTITY_TYPE_TRUSTED,
|
||||
internal::IDENTITY_TYPE_PROVISIONED}});
|
||||
.identity_types = {IdentityType::IDENTITY_TYPE_PRIVATE,
|
||||
IdentityType::IDENTITY_TYPE_TRUSTED,
|
||||
IdentityType::IDENTITY_TYPE_PROVISIONED}});
|
||||
|
||||
EXPECT_THAT(decoder.DecodeAdvertisement(
|
||||
absl::HexStringToBytes("00204142034650B04180")),
|
||||
|
||||
Reference in New Issue
Block a user