Project
Loading...
Searching...
No Matches
testDigit.cxx
Go to the documentation of this file.
1// Copyright 2019-2020 CERN and copyright holders of ALICE O2.
2// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
3// All rights not expressly granted are reserved.
4//
5// This software is distributed under the terms of the GNU General Public
6// License v3 (GPL Version 3), copied verbatim in the file "COPYING".
7//
8// In applying this license CERN does not waive the privileges and immunities
9// granted to it by virtue of its status as an Intergovernmental Organization
10// or submit itself to any jurisdiction.
11
12#include <boost/test/tools/old/interface.hpp>
13#define BOOST_TEST_MODULE MCH Digit
14#define BOOST_TEST_DYN_LINK
15#include <boost/test/unit_test.hpp>
16#include <boost/test/data/test_case.hpp>
17#include <boost/test/data/monomorphic.hpp>
18
20
21int dummyDetId{712};
23unsigned long dummyADC{0};
24uint32_t dummyTime{0};
25uint16_t dummyNofSamples{0};
26
27BOOST_AUTO_TEST_CASE(NofSamplesMustFitWithin10Bits)
28{
29 BOOST_CHECK_THROW(o2::mch::Digit d(dummyDetId, dummyPadId, dummyADC, dummyTime, 1025), std::invalid_argument);
30}
31
32BOOST_AUTO_TEST_CASE(DefaultConstructorMakesNonSaturatedDigit)
33{
35 BOOST_CHECK(d.isSaturated() == false);
36}
37
38std::vector<uint16_t> nsamples{
39 1 << 0,
40 1 << 1,
41 1 << 2,
42 1 << 3,
43 1 << 4,
44 1 << 5,
45 1 << 6,
46 1 << 7,
47 1 << 8,
48 1 << 9};
49
50BOOST_DATA_TEST_CASE(DefaultConstructorNofSamplesIsInvariant,
51 boost::unit_test::data::make(nsamples), nofSamples)
52{
54 BOOST_CHECK_EQUAL(d.getNofSamples(), nofSamples);
55}
56
57BOOST_DATA_TEST_CASE(SetSaturatedDoesNotAffectPublicNofSamples,
58 boost::unit_test::data::make(nsamples), nofSamples)
59{
61
62 BOOST_TEST_INFO("setting saturation to true");
63 d.setSaturated(true);
64 BOOST_CHECK_EQUAL(d.getNofSamples(), nofSamples);
65
66 BOOST_TEST_INFO("setting saturation to false");
67 d.setSaturated(false);
68 BOOST_CHECK_EQUAL(d.getNofSamples(), nofSamples);
69}
uint32_t dummyTime
Definition testDigit.cxx:24
uint16_t dummyNofSamples
Definition testDigit.cxx:25
BOOST_AUTO_TEST_CASE(NofSamplesMustFitWithin10Bits)
Definition testDigit.cxx:27
int dummyPadId
Definition testDigit.cxx:22
int dummyDetId
Definition testDigit.cxx:21
BOOST_DATA_TEST_CASE(DefaultConstructorNofSamplesIsInvariant, boost::unit_test::data::make(nsamples), nofSamples)
Definition testDigit.cxx:50
unsigned long dummyADC
Definition testDigit.cxx:23
std::vector< uint16_t > nsamples
Definition testDigit.cxx:38
MCH digit implementation.
Definition Digit.h:31
void setSaturated(bool sat)
Definition Digit.cxx:58
uint16_t getNofSamples() const
Definition Digit.cxx:39
bool isSaturated() const
Definition Digit.cxx:44
BOOST_CHECK(tree)
BOOST_CHECK_EQUAL(triggersD.size(), triggers.size())