From f00902eaf7ab6b2e3a7870b45e94ebd18bc45888 Mon Sep 17 00:00:00 2001
From: Dan Jones <dan.jones@noc.ac.uk>
Date: Tue, 21 Feb 2023 08:46:44 +0000
Subject: [PATCH] refactor: change how call counts are expected

---
 features/adapter_broadcast.feature | 14 ++++++++------
 features/adapter_poll.feature      | 12 +++++++-----
 features/adapter_publish.feature   | 13 ++++++++-----
 3 files changed, 23 insertions(+), 16 deletions(-)

diff --git a/features/adapter_broadcast.feature b/features/adapter_broadcast.feature
index 8063a2a..5672212 100644
--- a/features/adapter_broadcast.feature
+++ b/features/adapter_broadcast.feature
@@ -21,12 +21,13 @@ Feature: Can the adapter broadcast messages?
     Given valid config 
     When the adapter instance is created 
     When the auth method is called 
-    When a mock notify API response is configured to return a 403 error 
+    When a mock notify API response is configured to return a 403 error
     When the broadcast method is called 
     Then an error response is returned with status 403 
     Then the credentials are deleted
     Then the broadcast method was called with is_retry on
-    Then the getAuthorizationHeader method is called 
+    Then the total number of calls to "broadcast" was 2
+    Then the total number of calls to "getAuthorizationHeader" was 2
     
   Scenario: On a retried 403 the message is not retried again
     Given valid config 
@@ -36,8 +37,8 @@ Feature: Can the adapter broadcast messages?
     When the broadcast method is called with is_retry on
     Then an error response is returned with status 403
     Then the credentials are deleted 
-    Then the "broadcast" method is not called again
-
+    Then the total number of calls to "broadcast" was 1
+    
   Scenario: On 503 the message is retried once with the same credentials 
     Given valid config 
     When the adapter instance is created 
@@ -47,7 +48,8 @@ Feature: Can the adapter broadcast messages?
     Then an error response is returned with status 503 
     Then the credentials are not deleted
     Then the broadcast method was called with is_retry on
-    Then the "getAuthorizationHeader" method is not called again 
+    Then the total number of calls to "broadcast" was 2
+    Then the total number of calls to "getAuthorizationHeader" was 1
     
   Scenario: On a retried 503 the message is not retried again
     Given valid config 
@@ -57,4 +59,4 @@ Feature: Can the adapter broadcast messages?
     When the broadcast method is called with is_retry on
     Then an error response is returned with status 503
     Then the credentials are not deleted 
-    Then the "broadcast" method is not called again
+    Then the total number of calls to "broadcast" was 1
diff --git a/features/adapter_poll.feature b/features/adapter_poll.feature
index 115d04b..bef9538 100644
--- a/features/adapter_poll.feature
+++ b/features/adapter_poll.feature
@@ -50,7 +50,8 @@ Feature: Can the adapter receive messages?
     Then an error response is returned with status 403 
     Then the credentials are deleted
     Then the poll method was called with is_retry on
-    Then the getAuthorizationHeader method is called 
+    Then the total number of calls to "poll" was 2
+    Then the total number of calls to "getAuthorizationHeader" was 1
     
   Scenario: On a retried 403 the message is not retried again
     Given valid config 
@@ -60,8 +61,8 @@ Feature: Can the adapter receive messages?
     When the poll method is called with is_retry on
     Then an error response is returned with status 403
     Then the credentials are deleted 
-    Then the "poll" method is not called again
-
+    Then the total number of calls to "poll" was 1
+  
   Scenario: On 503 the message is retried once with the same credentials 
     Given valid config 
     When the adapter instance is created 
@@ -71,7 +72,8 @@ Feature: Can the adapter receive messages?
     Then an error response is returned with status 503 
     Then the credentials are not deleted
     Then the poll method was called with is_retry on
-    Then the "getAuthorizationHeader" method is not called again 
+    Then the total number of calls to "poll" was 2
+    Then the total number of calls to "getAuthorizationHeader" was 1
     
   Scenario: On a retried 503 the message is not retried again
     Given valid config 
@@ -81,5 +83,5 @@ Feature: Can the adapter receive messages?
     When the poll method is called with is_retry on
     Then an error response is returned with status 503
     Then the credentials are not deleted 
-    Then the "poll" method is not called again
+    Then the total number of calls to "poll" was 1
   
\ No newline at end of file
diff --git a/features/adapter_publish.feature b/features/adapter_publish.feature
index cd17cb5..6675b4e 100644
--- a/features/adapter_publish.feature
+++ b/features/adapter_publish.feature
@@ -26,7 +26,8 @@ Feature: Can the adapter publish messages?
     Then an error response is returned with status 403 
     Then the credentials are deleted
     Then the publish method was called with is_retry on
-    Then the getAuthorizationHeader method is called 
+    Then the total number of calls to "publish" was 2
+    Then the total number of calls to "getAuthorizationHeader" was 2  
     
   Scenario: On a retried 403 the message is not retried again
     Given valid config 
@@ -36,9 +37,9 @@ Feature: Can the adapter publish messages?
     When the publish method is called with is_retry on
     Then an error response is returned with status 403
     Then the credentials are deleted 
-    Then the "publish" method is not called again
+    Then the total number of calls to "publish" was 1
   
-  Scenario: On 503 the message is retried once with new credentials 
+  Scenario: On 503 the message is retried once with the same credentials 
     Given valid config 
     When the adapter instance is created 
     When the auth method is called 
@@ -47,7 +48,8 @@ Feature: Can the adapter publish messages?
     Then an error response is returned with status 503 
     Then the credentials are not deleted
     Then the publish method was called with is_retry on
-    Then the "getAuthorizationHeader" method is not called again 
+    Then the total number of calls to "publish" was 2
+    Then the total number of calls to "getAuthorizationHeader" was 1
     
   Scenario: On a retried 503 the message is not retried again
     Given valid config 
@@ -57,4 +59,5 @@ Feature: Can the adapter publish messages?
     When the publish method is called with is_retry on
     Then an error response is returned with status 503
     Then the credentials are not deleted 
-    Then the "publish" method is not called again
+    Then the total number of calls to "publish" was 1
+  
\ No newline at end of file
-- 
GitLab