24 #include "cheetah/rcpt/test/BeamFormerDataTraitsTest.h" 25 #include "cheetah/rcpt/BeamFormerPacket.h" 26 #include "cheetah/rcpt/BeamFormerDataTraits.h" 27 #include "panda/concepts/ChunkerContextDataTraitsConcept.h" 37 BeamFormerDataTraitsTest::BeamFormerDataTraitsTest()
42 BeamFormerDataTraitsTest::~BeamFormerDataTraitsTest()
46 void BeamFormerDataTraitsTest::SetUp()
50 void BeamFormerDataTraitsTest::TearDown()
54 TEST_F(BeamFormerDataTraitsTest, test_packets_per_chunk)
56 BOOST_CONCEPT_ASSERT((panda::ChunkerContextDataTraitsConcept<BeamFormerDataTraits>));
58 typedef BeamFormerDataTraits::DataType DataType;
60 BeamFormerDataTraits traits;
63 data::DimensionSize<data::Frequency> number_of_channels(samples_per_packet);
64 data::DimensionSize<data::Time> number_of_time_samples(10);
66 DataType data(number_of_time_samples, number_of_channels);
67 unsigned packets_per_chunk = traits.chunk_size(data)/traits.packet_size();
68 ASSERT_EQ((std::size_t)number_of_time_samples, packets_per_chunk);
72 data::DimensionSize<data::Frequency> number_of_channels( 2 * samples_per_packet );
73 data::DimensionSize<data::Time> number_of_time_samples(2);
75 DataType data(number_of_time_samples, number_of_channels);
76 unsigned packets_per_chunk = traits.chunk_size(data)/traits.packet_size();
77 ASSERT_EQ(number_of_time_samples * 2, packets_per_chunk);
81 data::DimensionSize<data::Frequency> number_of_channels( samples_per_packet - 1 );
82 data::DimensionSize<data::Time> number_of_time_samples(2);
84 DataType data(number_of_time_samples, number_of_channels);
85 ASSERT_EQ(number_of_time_samples * number_of_channels, traits.chunk_size(data));
86 ASSERT_EQ(samples_per_packet, traits.packet_size());
89 number_of_time_samples = data::DimensionSize<data::Time>(samples_per_packet);
90 DataType data2(number_of_time_samples, number_of_channels);
91 unsigned packets_per_chunk = traits.chunk_size(data2)/traits.packet_size();
92 ASSERT_EQ(number_of_time_samples - 1, packets_per_chunk);
102 std::size_t offset()
const {
return 0; }
103 std::size_t packet_offset()
const {
return 0; }
106 std::size_t size()
const {
return 2; }
111 std::shared_ptr<data::TimeFrequency<Cpu, uint8_t>> _data;
112 std::shared_ptr<TestContext> _next;
115 std::ostream& operator<<(std::ostream& os,
TestContext const&) {
return os;}
Some limits and constants for FLDO.