test_event_data   A
last analyzed

Complexity

Total Complexity 1

Size/Duplication

Total Lines 22
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
eloc 14
dl 0
loc 22
rs 10
c 0
b 0
f 0
wmc 1

1 Function

Rating   Name   Duplication   Size   Complexity  
A test_event_data_passing() 0 18 1
1
from software_patterns import Observer, Subject
2
3
4
def test_event_data_passing():
5
    class EventObserver(Observer):
6
        def __init__(self):
7
            self.received_data = None
8
9
        def update(self, subject):
10
            # Try to access event data
11
            self.received_data = getattr(subject, 'event_data', None)
12
13
    subject = Subject([])
14
    observer = EventObserver()
15
    subject.attach(observer)
16
17
    # Set event data on subject
18
    subject.event_data = {'type': 'custom', 'payload': 42}
19
    subject.notify()
20
21
    assert observer.received_data == {'type': 'custom', 'payload': 42}
22