FDR  4.2.7(6ecbe5a21b71ab020e8fcaeccfe5ebaad0599f4f)
refinement_counterexample.h
1 #pragma once
2 
3 #include <fdr/assertions/counterexample/counterexample.h>
4 #include <fdr/assertions/behaviour/behaviour.h>
5 
6 namespace FDR
7 {
8 namespace Assertions
9 {
19 {
20 public:
22  const std::shared_ptr<Behaviour>& implementation_behaviour() const;
23 
25  const std::shared_ptr<Behaviour>& specification_behaviour() const;
26 
27 protected:
28  RefinementCounterexample(const std::shared_ptr<Behaviour>& specification,
29  const std::shared_ptr<Behaviour>& implementation);
30 
31 private:
32  std::shared_ptr<Behaviour> specification;
33  std::shared_ptr<Behaviour> implementation;
34 };
35 
36 } // end Assertions
37 } // end FDR
FDR::Assertions::RefinementCounterexample
A counterexample to a refinement assertion.
Definition: refinement_counterexample.h:19
FDR::Assertions::RefinementCounterexample::implementation_behaviour
const std::shared_ptr< Behaviour > & implementation_behaviour() const
The behaviour of the implementation process.
FDR::Assertions::RefinementCounterexample::specification_behaviour
const std::shared_ptr< Behaviour > & specification_behaviour() const
The behaviour of the specification process.
FDR::Assertions::Counterexample
A reason why an Assertion fails.
Definition: counterexample.h:16