Skip to content

Commit

Permalink
[uss_qualifier] rid: dss0130 - check information relative to intersec…
Browse files Browse the repository at this point in the history
…ting entities is properly sync'd
  • Loading branch information
Shastick committed Nov 4, 2024
1 parent 8e46667 commit 4fa7a58
Show file tree
Hide file tree
Showing 10 changed files with 122 additions and 26 deletions.
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import datetime
import ipaddress
import socket
import uuid
from dataclasses import dataclass
import datetime
from enum import Enum
from typing import List, Dict, Optional
from urllib.parse import urlparse
Expand Down Expand Up @@ -429,6 +429,7 @@ def step5(self):
subscription notification requests"""

isa_1 = self._context["isa_1"]
sub_1_0 = self._context["sub_1_0"]

with self.check(
"Can get ISA from primary DSS", [self._dss_primary.participant_id]
Expand All @@ -439,15 +440,58 @@ def step5(self):
with self.check(
"Can modify ISA in primary DSS", [self._dss_primary.participant_id]
) as check:
mutated_isa = self._dss_primary.put_isa(
mutated_isa_primary = self._dss_primary.put_isa(
check,
isa_id=isa_1.uuid,
isa_version=isa_1.version,
do_not_notify="https://testdummy.interuss.org",
**_default_params(datetime.timedelta(seconds=SHORT_WAIT_SEC)),
)
isa_1.version = mutated_isa.dss_query.isa.version
isa_1.version = mutated_isa_primary.dss_query.isa.version

subs_to_notify_primary = []
for subscriber in mutated_isa_primary.subscribers:
for s in subscriber.raw.subscriptions:
subs_to_notify_primary.append(s.subscription_id)

with self.check(
"ISA modification on primary DSS triggers subscription notification requests",
[self._dss_primary.participant_id],
) as check:
if sub_1_0.uuid not in subs_to_notify_primary:
check.record_failed(
summary=f"Subscription {sub_1_0.uuid} was not notified of ISA modification",
details=f"Subscription {sub_1_0.uuid} was created on the primary DSS and should have been notified of the ISA modification that happened on the primary DSS, but was not.",
)

# TODO: Implement "ISA modification triggers subscription notification requests check"
for sec_dss in self._dss_others:
with self.check(
"Can modify ISA on secondary DSS",
[sec_dss.participant_id],
) as check:
mutated_isa_sec = self._dss_primary.put_isa(
check,
isa_id=isa_1.uuid,
isa_version=isa_1.version,
do_not_notify="https://testdummy.interuss.org",
**_default_params(datetime.timedelta(seconds=SHORT_WAIT_SEC)),
)
isa_1.version = mutated_isa_sec.dss_query.isa.version

subs_to_notify_sec = []
for subscriber in mutated_isa_primary.subscribers:
for s in subscriber.raw.subscriptions:
subs_to_notify_sec.append(s.subscription_id)

with self.check(
"ISA modification on secondary DSS triggers subscription notification requests",
[self._dss_primary.participant_id],
) as check:
if sub_1_0.uuid not in subs_to_notify_sec:
check.record_failed(
summary=f"Subscription {sub_1_0.uuid} was not notified of ISA modification",
details=f"Subscription {sub_1_0.uuid} was created on the primary DSS and should have been notified of the ISA modification that happened on the primary DSS, but was not.",
)

def step6(self):
"""Can delete all Subscription in primary DSS"""
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -160,12 +160,18 @@ Qualitatively proves: ISA[*P*] modified with proper response, all Subscription[i

**[astm.f3411.v19.DSS0130,A2-6-1,1b](../../../../requirements/astm/f3411/v19.md)**

#### ISA modification triggers subscription notification requests check

TODO: Implement
#### ⚠️ ISA modification on primary DSS triggers subscription notification requests check

**[astm.f3411.v19.DSS0130,A2-6-1,3c](../../../../requirements/astm/f3411/v19.md)**

#### 🛑 Can modify ISA on secondary DSS check

**[astm.f3411.v19.DSS0130,A2-6-1,1b](../../../../requirements/astm/f3411/v19.md)**

#### ⚠️ ISA modification on secondary DSS triggers subscription notification requests check

**[astm.f3411.v19.DSS0130,A2-6-1,3c](../../../../requirements/astm/f3411/v19.md)** and **[astm.f3411.v19.DSS0130,2,e](../../../../requirements/astm/f3411/v19.md)**

### S6 test step

Action: USS2@DSS*P*: DELETE Subscription[*n*]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -159,12 +159,18 @@ Qualitatively proves: ISA[*P*] modified with proper response, all Subscription[i

**[astm.f3411.v22a.DSS0130,A2-6-1,1b](../../../../requirements/astm/f3411/v22a.md)**

#### ISA modification triggers subscription notification requests check

TODO: Implement
#### ⚠️ ISA modification on primary DSS triggers subscription notification requests check

**[astm.f3411.v22a.DSS0130,A2-6-1,3c](../../../../requirements/astm/f3411/v22a.md)**

#### 🛑 Can modify ISA on secondary DSS check

**[astm.f3411.v22a.DSS0130,A2-6-1,1b](../../../../requirements/astm/f3411/v22a.md)**

#### ⚠️ ISA modification on secondary DSS triggers subscription notification requests check

**[astm.f3411.v22a.DSS0130,A2-6-1,3c](../../../../requirements/astm/f3411/v22a.md)** and **[astm.f3411.v22a.DSS0130,2,e](../../../../requirements/astm/f3411/v22a.md)**

### S6 test step

Action: USS2@DSS*P*: DELETE Subscription[*n*]
Expand Down
9 changes: 7 additions & 2 deletions monitoring/uss_qualifier/suites/astm/netrid/f3411_19.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
<th><a href="../../README.md#checked-in">Checked in</a></th>
</tr>
<tr>
<td rowspan="62" style="vertical-align:top;"><a href="../../../requirements/astm/f3411/v19.md">astm<br>.f3411<br>.v19</a></td>
<td rowspan="63" style="vertical-align:top;"><a href="../../../requirements/astm/f3411/v19.md">astm<br>.f3411<br>.v19</a></td>
<td><a href="../../../requirements/astm/f3411/v19.md">DSS0010</a></td>
<td>Implemented</td>
<td><a href="../../../scenarios/astm/netrid/v19/dss/token_validation.md">ASTM NetRID DSS: Token Validation</a></td>
Expand Down Expand Up @@ -101,6 +101,11 @@
<td>Implemented</td>
<td><a href="../../../scenarios/astm/netrid/v19/dss_interoperability.md">ASTM F3411-19 NetRID DSS interoperability</a></td>
</tr>
<tr>
<td><a href="../../../requirements/astm/f3411/v19.md">DSS0130,2,e</a></td>
<td>Implemented</td>
<td><a href="../../../scenarios/astm/netrid/v19/dss_interoperability.md">ASTM F3411-19 NetRID DSS interoperability</a></td>
</tr>
<tr>
<td><a href="../../../requirements/astm/f3411/v19.md">DSS0130,2,f</a></td>
<td>Implemented</td>
Expand Down Expand Up @@ -173,7 +178,7 @@
</tr>
<tr>
<td><a href="../../../requirements/astm/f3411/v19.md">DSS0130,A2-6-1,3c</a></td>
<td>Implemented + TODO</td>
<td>Implemented</td>
<td><a href="../../../scenarios/astm/netrid/v19/dss_interoperability.md">ASTM F3411-19 NetRID DSS interoperability</a></td>
</tr>
<tr>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
<th><a href="../../../README.md#checked-in">Checked in</a></th>
</tr>
<tr>
<td rowspan="38" style="vertical-align:top;"><a href="../../../../requirements/astm/f3411/v19.md">astm<br>.f3411<br>.v19</a></td>
<td rowspan="39" style="vertical-align:top;"><a href="../../../../requirements/astm/f3411/v19.md">astm<br>.f3411<br>.v19</a></td>
<td><a href="../../../../requirements/astm/f3411/v19.md">DSS0010</a></td>
<td>Implemented</td>
<td><a href="../../../../scenarios/astm/netrid/v19/dss/token_validation.md">ASTM NetRID DSS: Token Validation</a></td>
Expand Down Expand Up @@ -105,6 +105,11 @@
<td>Implemented</td>
<td><a href="../../../../scenarios/astm/netrid/v19/dss_interoperability.md">ASTM F3411-19 NetRID DSS interoperability</a></td>
</tr>
<tr>
<td><a href="../../../../requirements/astm/f3411/v19.md">DSS0130,2,e</a></td>
<td>Implemented</td>
<td><a href="../../../../scenarios/astm/netrid/v19/dss_interoperability.md">ASTM F3411-19 NetRID DSS interoperability</a></td>
</tr>
<tr>
<td><a href="../../../../requirements/astm/f3411/v19.md">DSS0130,2,f</a></td>
<td>Implemented</td>
Expand Down Expand Up @@ -177,7 +182,7 @@
</tr>
<tr>
<td><a href="../../../../requirements/astm/f3411/v19.md">DSS0130,A2-6-1,3c</a></td>
<td>Implemented + TODO</td>
<td>Implemented</td>
<td><a href="../../../../scenarios/astm/netrid/v19/dss_interoperability.md">ASTM F3411-19 NetRID DSS interoperability</a></td>
</tr>
<tr>
Expand Down
9 changes: 7 additions & 2 deletions monitoring/uss_qualifier/suites/astm/netrid/f3411_22a.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
<th><a href="../../README.md#checked-in">Checked in</a></th>
</tr>
<tr>
<td rowspan="87" style="vertical-align:top;"><a href="../../../requirements/astm/f3411/v22a.md">astm<br>.f3411<br>.v22a</a></td>
<td rowspan="88" style="vertical-align:top;"><a href="../../../requirements/astm/f3411/v22a.md">astm<br>.f3411<br>.v22a</a></td>
<td><a href="../../../requirements/astm/f3411/v22a.md">DSS0010</a></td>
<td>Implemented</td>
<td><a href="../../../scenarios/astm/netrid/v22a/dss/token_validation.md">ASTM NetRID DSS: Token Validation</a></td>
Expand Down Expand Up @@ -106,6 +106,11 @@
<td>Implemented</td>
<td><a href="../../../scenarios/astm/netrid/v22a/dss_interoperability.md">ASTM F3411-22a NetRID DSS interoperability</a></td>
</tr>
<tr>
<td><a href="../../../requirements/astm/f3411/v22a.md">DSS0130,2,e</a></td>
<td>Implemented</td>
<td><a href="../../../scenarios/astm/netrid/v22a/dss_interoperability.md">ASTM F3411-22a NetRID DSS interoperability</a></td>
</tr>
<tr>
<td><a href="../../../requirements/astm/f3411/v22a.md">DSS0130,2,f</a></td>
<td>Implemented</td>
Expand Down Expand Up @@ -178,7 +183,7 @@
</tr>
<tr>
<td><a href="../../../requirements/astm/f3411/v22a.md">DSS0130,A2-6-1,3c</a></td>
<td>Implemented + TODO</td>
<td>Implemented</td>
<td><a href="../../../scenarios/astm/netrid/v22a/dss_interoperability.md">ASTM F3411-22a NetRID DSS interoperability</a></td>
</tr>
<tr>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
<th><a href="../../../README.md#checked-in">Checked in</a></th>
</tr>
<tr>
<td rowspan="39" style="vertical-align:top;"><a href="../../../../requirements/astm/f3411/v22a.md">astm<br>.f3411<br>.v22a</a></td>
<td rowspan="40" style="vertical-align:top;"><a href="../../../../requirements/astm/f3411/v22a.md">astm<br>.f3411<br>.v22a</a></td>
<td><a href="../../../../requirements/astm/f3411/v22a.md">DSS0010</a></td>
<td>Implemented</td>
<td><a href="../../../../scenarios/astm/netrid/v22a/dss/token_validation.md">ASTM NetRID DSS: Token Validation</a></td>
Expand Down Expand Up @@ -110,6 +110,11 @@
<td>Implemented</td>
<td><a href="../../../../scenarios/astm/netrid/v22a/dss_interoperability.md">ASTM F3411-22a NetRID DSS interoperability</a></td>
</tr>
<tr>
<td><a href="../../../../requirements/astm/f3411/v22a.md">DSS0130,2,e</a></td>
<td>Implemented</td>
<td><a href="../../../../scenarios/astm/netrid/v22a/dss_interoperability.md">ASTM F3411-22a NetRID DSS interoperability</a></td>
</tr>
<tr>
<td><a href="../../../../requirements/astm/f3411/v22a.md">DSS0130,2,f</a></td>
<td>Implemented</td>
Expand Down Expand Up @@ -182,7 +187,7 @@
</tr>
<tr>
<td><a href="../../../../requirements/astm/f3411/v22a.md">DSS0130,A2-6-1,3c</a></td>
<td>Implemented + TODO</td>
<td>Implemented</td>
<td><a href="../../../../scenarios/astm/netrid/v22a/dss_interoperability.md">ASTM F3411-22a NetRID DSS interoperability</a></td>
</tr>
<tr>
Expand Down
18 changes: 14 additions & 4 deletions monitoring/uss_qualifier/suites/interuss/dss/all_tests.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
<th><a href="../../README.md#checked-in">Checked in</a></th>
</tr>
<tr>
<td rowspan="38" style="vertical-align:top;"><a href="../../../requirements/astm/f3411/v19.md">astm<br>.f3411<br>.v19</a></td>
<td rowspan="39" style="vertical-align:top;"><a href="../../../requirements/astm/f3411/v19.md">astm<br>.f3411<br>.v19</a></td>
<td><a href="../../../requirements/astm/f3411/v19.md">DSS0010</a></td>
<td>Implemented</td>
<td><a href="../../../scenarios/astm/netrid/v19/dss/token_validation.md">ASTM NetRID DSS: Token Validation</a></td>
Expand Down Expand Up @@ -101,6 +101,11 @@
<td>Implemented</td>
<td><a href="../../../scenarios/astm/netrid/v19/dss_interoperability.md">ASTM F3411-19 NetRID DSS interoperability</a></td>
</tr>
<tr>
<td><a href="../../../requirements/astm/f3411/v19.md">DSS0130,2,e</a></td>
<td>Implemented</td>
<td><a href="../../../scenarios/astm/netrid/v19/dss_interoperability.md">ASTM F3411-19 NetRID DSS interoperability</a></td>
</tr>
<tr>
<td><a href="../../../requirements/astm/f3411/v19.md">DSS0130,2,f</a></td>
<td>Implemented</td>
Expand Down Expand Up @@ -173,7 +178,7 @@
</tr>
<tr>
<td><a href="../../../requirements/astm/f3411/v19.md">DSS0130,A2-6-1,3c</a></td>
<td>Implemented + TODO</td>
<td>Implemented</td>
<td><a href="../../../scenarios/astm/netrid/v19/dss_interoperability.md">ASTM F3411-19 NetRID DSS interoperability</a></td>
</tr>
<tr>
Expand Down Expand Up @@ -212,7 +217,7 @@
<td><a href="../../../scenarios/astm/netrid/v19/dss/heavy_traffic_concurrent.md">ASTM NetRID DSS: Concurrent Requests</a><br><a href="../../../scenarios/astm/netrid/v19/dss/isa_expiry.md">ASTM NetRID DSS: ISA Expiry</a><br><a href="../../../scenarios/astm/netrid/v19/dss/isa_subscription_interactions.md">ASTM NetRID DSS: ISA Subscription Interactions</a><br><a href="../../../scenarios/astm/netrid/v19/dss/isa_simple.md">ASTM NetRID DSS: Simple ISA</a><br><a href="../../../scenarios/astm/netrid/v19/dss/isa_validation.md">ASTM NetRID DSS: Submitted ISA Validations</a><br><a href="../../../scenarios/astm/netrid/v19/dss/subscription_simple.md">ASTM NetRID DSS: Subscription Simple</a><br><a href="../../../scenarios/astm/netrid/v19/dss/subscription_validation.md">ASTM NetRID DSS: Subscription Validation</a><br><a href="../../../scenarios/astm/netrid/v19/dss/token_validation.md">ASTM NetRID DSS: Token Validation</a></td>
</tr>
<tr>
<td rowspan="39" style="vertical-align:top;"><a href="../../../requirements/astm/f3411/v22a.md">astm<br>.f3411<br>.v22a</a></td>
<td rowspan="40" style="vertical-align:top;"><a href="../../../requirements/astm/f3411/v22a.md">astm<br>.f3411<br>.v22a</a></td>
<td><a href="../../../requirements/astm/f3411/v22a.md">DSS0010</a></td>
<td>Implemented</td>
<td><a href="../../../scenarios/astm/netrid/v22a/dss/token_validation.md">ASTM NetRID DSS: Token Validation</a></td>
Expand Down Expand Up @@ -297,6 +302,11 @@
<td>Implemented</td>
<td><a href="../../../scenarios/astm/netrid/v22a/dss_interoperability.md">ASTM F3411-22a NetRID DSS interoperability</a></td>
</tr>
<tr>
<td><a href="../../../requirements/astm/f3411/v22a.md">DSS0130,2,e</a></td>
<td>Implemented</td>
<td><a href="../../../scenarios/astm/netrid/v22a/dss_interoperability.md">ASTM F3411-22a NetRID DSS interoperability</a></td>
</tr>
<tr>
<td><a href="../../../requirements/astm/f3411/v22a.md">DSS0130,2,f</a></td>
<td>Implemented</td>
Expand Down Expand Up @@ -369,7 +379,7 @@
</tr>
<tr>
<td><a href="../../../requirements/astm/f3411/v22a.md">DSS0130,A2-6-1,3c</a></td>
<td>Implemented + TODO</td>
<td>Implemented</td>
<td><a href="../../../scenarios/astm/netrid/v22a/dss_interoperability.md">ASTM F3411-22a NetRID DSS interoperability</a></td>
</tr>
<tr>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
<th><a href="../README.md#checked-in">Checked in</a></th>
</tr>
<tr>
<td rowspan="87" style="vertical-align:top;"><a href="../../requirements/astm/f3411/v22a.md">astm<br>.f3411<br>.v22a</a></td>
<td rowspan="88" style="vertical-align:top;"><a href="../../requirements/astm/f3411/v22a.md">astm<br>.f3411<br>.v22a</a></td>
<td><a href="../../requirements/astm/f3411/v22a.md">DSS0010</a></td>
<td>Implemented</td>
<td><a href="../../scenarios/astm/netrid/v22a/dss/token_validation.md">ASTM NetRID DSS: Token Validation</a></td>
Expand Down Expand Up @@ -102,6 +102,11 @@
<td>Implemented</td>
<td><a href="../../scenarios/astm/netrid/v22a/dss_interoperability.md">ASTM F3411-22a NetRID DSS interoperability</a></td>
</tr>
<tr>
<td><a href="../../requirements/astm/f3411/v22a.md">DSS0130,2,e</a></td>
<td>Implemented</td>
<td><a href="../../scenarios/astm/netrid/v22a/dss_interoperability.md">ASTM F3411-22a NetRID DSS interoperability</a></td>
</tr>
<tr>
<td><a href="../../requirements/astm/f3411/v22a.md">DSS0130,2,f</a></td>
<td>Implemented</td>
Expand Down Expand Up @@ -174,7 +179,7 @@
</tr>
<tr>
<td><a href="../../requirements/astm/f3411/v22a.md">DSS0130,A2-6-1,3c</a></td>
<td>Implemented + TODO</td>
<td>Implemented</td>
<td><a href="../../scenarios/astm/netrid/v22a/dss_interoperability.md">ASTM F3411-22a NetRID DSS interoperability</a></td>
</tr>
<tr>
Expand Down
9 changes: 7 additions & 2 deletions monitoring/uss_qualifier/suites/uspace/required_services.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
<th><a href="../README.md#checked-in">Checked in</a></th>
</tr>
<tr>
<td rowspan="87" style="vertical-align:top;"><a href="../../requirements/astm/f3411/v22a.md">astm<br>.f3411<br>.v22a</a></td>
<td rowspan="88" style="vertical-align:top;"><a href="../../requirements/astm/f3411/v22a.md">astm<br>.f3411<br>.v22a</a></td>
<td><a href="../../requirements/astm/f3411/v22a.md">DSS0010</a></td>
<td>Implemented</td>
<td><a href="../../scenarios/astm/netrid/v22a/dss/token_validation.md">ASTM NetRID DSS: Token Validation</a></td>
Expand Down Expand Up @@ -103,6 +103,11 @@
<td>Implemented</td>
<td><a href="../../scenarios/astm/netrid/v22a/dss_interoperability.md">ASTM F3411-22a NetRID DSS interoperability</a></td>
</tr>
<tr>
<td><a href="../../requirements/astm/f3411/v22a.md">DSS0130,2,e</a></td>
<td>Implemented</td>
<td><a href="../../scenarios/astm/netrid/v22a/dss_interoperability.md">ASTM F3411-22a NetRID DSS interoperability</a></td>
</tr>
<tr>
<td><a href="../../requirements/astm/f3411/v22a.md">DSS0130,2,f</a></td>
<td>Implemented</td>
Expand Down Expand Up @@ -175,7 +180,7 @@
</tr>
<tr>
<td><a href="../../requirements/astm/f3411/v22a.md">DSS0130,A2-6-1,3c</a></td>
<td>Implemented + TODO</td>
<td>Implemented</td>
<td><a href="../../scenarios/astm/netrid/v22a/dss_interoperability.md">ASTM F3411-22a NetRID DSS interoperability</a></td>
</tr>
<tr>
Expand Down

0 comments on commit 4fa7a58

Please sign in to comment.