Test Failed
Pull Request — master (#3658)
by Lakshmi
04:24
created

FibonacciSensor   A

Complexity

Total Complexity 7

Size/Duplication

Total Lines 45
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
c 1
b 0
f 0
dl 0
loc 45
rs 10
wmc 7

7 Methods

Rating   Name   Duplication   Size   Complexity  
A add_trigger() 0 3 1
A cleanup() 0 2 1
A __init__() 0 10 1
A poll() 0 12 1
A remove_trigger() 0 3 1
A update_trigger() 0 3 1
A setup() 0 4 1
1
from st2reactor.sensor.base import PollingSensor
2
3
4
class FibonacciSensor(PollingSensor):
5
6
    def __init__(self, sensor_service, config,
7
                 poll_interval=5):
8
        super(FibonacciSensor, self).__init__(
9
            sensor_service=sensor_service,
10
            config=config,
11
            poll_interval=poll_interval
12
        )
13
        self.a = None
14
        self.b = None
15
        self.count = None
16
17
    def setup(self):
18
        self.a = 0
19
        self.b = 1
20
        self.count = 2
21
22
    def poll(self):
23
        fib = self.a + self.b
24
25
        payload = {
26
            "count": self.count,
27
            "fibonacci": fib
28
        }
29
30
        self._sensor_service.dispatch(trigger="examples.fibionacci", payload=payload)
31
        self.a = self.b
32
        self.b = fib
33
        self.count = self.count + 1
34
35
    def cleanup(self):
36
        pass
37
38
    def add_trigger(self, trigger):
39
        # This method is called when trigger is created
40
        pass
41
42
    def update_trigger(self, trigger):
43
        # This method is called when trigger is updated
44
        pass
45
46
    def remove_trigger(self, trigger):
47
        # This method is called when trigger is deleted
48
        pass
49