Skip to content

Commit

Permalink
zcash_keys: Fix a few problems with no-flags compilation.
Browse files Browse the repository at this point in the history
  • Loading branch information
nuttycom committed Mar 4, 2024
1 parent 41fda05 commit 60db0d0
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 7 deletions.
1 change: 1 addition & 0 deletions zcash_keys/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,7 @@ jubjub.workspace = true
proptest.workspace = true
rand_core.workspace = true
zcash_address = { workspace = true, features = ["test-dependencies"] }
zcash_primitives = { workspace = true, features = ["test-dependencies"] }

[features]
## Enables use of transparent key parts and addresses
Expand Down
12 changes: 7 additions & 5 deletions zcash_keys/src/address.rs
Original file line number Diff line number Diff line change
Expand Up @@ -143,7 +143,11 @@ impl UnifiedAddress {

/// Returns whether this address has a Sapling receiver.
pub fn has_sapling(&self) -> bool {
self.sapling.is_some()
#[cfg(not(feature = "sapling"))]
return false;

#[cfg(feature = "sapling")]
return self.sapling.is_some();
}

/// Returns the Sapling receiver within this Unified Address, if any.
Expand Down Expand Up @@ -213,6 +217,7 @@ impl UnifiedAddress {
let result = std::iter::empty();
#[cfg(feature = "orchard")]
let result = result.chain(self.orchard.map(|_| Typecode::Orchard));
#[cfg(feature = "sapling")]
let result = result.chain(self.sapling.map(|_| Typecode::Sapling));
let result = result.chain(self.transparent.map(|taddr| match taddr {
TransparentAddress::PublicKeyHash(_) => Typecode::P2pkh,
Expand Down Expand Up @@ -353,17 +358,14 @@ mod tests {
use zcash_address::test_vectors;
use zcash_primitives::consensus::MAIN_NETWORK;

use super::Address;
use super::{Address, UnifiedAddress};

#[cfg(feature = "sapling")]
use crate::keys::sapling;

#[cfg(any(feature = "orchard", feature = "sapling"))]
use zcash_primitives::zip32::AccountId;

#[cfg(any(feature = "orchard", feature = "sapling"))]
use super::UnifiedAddress;

#[test]
#[cfg(any(feature = "orchard", feature = "sapling"))]
fn ua_round_trip() {
Expand Down
9 changes: 7 additions & 2 deletions zcash_keys/src/keys.rs
Original file line number Diff line number Diff line change
Expand Up @@ -826,9 +826,14 @@ pub mod testing {

#[cfg(test)]
mod tests {
use super::UnifiedFullViewingKey;
use proptest::prelude::proptest;

use super::UnifiedFullViewingKey;
#[cfg(any(
feature = "orchard",
feature = "sapling",
feature = "transparent-inputs"
))]
use zcash_primitives::consensus::MAIN_NETWORK;

#[cfg(any(feature = "orchard", feature = "sapling"))]
Expand Down Expand Up @@ -919,7 +924,7 @@ mod tests {
);

#[cfg(not(any(feature = "orchard", feature = "sapling")))]
assert_eq!(ufvk, None);
assert!(ufvk.is_none());

#[cfg(any(feature = "orchard", feature = "sapling"))]
{
Expand Down

0 comments on commit 60db0d0

Please sign in to comment.