Test Case Document
Diameter Base Protocol API/Stack
Version 1.0
Test Case Document
Objective
Product Overview
Diameter is the AAA protocol selected by 3GPP to provide Authentication,
Authorization and Accounting (AAA) services in the IMS. The Diameter Base Protocol
[RFC 3588] contains the basic functionality required for AAA model and is mandated
in all Diameter nodes. The Diameter applications are extensions of the basic
functionality that are tailored for a particular usage of Diameter in a particular
environment. Diameter runs over reliable transport protocols, TCP and SCTP. This
diameter project will implement IP Multimedia Subsystems Home Subscriber Server
supporting Cx/DX [2] and Sh [3] interfaces as defined by 3GPP standards, Online
Charging System (OCS) [4] and Offline Charging System (CDF&CGF). This document
specifically describes the Diameter Base Protocol API. The Diameter Base Protocol
implementation (API) will address all the requirements mandated by the IETF RFC
3588.
The following components in IMS will use Diameter Base Protocol API in their
implementation.
Home Subscriber Server (HSS)
Subscriber Locator Function (SLF)
Charging Data Function (CDF) &
Online Charging System (OCF).
- ii -
Test Case Document
Table of Contents
1. Introduction ................................................................................................................... 1
1.1 Purpose and Scope of Test Plan ................................................................................ 1
2. Relevant Related Document List .................................................................................. 1
3. Testing Strategy/Approach .......................................................................................... 1
3.1 Functional Testing ..................................................................................................... 1
4. Test Cases ....................................................................................................................... 2
4.1 Deployment Architecture Test Cases ....................................................................... 2
4.2 Message Validation Test Cases .............................................................................. 44
4.3 Peer Table Function Validation Test Cases ............................................................ 93
4.4 Realm Table Function Validation Test Cases ......................................................... 99
4.5 Hardware Requirements for testing ........................Error! Bookmark not defined.
4.6 Software Requirements for testing .........................Error! Bookmark not defined.
4.7 Test Report Form (Sample) ......................................Error! Bookmark not defined.
4.8 References ................................................................Error! Bookmark not defined.
- iii -
Test Case Document
Abbreviations
Following are the abbreviations that have been used in the document:
API: Application Program Interface.
AVP: Attribute Value Pair.
-4-
Test Case Document
1.Introduction
1.1 Purpose and Scope of Test Plan
The purpose of this document is to describe and document the test cases for the
Diameter Base Protocol API. This Document only documents the test cases for black
box/functional testing. The test cases included in this document cover the various
Diameter Base Protocol scenerios.
2. Document(s) used an input
Software requirement specification document is used to review requirements. The
Test cases are written with respect to those requirements.
3.Testing Strategy/Approach
The testing strategy used for this project is white box testing black box testing,
regression testing, compliance testing and interoperability testing. The white box
testing will be performed by the development team. The black box testing strategy
and other testing strategies are the responsibility of QA team. The test cases for
black box testing strategy are documented in the current document. Other strategies
will require some compliance tools and third party applications that will be used by
QA team. One such test suite is Seagull. The QA team has customized and
configured seagull for testing of Diameter Base Protocol API/Stack compliance and
functionality in black box fashion. The Seagull test suite can be found in the
Diameter Project folder on the CD delivered with this milestone.
3.1 Functional Testing
Functional testing is requirement based testing. Tests verify that the system behaves
correctly from the user / business perspective and functions are according to the
requirements, models or any other design paradigm used to specify the application.
- 11 -
Test Case Document
CC4GTI
4.Test Cases
Product: Diameter Server Version 1.0
4.1. Deployment Architecture Test Cases
Test Case # 01
Test Case Title
Test Case ID
Purpose
Scenario
Message Flow from OriginHost to DestinationHost in a Deployment
Architecture having one RelayAgent
0100
To test that the message should be received successfully by the
Destination Host. The Destination Host must return a Result_Code of
DIAMETER_SUCCESS.
The message delivery from Origin Host to destination Host, when there is
only one Relay Agent in the Route traversed by the message.
Origin Host Name:
Destination Host Name:
Destination Realm Name:
Relay Agent Name :
Pre-requisite
OriginServer.ims.com
DestinationHost.ims.com
DestinationRealm.ims.com
RelyAgentOne.ims.com
Peer Table At
OriginServer.ims.com
Realm Table At
OriginServer.ims.com
Entry No. 01:
Host ID : RelyAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : RELAY
Server ID/s :
RelyAgentOne.ims.com
Static/Dynamic : Static
Expiry Time :
-2-
Test Case Document
Input Data
Steps
Expected Results
Post Condition
CC4GTI
Peer Table at
RlayAgentOne.ims.com
Realm Table at
RelayAgentOne.ims.com
Entry No. 01:
Host ID : OriginServer.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : RELAY
Server ID/s : DestinationHost.ims.com
Static/Dynamic : Static
Expiry Time :
Entry No. 02:
Host ID : DestinationHost.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Origin Host AVP :
OriginServer.ims.com
Destination Host AVP:
DestinationHost.ims.com
Destination Realm AVP:
DestinationRealm.ims.com
Application ID AVP :
1234
1. Send a Massage from Origin Host to Destination Host
2. Receive the Message reply from the Destination Host
In this case the message will be successfully received by the
DestinationHost.ims.com .The Destination Host should return a
message with R bit Clear having Result_Code of DIAMETER_SUCCESS
to OriginServer.ims.com.
Diameter Server must be in message receiving state
-3-
Test Case Document
CC4GTI
Test Case # 02
OriginHostServer.ims.com
DestinationHostServer.ims.com
RelayAgentOne.ims.com
ProxyAgentOne.ims.com
Test Case 02
Deployment Architecture
Test Case Title
Test Case ID
Purpose
Scenario
Message Flow from OriginHost to DestinationHost in a
Deployment Architecture having one RelayAgent and one
ProxyAgent
0101
To test that the message should be received successfully by the
Destination Host with the below given Peer Table and Realm
Table configurations. The Destination Host must return a
Result_Code of DIAMETER_SUCCESS.
The message delivery from Origin Host to destination Host ,
when there is one Relay Agent and one Proxy Agent in the
route traversed by the message.
Pre-requisite
Origin Host Name:
Destination Host Name:
Destination Realm Name:
Relay Agent Name :
Proxy Agent Name:
OriginServer.ims.com.ims.com
DestinationHost.ims.com.ims.com
DestinationRealm.ims.com
RelyAgentOne.ims.com
ProxyAgentOne.ims.com
Peer Table at
OriginServer.ims.com
Realm Table at
OroginServer.ims.com
Entry No. 01:
Host ID :
RelayAgentOne.ims.com
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : RELAY
Server ID/s :
RelyAgentOne.ims.com
Static/Dynamic : Static
Expiry Time :
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
-4-
Test Case Document
CC4GTI
Peer Table at
Realm Table at
RlayAgentOne.ims.com
RelayAgentOne.ims.com
Entry No. 01:
Host ID :
ProxyAgentOne.ims.com
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : RELAY
Server ID/s : ProxyAgentOne.ims.com
Static/Dynamic : Static
Expiry Time :
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 02:
Host ID : OriginServer.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Peer Table At
ProxyyAgentOne.ims.com
Realm Table at
ProxyAgentOne.ims.com
Entry No. 01:
Host ID :
RelayAgentOne.ims.com
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : RELAY
Server ID/s :
DestinationHost.ims.com
Static/Dynamic : Static
Expiry Time :
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 02:
Host ID :
DestinationHost.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Input Data
Origin Host AVP:
Destination Host AVP:
Destination Realm AVP:
Application ID AVP:
Steps
1.
2.
OriginServer.ims.com
DestinationHost.ims.com
DestinationRealm.ims.com
1234
Send a Massage from Origin Host to Destination Host
Receive the Message reply from the Destination Host
-5-
Test Case Document
CC4GTI
Expected Results
In this case the message will be successfully received by the
DestinationHost.ims.com .The Destination Host should
return a message with R bit Clear having Result_Code of
DIAMETER_SUCCESS to OriginServer.ims.com.
Post Condition
The Diameter Server must be in a state to receive message
Test Case # 03
OriginHostServer.ims.com
DestinationHostServer.ims.com
RelayAgentOne.ims.com
RedirectAgentOne.ims.com
Test Case 03
Deployment Architecture
Test Case Title
Test Case ID
Purpose
Scenario
Message Flow from OriginHost to DestinationHost in a
Deployment Architecture having one RelayAgent and one
RedirectAgent
0102
To test that the message should be received successfully by the
Destination Host with the below given Peer Table and Realm
Table configurations. The Destination Host must return a
Result_Code of DIAMETER_SUCCESS.
Message delivery from Origin Host to destination Host, when
there is one Relay Agent and one Redirect Agent in the Route
traversed by the message.
Pre-requisite
Origin Host Name:
OriginServer.ims.com
Destination Host Name:
DestinationHost.ims.com
Destination Realm Name: DestinationRealm.ims.com
Relay Agent Name :
RelyAgentOne.ims.com
Redirect Agent Name:
RedirectAgentOne.ims.com
Peer Table at
OriginServer.ims.com
Realm Table at
RelayAgentOne.ims.com
Entry No. 01:
Host ID : RelayAgentOne.ims.com
Entry No. 01
Realm Name :
-6-
Test Case Document
CC4GTI
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
DestinationRealm.ims.com
Application ID : 1234
Local Action : RELAY
Server ID/s :
RelayAgentOne.ims.com
Static/Dynamic : Static
Expiry Time :
Peer Table at
RlayAgentOne.ims.com
Realm Table at
RelayAgentOne.ims.com
Entry No. 01:
Host ID :
RedirectAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : RELAY
Server ID/s :
RedirectAgentOne.ims.com
Static/Dynamic : Static
Expiry Time :
Entry No. 02:
Host ID : OriginServer.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Peer Table at
RedirectAgentOne.ims.com
Realm Table at
RedirectAgentOne.ims.com
Entry No. 01:
Host ID : RelayAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : REDIRECT
Server ID/s :
DestinationHost.ims.com
Static/Dynamic : Static
Expiry Time :
Input Data
Origin Host AVP:
OriginServer.ims.com
Destination Host AVP: DestinationHost.ims.com
Destination Realm AVP: DestinationRealm.ims.com
-7-
Test Case Document
CC4GTI
Application ID AVP:
Steps
Expected Results
Post Condition
1234
1.
2.
Send a Massage from Origin Host to Destination Host
Receive the Message reply from the Destination Host
1. When the message is received by
RedirectAgentOne.ims.com from
RelayAgentOne.ims.com, the
RedirectAgentOne.ims will return the message with
E bit set and a Result_Code of
DIAMETER_REDIRECT_INDICATION .The
message must contain an additional Redirect-Host
AVP containing DestinationHost.ims.com.
2. Since the RelayAgentOne.ims.com doesnt have
DestinationHost.ims.com in its peer table, therefore
it has to create connection with
DestinationHost.ims.com, and also place it in its peer
table.
3. In this case the message will be successfully received
by the DestinationHost.ims.com .The Destination
Host must return a message with R bit clear having
Result_Code with DIAMETER_SUCCESS to
OriginServer.ims.com.
The Diameter Server must be in a state to receive message
Test Case # 04
OriginHostServer.ims.com
DestinationHostServer.ims.com
ProxyAgentOne.ims.com
Test Case 04
Deployment Architecture
Test Case Title
Test Case ID
Purpose
Scenario
Message Flow from OriginHost to DestinationHost in a Deployment
Architecture having one ProxyAgent.
0103
To test that the message should be received successfully by the Destination
Host with the below given Peer Table and Realm Table configurations. The
Destination Host must return a Result_Code of DIAMETER_SUCCESS.
The message delivery from Origin Host to destination Host, when there is
only one Proxy Agent in the Route traversed by the message.
-8-
Test Case Document
CC4GTI
Pre-requisite
Origin Host Name:
Destination Host Name:
Destination Realm Name:
OriginServer.ims.com
DestinationHost.ims.com
DestinationRealm.ims.com
Peer Table at
OriginServer.ims.com
Realm Table at
OriginServer.ims.com
Entry No. 01:
Host ID : ProxyAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : RELAY
Server ID/s :
ProxyAgentOne.ims.com
Static/Dynamic : Static
Expiry Time :
Peer Table at
ProxyAgentOne.ims.com
Realm Table at
ProxyyAgentOne.ims.com
Entry No. 01:
Host ID : OriginServer.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : PROXY
Server ID/s:
DestinationHost.ims.com
Static/Dynamic : Static
Expiry Time :
Entry No. 02:
Host ID : DestinationHost..ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Input Data
Steps
Expected
Results
Origin Host AVP:
Destination Host AVP:
Destination Realm AVP:
Application ID AVP:
OriginServer.ims.com
DestinationHost.ims.com
DestinationRealm.ims.com
1234
1. Send a Massage from Origin Host to Destination Host
2. Receive the Message reply from the Destination Host
The
message
will
be
successfully
received
by
the
DestinationHost.ims.com .The Destination Host must return a message
with R bit Clear having Result_Code of DIAMETER_SUCCESS to
OriginServer.ims.com.
-9-
Test Case Document
Post Condition
CC4GTI
The Diameter Server must be in a state to receive message
Test Case # 05
OriginHostServer.ims.com
DestinationHostServer.ims.com
ProxyAgentOne.ims.com
RelayAgentOne.ims.com
Test Case 05
Deployment Architecture
Test Case Title
Test Case ID
Purpose
Scenario
Message Flow from OriginHost to DestinationHost in a
Deployment Architecture having one ProxyAgent and one
RelayAgent.
0104
To test that the message should be received successfully by the
Destination Host with the below given Peer Table and Realm
Table configurations. The Destination Host must return a
Result_Code of DIAMETER_SUCCESS.
The message delivery from Origin Host to destination Host,
when there is one Proxy Agent and one Relay Agent in the
Route traversed by the message.
Origin Host Name:
Destination Host Name:
Destination Realm Name:
Proxy Agent Name:
Relay Agent Name :
Pre-requisite
OriginServer.ims.com
DestinationHost.ims.com
DestinationRealm.ims.com
ProxyAgentOne.ims.com
RelayAgentOne.ims.com
Peer Table at
OriginServer.ims.com
Realm Table at
OriginServer.ims.com
Entry No. 01:
Host ID :
ProxyAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : RELAY
Server ID/s:
ProxyAgentOne.ims.com
Static/Dynamic : Static
- 10 -
Test Case Document
CC4GTI
Expiry Time :
Peer Table at
ProxyAgentOne.ims.com
Realm Table at
ProxyAgentOne.ims.com
Entry No. 01:
Host ID : OriginServer.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : PROXY
Server ID/s:
RelayAgentOne.ims.com
Static/Dynamic : Static
Expiry Time :
Entry No. 02:
Host ID :
RelayAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Peer Table at
RlayAgentOne.ims.com
Realm Table at
RelayAgentOne.ims.com
Entry No. 01:
Host ID :
ProxyAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : PROXY
Server ID/s :DestinationHost.ims.com
Static/Dynamic : Static
Expiry Time
Entry No. 02:
Host ID :
DestinationHost.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Input Data
Origin Host AVP:
Destination Host AVP:
Destination Realm AVP:
- 11 -
OriginServer.ims.com
DestinationHost.ims.com
DestinationRealm.ims.com
Test Case Document
CC4GTI
Application ID AVP:
Steps
Expected Results
Post Condition
1234
1. Send a Massage from Origin Host to Destination Host
2. Receive the Message reply from the Destination Host
The message will be successfully received by the
DestinationHost.ims.com .The the Destination Host must
return a message with R bit Clear having Result_Code of
DIAMETER_SUCCESS.
The Diameter Server must be in a state to receive message
Test Case # 06
OriginHostServer.ims.com
DestinationHostServer.ims.com
ProxyAgentOne.ims.com
RedirectAgentOne.ims.com
Test Case 06
Deployment Architecture
Test Case Title
Test Case ID
Purpose
Scenario
Message Flow from OriginHost to DestinationHost in a
Deployment Architecture having one ProxyAgent and one
RedirectAgent.
0105
To test that the message should be received successfully by the
Destination Host with the below given Peer Table and Realm
Table configurations. The Destination Host must return a
Result_Code of DIAMETER_SUCCESS.
The message delivery from Origin Host to destination Host ,
when there are Proxy Agent and Redirect Agent in the
traversed Route
Pre-requisite
Origin Host Name:
Destination Host Name:
Destination Realm Name:
Proxy Agent Name:
Redirect Agent Name :
Peer Table at
- 12 -
OriginServer.ims.com
DestinationHost.ims.com
DestinationRealm.ims.com
ProxyAgentOne.ims.com
RedirectAgentOne.ims.com
Realm Table at
Test Case Document
CC4GTI
OriginServer.ims.com
OriginServer.ims.com
Entry No. 01:
Host ID : ProxyAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : RELAY
Server ID/s :
ProxyAgentOne.ims.com
Static/Dynamic : Static
Expiry Time :
Peer Table at
ProxyAgentOne.ims.com
Realm Table at
ProxyAgentOne.ims.com
Entry No. 01:
Host ID : OriginServer.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : RELAY
Server ID/s :
RedirectAgentOne.ims.com
Static/Dynamic : Static
Expiry Time :
Entry No. 02:
Host ID :
RedirectAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 03:
Host ID: DestinationHost..ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Peer Table at
RedirectAgentOne.ims.com
Realm Table at
RedirectAgentOne.ims.com
Entry No. 01:
Host ID : ProxyAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : REDIRECT
- 13 -
Test Case Document
CC4GTI
TLS Enabled :
Server ID/s:
DestinationHost.ims.com
Static/Dynamic : Static
Expiry Time :
Input Data
Origin Host AVP:
Destination Host AVP
Destination Realm AVP:
Application ID AVP:
Steps
Expected Results
Post Condition
1.
2.
OriginServer.ims.com
DestinationHost.ims.com:
DestinationRealm.ims.com
1234
Send a Massage from Origin Host to Destination Host
Receive the Message reply from the Destination Host and
check it for the expected results
1. When the message is received by the
RedirectAgentOne.ims.com AgentOne.ims.com. Then
it must return a message with E bit set and Result_Code of
DIAMETER_REDIRECT_INDICATION to
RelayAgentOne.ims.com .The message must contain an
additional Redirect-Host AVP containing
OriginServer.ims.com.
2. The message will be successfully received by
DestinationHost.ims.com .The the Destination Host
must return a message with R bit Clear having
Result_Code of DIAMETER_SUCCESS.
The Diameter Server must be in a state to receive message
- 14 -
Test Case Document
CC4GTI
Test Case # 07
DestinationHostServer.ims.com
OriginHostServer.ims.com
ProxyAgentOne.ims.com
RedirectAgentOne.ims.com
ProxyAgentTwo.ims.com
Test Case 07
Deployment Architecture
Test Case Title
Test Case ID
Purpose
Scenario
Message Flow from OriginHost to DestinationHost in a
Deployment Architecture having Two ProxyAgents and one
RedirectAgent
0106
To test that the message should be received successfully by the
Destination Host with the given Peer Table and Realm Table
configurations. The Destination Host must return a
Result_Code DIAMETER_SUCCESS.
The message delivery from Origin Host to destination Host ,
when there are two Proxy Agents and Redirect Agent in the
traversed Route
Origin Host Name:
Destination Host Name:
Destination Realm Name:
Proxy Agent Name:
Proxy Agent Name:
Redirect Agent Name :
Pre-requisite
OriginServer.ims.com
DestinationHost.ims.com
DestinationRealm.ims.com
ProxyAgentOne.ims.com
ProxyAgentTwo.ims.com
RedirectAgentOne.ims.com
Peer Table at
OriginServer.ims.com
Realm Table at
OdiginServer.ims.com
Entry No. 01:
Host ID : ProxyAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : RELAY
Server ID/s
:ProxyAgentOne.ims.com
- 15 -
Test Case Document
CC4GTI
Static/Dynamic : Static
Expiry Time :
Peer Table at
ProxyAgentOne.ims.com
Realm Table at
ProxyAgentOne.ims.com
Entry No. 01:
Host ID : OriginServer.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : PROXY
Server ID/s:
ProxyAgentTwo.ims.com
Static/Dynamic : Static
Expiry Time :
Entry No. 02:
Host ID : ProxyAgentTwo.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Peer Table at
ProxyyAgentTwo.ims.com
Realm Table at
ProxyyAgentTwo.ims.com
Entry No. 01:
Host ID : ProxyAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : PROXY
Server ID/s :
RedirectAgentOne.ims.com
Static/Dynamic : Static
Expiry Time :
Entry No. 02:
Host ID :
RedirectAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Peer Table at
RedirectAgentOne.ims.com
Realm Table at
RedirectAgentOne.ims.com
Entry No. 01:
Host ID :
RedirectAgentTwo.ims.com
Entry No. 01
Realm Name :
DestinationRealm.ims.com
- 16 -
Test Case Document
CC4GTI
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Application ID : 1234
Local Action : PROXY
Server ID/s :
DestinationHost.ims.com
Static/Dynamic : Static
Expiry Time :
Input Data
Origin Host AVP:
Destination Host AVP:
Destination Realm AVP:
Application ID AVP:
Steps
OriginServer.ims.com
DestinationHost.ims.com
DestinationRealm.ims.com
1234
1.
2.
Expected Results
Post Condition
Send a Massage from Origin Host to Destination Host
Receive the Message reply from the Destination Host and
check it for the expected results
1. When the message is received by the
RedirectAgentOne.ims.com from
ProxyAgentOne.ims.com. Then it must return a message
with E bit set and Result_Code of
DIAMETER_REDIRECT_INDICATION to
ProxyAgentOne.ims.com .The message must contain an
additional Redirect-Host AVP containing
DestinationHost.ims.com.
2. Finally the message will be successfully received by the
DestinationHost.ims.com .The the Destination Host must
return a message of R bit Clear having Result_Code of
DIAMETER_SUCCESS to OriginServer.ims.com.
The Diameter Server must be in a state to receive message
Test Case # 08
DestinationHostServer.ims.com
OriginHostServer.ims.com
ProxyAgentOne.ims.com
RedirectAgentOne.ims.com
ProxyAgentTwo.ims.com
Test Case 08
Deployment Architecture
- 17 -
Test Case Document
Test Case Title
Test Case ID
Purpose
Scenario
CC4GTI
Message Flow from OriginHost to DestinationHost in a
Deployment Architecture having Two ProxyAgents and one
RedirectAgent.
0107
To test that the message should be received successfully by the
Destination Host with the given Peer Table and Realm Table
configurations. The Destination Host must return a
Result_Code DIAMETER_SUCCESS.
The message delivery from Origin Host to destination Host,
when there are Proxy Agent, Redirect Agent and Proxy Agent
in the Route traversed by the message.
Pre-requisite
Origin Host Name:
Destination Host Name:
Destination Realm Name:
Proxy Agent 1 Name:
Redirect Agent Name :
Proxy Agent 2 Name:
OriginServer.ims.com
DestinationHost.ims.com
DestinationRealm.ims.com
ProxyAgentOne.ims.com
RedirectAgentOne.ims.com
ProxyAgentTwo.ims.com
Peer Table at
OriginServer.ims.com
Realm Table at
OriginServer.ims.com
Entry No. 01:
Host ID :
ProxyAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : RELAY
Server ID/s :
ProxyAgentOne.ims.com
Static/Dynamic : Static
Expiry Time :
Peer Table at
ProxyAgentOne.ims.com
Realm Table at
ProxyAgentOne.ims.com
Entry No. 01:
Host ID : OriginServer.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : PROXY
Server ID/s :
RedirectAgentOne.ims.com
Static/Dynamic : Static
Entry No. 02:
- 18 -
Test Case Document
CC4GTI
Host ID :
ProxyAgentTwo.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Expiry Time :
Peer Table at
RedirectAgentOne.ims.com
Realm Table at
RedirectAgentOne.ims.com
Entry No. 01:
Host ID :
ProxyAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : REDIRECT
Server ID/s :
ProxyAgentTwo.ims.com
Static/Dynamic : Static
Expiry Time :
Peer Table at
ProxyAgentTwo.ims.com
Realm Table at
ProxyAgentTwo.ims.com
Entry No. 01:
Host ID :
ProxyAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : PROXY
Server ID/s :
DestinationHost.ims.com
Static/Dynamic : Static
Expiry Time :
Entry No. 02:
Host ID :
DestinationHost.ims.com StatusT
:
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Input Data
Origin Host AVP:
Destination Host AVP:
Destination Realm AVP:
- 19 -
OriginServer.ims.com
DestinationHost.ims.com
DestinationRealm.ims.com
Test Case Document
CC4GTI
Application ID AVP:
Steps
Expected Results
Post Condition
1234
1.
2.
Send a Massage from Origin Host to Destination Host
Receive the Message reply from the Destination Host and
check it for the expected results
1. When
the
message
is
received
by
RedirectAgentOne.ims.com
from
ProxyAgentOne.ims.com. The RedirectAgentOne.ims
will return the message with E bit set and Result_Code of
DIAMETER_REDIRECT_INDICATION
to
ProxyAgentOne.ims.com .The message must contain an
additional
Redirect-Host
AVP
containing
ProxyAgenttwo.ims.com.
2. The message will be successfully received by the
DestinationHost.ims.com .The the Destination Host
must
return a message with R bit Clear having
Result_Code
of
DIAMETER_SUCCESS
to
OriginServer.ims.com.
The Diameter Server must be in a state to receive message
Test Case # 09
OriginHostServer.ims.com
RedirectAgentOne.ims.com
RelayAgentOne.ims.com
DestinationHostServer.ims.com
Test Case 09
Deployment Architecture
Test Case Title
Test Case ID
Purpose
Message Flow from OriginHost to DestinationHost in a
Deployment Architecture having one RelayAgents and one
RedirectAgent
0108
To test that the message should be received successfully by the
- 20 -
Test Case Document
Scenario
CC4GTI
Destination Host with the given Peer Table and Realm Table
configurations. The Destination Host must return a
Result_Code of DIAMETER_SUCCESS.
The message delivery from Origin Host to destination Host,
when there are two Proxy Agents and one Redirect Agent in the
Route traversed by the message.
Pre-requisite
Origin Host Name:
Destination Host Name:
Destination Realm Name:
Redirect Agent Name :
Relay Agent Name:
OriginServer.ims.com
DestinationHost.ims.com
DestinationRealm.ims.com
RedirectAgentOne.ims.com
RelayAgentOne.ims.com
Peer Table at
OriginServer.ims.com
Realm Table at
OriginServer.ims.com
Entry No. 01:
Host ID :
RedirectAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : RELAY
Server ID/s :
RedirectAgentOne.ims.com
Static/Dynamic : Static
Expiry Time :
Entry No. 02:
Host ID : RelayAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Peer Table at
RedirectAgentOne.ims.com
Entry No. 01:
Host ID : OriginServer.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 02:
- 21 -
Realm Table at
RedirectAgentOne.ims.com
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : REDIRECT
Server ID/s :
RelayAgentOne.ims.com
Static/Dynamic : Static
Expiry Time :
Test Case Document
CC4GTI
Host ID : RelayAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Peer Table at
RlayAgentOne.ims.com
Realm Table at
RelayAgentOne.ims.com
Entry No. 01:
Host ID : OriginServer.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : RELAY
Server ID/s :
DestinationHost.ims.com
Static/Dynamic : Static
Expiry Time :
Entry No. 02:
Host ID : DestinationHost.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
Input Data
Origin Host AVP:
Destination Host AVP :
Destination Realm AVP :
Application ID AVP:
Steps
Expected Results
Post Condition
1.
2.
OriginServer.ims.com
DestinationHost.ims.com
DestinationRealm.ims.com
1234
Send a Massage from Origin Host to Destination Host
Receive the Message reply from the Destination Host and
check it for the expected results
When
the
message
is
received
by
the
RedirectAgentOne.ims.com from OriginServer.ims.com.
Then RedirectAgentOne.ims.com must return the message
with
E
bit
set
and
Result_Code
of
DIAMETER_REDIRECT_INDICATION
to
OriginServer.ims.com .The message must contain an
additional
Redirect-Host
AVP
containing
DestinationHost.ims.com. The Destination Host must return a
message with R bit Clear having Result_Code of
DIAMETER_SUCCESS to OriginServer.ims.com.
The Diameter Server must be in a state to receive message
- 22 -
Test Case Document
CC4GTI
Test Case # 10
OriginHostServer.ims.com
DestinationHostServer.ims.com
RedirectAgentOne.ims.com
RedirectAgentTwo.ims.com
ProxyAgentOne.ims.com
Test Case 10
Deployment Architecture
Test Case Title
Test Case ID
Purpose
Scenario
Message Flow from OriginHost to DestinationHost in a
Deployment Architecture having Two Redirect Agents and
one ProxyAgent
0109
To test that the message should be received successfully by the
Destination Host with the given Peer Table and Realm Table
configurations. The Destination Host must return a
Result_Code of DIAMETER_SUCCESS.
The message delivery from Origin Host to destination Host ,
when there are two Redirect Agents and one Proxy Agent in
the Route traversed by the message
Pre-requisite
Origin Host Name:
Destination Host Name:
Destination Realm Name:
Redirect Agent 1 Name :
Redirect Agent 2 Name :
Proxy Agent Name:
OriginServer.ims.com
DestinationHost.ims.com
DestinationRealm.ims.com
RedirectAgentOne.ims.com
RedirectAgentTwo.ims.com
ProxyAgentOne.ims.com
Peer Table at
OriginServer.ims.com
Realm Table at
OriginServer.ims.com
Entry No. 01:
Host ID :
RedirectAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : REDIRECT
Server ID/s :
- 23 -
Test Case Document
CC4GTI
TLS Enabled :
Entry No. 02:
Host ID :
RedirectAgentTwo.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
RedirectAgentOne.ims.com
Static/Dynamic : Static
Expiry Time :
Peer Table at
RlayAgentOne.ims.com
Realm Table at
RelayAgentOne.ims.com
Entry No. 01:
Host ID : OriginServer.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : PROXY
Server ID/s :
RedirectAgentTwo.ims.com
Static/Dynamic : Static
Expiry Time :
Peer Table at
RedirectAgentOne.ims.com
Realm Table at
RedirectAgentOne.ims.com
Entry No. 01:
Host ID : OriginServer.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : REDIRECT
Server ID/s :
ProxyAgentOne.ims.com
Static/Dynamic : Static
Expiry Time :
Peer Table at
ProxyAgentOne.ims.com
Realm Table at
ProxyAgentOne.ims.com
Entry No. 01:
Host ID : OriginServer.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : PROXY
- 24 -
Test Case Document
CC4GTI
TLS Enabled :
Entry No. 02:
Host ID : DestinationHost.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Server ID/s :
DestinationHost.ims.com
Static/Dynamic : Static
Expiry Time :
Input Data
Origin Host AVP:
OriginServer.ims.com
Destination Host AVP: DestinationHost.ims.com
Destination Realm AVP: DestinationRealm.ims.com
Application ID AVP:
1234
Steps
Expected Results
Post Condition
1.
2.
Send a Massage from Origin Host to Destination Host
Receive the Message reply from the Destination Host and
check it for the expected results
1. When the message is received by RedirectAgentOne.ims
from
OriginServer.ims.com.
The
RedirectAgentOne.ims must return the message with E
bit
set
and
Result_Code
of
DIAMETER_REDIRECT_INDICATION
to
RedirectAgentTwo.ims.com .The message must contain
an
additional
Redirect-Host
AVP
containing
DestinationHost.ims.com.
2. After
receiving
the
message
by
RedirectAgentTwo.ims.com
from
OriginServer.ims.com, the RedirectAgentOne.ims
will return the message with E bit set and Result_Code of
DIAMETER_REDIRECT_INDICATION
to
ProxyAgentOne.ims.com .The message must contain an
additional
Redirect-Host
AVP
containing
DestinationHost.ims.com. The Destination Host should
return a message with R bit Clear having Result_Code of
DIAMETER_SUCCESS to OriginServer.ims.com.
The Diameter Server must be in a state to receive message
Test Case # 11
- 25 -
Test Case Document
CC4GTI
OriginHostServer.ims.com
DestinationHostServer.ims.com
RedirectAgentOne.ims.com
RelayAgentOne.ims.com
ProxyAgentOne.ims.com
Test Case 11
Deployment Architecture
Test Case Title
Test Case ID
Purpose
Scenario
Message Flow from OriginHost to DestinationHost in a
Deployment Architecture having one RedirectAgent, one
ProxyAgent and one RelayAgent.
0110
To test that the message should be received successfully by the
Destination Host with the given Peer Table and Realm Table
configurations. The Destination Host must return a
Result_Code of DIAMETER_SUCCESS.
The message delivery from Origin Host to destination Host ,
when there is a Redirect Agents ,Proxy Agent and Relay Agent
in the Route traversed by the message
Pre-requisite
Origin Host Name:
Destination Host Name:
Destination Realm Name:
Redirect Agent Name :
Proxy Agent Name :
Relay Agent Name:
OriginServer.ims.com
DestinationHost.ims.com
DestinationRealm.ims.com
RedirectAgentOne.ims.com
ProxyAgentOne.ims.com
RelayAgentOne.ims.com
Peer Table at
OriginServer.ims.com
Realm Table at
OriginServer.ims.com
Entry No. 01:
Host ID :
RedirectAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : RELAY
Server ID/s :
RedirectAgentOne.ims.com
Static/Dynamic : Static
Expiry Time :
Entry No. 02:
- 26 -
Test Case Document
CC4GTI
Host ID : ProxyAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Peer Table at
RedirectAgentOne.ims.com
Realm Table at
RedirectAgentOne.ims.com
Entry No. 01:
Host ID : OriginServer.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : PROXY
Server ID/s :
ProxyAgentOne.ims.com
Static/Dynamic : Static
Expiry Time :
Peer Table at
ProxyAgentOne.ims.com
Realm Table at
ProxyyAgentOne.ims.com
Entry No. 01:
Host ID : OriginServer.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : PROXY
Server ID/s :
ProxyAgentOne.ims.com
Static/Dynamic : Static
Expiry Time :
Entry No. 02:
Host ID : RelayAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Peer Table at
RlayAgentOne.ims.com
Realm Table at
RelayAgentOne.ims.com
Entry No. 01:
Host ID : OriginServer.ims.com
StatusT :
Static/Dynamic : Static
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
- 27 -
Test Case Document
CC4GTI
Expiry Time :
TLS Enabled :
Entry No. 02:
Host ID : RelayAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Local Action : PROXY
Server ID/s :
DestinationHost.ims.com
Static/Dynamic : Static
Expiry Time :
Input Data
Origin Host AVP:
Destination Host AVP:
Destination Realm AVP:
Application ID AVP:
Steps
Expected Results
Post Condition
1.
2.
OriginServer.ims.com
DestinationHost.ims.com
DestinationRealm.ims.com
1234
Send a Massage from Origin Host to Destination Host
Receive the Message reply from the Destination Host and
check it for the expected results
1. When
the
message
is
received
by
RedirectAgentOne.ims.com
from
OriginServer.ims.com, the RedirectAgentOne.ims
must return the message with E bit set and Result_Code of
DIAMETER_REDIRECT_INDICATION
to
ProxyAgentOne.ims.com .The message must contain an
additional
Redirect-Host
AVP
containing
DestinationHost.ims.com. The Destination Host must
return a message with R bit Clear having Result_Code of
DIAMETER_SUCCESS.
The Diameter Server must be in a state to receive message
- 28 -
Test Case Document
CC4GTI
Test Case # 12
OriginHostServer.ims.com
ProxyAgentOne.ims.com
DestinationHostServer.ims.com
ProxyAgentTwo.ims.com
RelayAgentTwo.ims.com
RelayAgentOne.ims.com
Test Case 12
Deployment Architecture
Test Case Title
Test Case ID
Purpose
Scenario
Message Flow from OriginHost to DestinationHost in a
Deployment Architecture having two ProxyAgents and two
RelayAgents
0111
To test the LOOP_DETECTION on Diameter Proxy Agent,
when it finds its own name in Route_Record AVP. The
Result_Code ProxyAgentOne.ims.com should return a
Result_Code DIAMETR_LOOP_DETECTED when received
the same Message from ProxyAgentTwo.ims.com as sent
earlier to RelayAgentOne.ims.com.
The message delivery from Origin Host to destination Host,
when there is a Proxy Agent, Relay Agents, Proxy Agent and
Relay Agent in the Route traversed by the message.
Pre-requisite
Origin Host Name:
Destination Host Name:
Destination Realm Name:
Proxy Agent 1 Name :
Relay Agent 1 Name:
Proxy Agent 2 Name :
Relay Agent 2 Name:
Peer Table at
OriginServer.ims.com
- 29 -
OriginServer.ims.com
DestinationHost.ims.com
DestinationRealm.ims.com
ProxyAgentOne.ims.com
RelayAgentOne.ims.com
ProxyAgentTwo.ims.com
RelayAgentTwo.ims.com
Realm Table at
OriginServer.ims.com
Test Case Document
CC4GTI
Entry No. 01:
Host ID : ProxyAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : RELAY
Server ID/s :
ProxyAgentOne.ims.com
Static/Dynamic : Static
Expiry Time :
Peer Table at
ProxyAgentOne.ims.com
Realm Table at
ProxyyAgentOne.ims.com
Entry No. 01:
Host ID : OriginServer.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : PROXY
Server ID/s :
RelayAgentOne.ims.com
Static/Dynamic : Static
Expiry Time :
Entry No. 02:
Host ID : RelayAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Peer Table at
RlayAgentOne.ims.com
Realm Table at
RelayAgentOne.ims.com
Entry No. 01:
Host ID : ProxyAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : PROXY
Server ID/s :
ProxyAgentTwo.ims.com
Static/Dynamic : Static
Expiry Time :
Entry No. 02:
Host ID : ProxyAgentTwo.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
- 30 -
Test Case Document
CC4GTI
Peer Table at
ProxyyAgentTwo.ims.com
Realm Table at
ProxyAgentTwo.ims.com
Entry No. 01:
Host ID : RelayAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : PROXY
Server ID/s :
RelayAgentTwo.ims.com
Static/Dynamic : Static
Expiry Time :
Entry No. 02:
Host ID : RelayAgentTwo.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Peer Table at
RlayAgentTwo.ims.com
Realm Table at
RelayAgentTwo.ims.com
Entry No. 01:
Host ID : ProxyAgentTwo.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : PROXY
Server ID/s :
ProxyAgentOne.ims.com
Static/Dynamic : Static
Expiry Time :
Entry No. 02:
Host ID : ProxyAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 03:
Host ID : DestinationHost.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Input Data
Origin Host AVP:
Destination Host AVP:
Destination Realm AVP:
- 31 -
OriginServer.ims.com
DestinationHost.ims.com
DestinationRealm.ims.com
Test Case Document
CC4GTI
Application ID AVP:
Steps
Expected Results
Post Condition
1234
1.
2.
Send a Massage from Origin Host to Destination Host
Receive the Message reply from the Destination Host and
check it for the expected results
After
successful
receival
of
message
by
the
RelayAgentTwo.ims.com, it will forward the message to
ProxyAgentOne.ims.com according to its Realm Routing
table entry. Since each Agent adds a Record_Rout AVP with its
own name, therefore when the message will be received by
ProxyAgentOne.ims.com it will find its own name in
Record_Route AVP. Hence should return a message with E-bit
set having Result_Code of DIAMETR_LOOP_DETECTED.
The Diameter Server must be in a state to receive message
Test Case # 13
OriginHostServer.ims.com
DestinationHostServer.ims.com
RelayAgentOne.ims.com
ProxyAgentOne.ims.com
Test Case 13
Deployment Architecture
Test Case Title
Test Case ID
Purpose
Scenario
Message Flow from OriginHost to DestinationHost in a
Deployment Architecture having one RelayAgent and one
ProxyAgent .
0112
To test that the message processing on Proxy Agent when it
receives a message for a realm which is unreachable according
to it the given Peer Table and Realm Table configurations. The
ProxyAgentOne.ims.com should return Result_Code of
DIAMETER_REALM_NOT_SERVED
The message delivery from Origin Host to destination Host ,
when there is a Relay Agents and Proxy Agent in the Route
traversed by the message
Pre-requisite
- 32 -
Test Case Document
CC4GTI
Origin Host Name:
Destination Host Name:
Destination Realm Name:
Relay Agent Name :
Proxy Agent Name:
OriginServer.ims.com.ims.com
DestinationHost.ims.com.ims.com
DestinationRealm.ims.com
RelyAgentOne.ims.com
ProxyAgentOne.ims.com
Peer Table at
OriginServer.ims.com
Realm Table at
OriginServer.ims.com
Entry No. 01:
Host ID : RelyAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : RELAY
Server ID/s :
RelyAgentOne.ims.com
Static/Dynamic : Static
Expiry Time :
Peer Table at
RlayAgentOne.ims.com
Realm Table at
RelayAgentOne.ims.com
Entry No. 01:
Host ID : ProxyAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealmTwo.ims.com
Application ID : 1234
Local Action : RELAY
Server ID/s :
ProxyAgentOne.ims.com
Static/Dynamic : Static
Expiry Time :
Entry No. 02:
Host ID : OriginServer.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Peer Table at
ProxyAgentOne.ims.com
Realm Table at
ProxyAgentOne.ims.com
Entry No. 01:
Host ID : RelayAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : RELAY
Server ID/s :
- 33 -
Test Case Document
CC4GTI
Entry No. 02:
Host ID : DestinationHost.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Input Data
Steps
Expected Results
Post Condition
DestinationHost.ims.com
Static/Dynamic : Static
Expiry Time :
Origin Host AVP:
OriginServer.ims.com
Destination Host AVP:
DestinationHost.ims.com
Destination Realm AVP:
DestinationRealm.ims.com
Application ID AVP:
1234
1. Send a Massage from Origin Host to Destination Host
2. Receive the Message reply from the Destination Host and
check it for the expected results
The message with E bit set must return by
ProxyAgent.one.ims.com
with
Result_Code
of
DIAMETER_REALM_NOT_SERVED.
Because
the
ProxyAgentOne.ims.com dont have any entry for
DestinationRealm.ims.com in its Realm Routing Table.
The Diameter Server must be in a state to receive message
Test Case # 14
OriginHostServer.ims.com
DestinationHostServer.ims.com
RelayAgent.ims.com RedirectAgentOne.ims.com
Test Case 14
Deployment Architecture
Test Case Title
Test Case ID
Purpose
Message Flow from OriginHost to DestinationHost in a
Deployment Architecture having one RelayAgent and one
RedirectAgent
0113
To test the message processing by a relay agent when it is
received
for
unsupported
application.
The
RelayAgentOne.ims.com should return a Result_Code of
DIAMETER_APPLICATION_UNSUPPORTED
to
- 34 -
Test Case Document
Scenario
CC4GTI
OriginServer.ims.com.
The message delivery from Origin Host to destination Host ,
when there is a Relay Agent and redirect Agent in the Route
traversed by the message
Pre-requisite
Origin Host Name:
Destination Host Name:
Destination Realm Name:
Relay Agent Name :
Redirect Agent Name:
OriginServer.ims.com
DestinationHost.ims.com
DestinationRealm.ims.com
RelyAgentOne.ims.com
RedirectAgentOne.ims.com
Peer Table at
OriginServer.ims.com
Realm Table at
OriginServer.ims.com
Entry No. 01:
Host ID : RelayAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : RELAY
Server ID/s :
RelayAgentOne.ims.com
Static/Dynamic : Static
Expiry Time :
Peer Table at
RlayAgentOne.ims.com
Realm Table at
RelayAgentOne.ims.com
Entry No. 01:
Host ID :
RedirectAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1235
Local Action : RELAY
Server ID/s :
RedirectAgentOne.ims.com
Static/Dynamic : Static
Expiry Time :
Entry No. 02:
Host ID : OriginServer.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Peer Table at
RedirectAgentOne.ims.com
- 35 -
Realm Table at
RedirectAgentOne.ims.com
Test Case Document
CC4GTI
Entry No. 01:
Host ID :
RelayAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1235
Local Action : REDIRECT
Server ID/s :
DestinationHost.ims.com
Static/Dynamic : Static
Expiry Time :
Input Data
Origin Host AVP:
Destination Host AVP:
Destination Realm AVP:
Application ID AVP:
Steps
Expected Results
Post Condition
OriginServer.ims.com
DestinationHost.ims.com
DestinationRealm.ims.com
1234
1.
2.
Send a Massage from Origin Host to Destination Host
Receive the Message reply from the Destination Host and
check it for the expected results
RelayAgentOne.ims.com must return a message with E bit
set
and
Result_Code
of
DIAMETER_APPLICATION_UNSUPPORTED
to
OriginServer.ims.com.
The Diameter Server must be in a state to receive message
Test Case # 15
OriginHostServer.ims.com
DestinationHostServer.ims.com
ProxyAgentOne.ims.com
Test Case 15
Deployment Architecture
Test Case Title
Test Case ID
Purpose
Message Flow from OriginHost to DestinationHost in a
Deployment Architecture having only one ProxyAgent
0114
To test that the message processing on proxy agent for which
- 36 -
Test Case Document
Scenario
CC4GTI
the proxy agent is unable to deliver according to its Peer Table
and
Realm
Table
configurations.
The
ProxyAgentOne.ims.com should return a Result_Code of
UNABLE_TO_DELIVER to OriginServer.ims.com.
The message delivery from Origin Host to destination Host,
when there is only one Proxy Agent in the Route traversed by
the message.
Pre-requisite
Origin Host Name:
Destination Host Name:
Destination Realm Name:
Proxy Agent Name :
OriginServer.ims.com
DestinationHost.ims.com
DestinationRealm.ims.com
ProxyAgentOne.ims.com
Peer Table at
OriginServer.ims.com
Realm Table at
OriginServer.ims.com
Entry No. 01:
Host ID :
ProxyAgentOne.ims.com StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : RELAY
Server ID/s :
ProxyAgentOne.ims.com
Static/Dynamic : Static
Expiry Time :
Peer Table at
ProxyAgentOne.ims.com
Realm Table at
ProxyyAgentOne.ims.com
Entry No. 01:
Host ID :
OriginServer.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1235
Local Action : PROXY
Server ID/s :
DestinationHostOne.ims.com
Static/Dynamic : Static
Expiry Time :
Entry No. 02:
Host ID :
DestinationHost.ims.com StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
- 37 -
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1236
Local Action : PROXY
Server ID/s :
DestinationHostTwo.ims.com
Test Case Document
CC4GTI
Static/Dynamic : Static
Expiry Time
Input Data
Origin Host AVP:
OriginServer.ims.com
Destination Host AVP:
DestinationHost.ims.com
Destination Realm AVP:
DestinationRealm.ims.com
Application ID AVP:
1234
1. Send a Massage from Origin Host to Destination Host
2. Receive the Message reply from the Destination Host and
check it for the expected results
ProxyAgentOne.ims.com should return a message with E bit
set and Result_Code of UNABLE_TO_DELIVER to
OriginServer.ims.com.
The Diameter Server must be in a state to receive message
Steps
Expected Results
Post Condition
Test Case # 16
OriginHostServer.ims.com
DestinationHostServer.ims.com
ProxyAgentOne.ims.com
RelayAgentOne.ims.com
Test Case 16
Deployment Architecture
Test Case Title
Test Case ID
Purpose
Scenario
Message Flow from OriginHost to DestinationHost in a
Deployment Architecture having one ProxyAgent and one
RelayAgent.
0115
To test that the message processing on proxy agent for which
the proxy agent is unable to deliver according to its Peer Table
and
Realm
Table
configurations.
The
ProxyAgentOne.ims.com should return a Result_Code of
UNABLE_TO_DELIVER to OriginServer.ims.com.
The message delivery from Origin Host to destination Host ,
when there are Proxy Agent and Relay Agent in the Route
traversed by the message
Origin Host Name:
Destination Host Name:
Destination Realm Name:
Proxy Agent Name:
- 38 -
OriginServer.ims.com
DestinationHost.ims.com
DestinationRealm.ims.com
ProxyAgentOne.ims.com
Test Case Document
CC4GTI
Relay Agent Name :
Pre-requisite
RelayAgentOne.ims.com
Peer Table at
OriginServer.ims.com
Realm Table at
OriginServer.ims.com
Entry No. 01:
Host ID :
ProxyAgentOne.ims.com StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : RELAY
Server ID/s :
ProxyAgentOne.ims.com
Static/Dynamic : Static
Expiry Time :
Peer Table at
ProxyAgentOne.ims.com
Realm Table at
ProxyAgentOne.ims.com
Entry No. 01:
Host ID :
OriginServer.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : PROXY
Server ID/s :
RelayAgentOne.ims.com
Static/Dynamic : Static
Expiry Time :
Entry No. 02:
Host ID :
RelayAgentOne.ims.com StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Peer Table at
RlayAgentOne.ims.com
Realm Table at
RelayAgentOne.ims.com
Entry No. 01:
Host ID :
ProxyAgentOne.ims.com StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : PROXY
Server ID/s :
DestinationHost.ims.com
- 39 -
Test Case Document
CC4GTI
Static/Dynamic : Static
Expiry Time :
Entry No. 02:
Host ID :
DestinationHost.ims.com StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Origin Host AVP:
Destination Host AVP:
Destination Realm AVP:
Application ID AVP:
Input Data
Steps
OriginServer.ims.com
DestinationHost.ims.com
Missing
1234
1.
2.
Send a Massage from Origin Host to Destination Host
Receive the Message reply from the Destination Host and
check it for the expected results
ProxyAgentOne.ims.com must return a message with E bit
set and Result_Code of UNABLE_TO_DELIVER to
OriginServer.ims.com.
Expected Results
Post Condition
The Diameter Server must be in a state to receive message
Test Case # 17
OriginHostServer.ims.com
DestinationHostServer.ims.com
ProxyAgentOne.ims.com
RedirectAgentOne.ims.com
Test Case 17
Deployment Architecture
Test Case Title
Test Case ID
Message Flow from OriginHost to DestinationHost in a
Deployment Architecture having one ProxyAgent and one
RedirectAgent.
0116
To test that the message should be received successfully by the
- 40 -
Test Case Document
Purpose
Scenario
CC4GTI
Destination Host with the given Peer Table and Realm Table
configurations. The RedirectAgentOne.ims should return
Result_Code of DIAMETER_UNABLE_TO_DELIVER to
RelayAgentOne.ims.com.
The message delivery from Origin Host to destination Host ,
when there are Proxy Agent and redirect Agent in the Route
traversed by the message
Origin Host Name:
Destination Host Name:
Destination Realm Name:
Proxy Agent Name:
Redirect Agent Name :
Pre-requisite
OriginServer.ims.com
DestinationHost.ims.com
DestinationRealm.ims.com
ProxyAgentOne.ims.com
RedirectAgentOne.ims.com
Peer Table at
OriginServer.ims.com
Realm Table at
OriginServer.ims.com
Entry No. 01:
Host ID :
ProxyAgentOne.ims.com StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : RELAY
Server ID/s :
ProxyAgentOne.ims.com
Static/Dynamic : Static
Expiry Time :
Peer Table at
ProxyAgentOne.ims.com
Realm Table at
ProxyAgentOne.ims.com
Entry No. 01:
Host ID :
OriginServer.ims.com StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : PROXY
Server ID/s :
RedirectAgentOne.ims.com
Static/Dynamic : Static
Expiry Time :
Entry No. 02:
Host ID :
RedirectAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
- 41 -
Test Case Document
CC4GTI
Entry No. 03:
Host ID :
DestinationHost.ims.com StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Input Data
Steps
Expected Results
Post Condition
Peer Table at
RedirectAgentOne.ims.com
Realm Table at
RedirectAgentOne.ims.com
Entry No. 01:
Host ID : ProxyAgentOne.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 1234
Local Action : REDIRECT
Server ID/s :
DestinationHostTwo.ims.com
Static/Dynamic : Static
Expiry Time :
Origin Host AVP:
OriginServer.ims.com
Destination Host AVP:
DestinationHost.ims.com
Destination Realm AVP:
DestinationRealm.ims.com
Application ID AVP:
1234
1. Send a Massage from Origin Host to Destination Host
2. Receive the Message reply from the Destination Host and
check it for the expected results
When
the
message
is
received
by
RedirectAgentOne.ims.com
from
RelayAgentOne.ims.com. TheRedirectAgentOne.ims.com
will return the message with E bit set and Result_Code of
DIAMETER_UNABLE_TO_DELIVER
to
RelayAgentOne.ims.com.
The Diameter Server must be in a state to receive message
Test Case # 18
Test Case Title
Test Case ID
Purpose
To test Local Routing Success
00097
To test the message processing on Diameter server when it
receives a message destined to one of its local application. The
Destination
Host
must
return
a
Result_Code
of
DIAMETER_SUCCESS.
- 42 -
Test Case Document
Scenario
CC4GTI
The message Processing when it is received by the Diameter
Host, destined to one of its supporting local Application.
Pre-requisite
Application CallBackMappingTable at
DestinationHost.ims.com
Entry 01:
Application ID :
12345
Application Call Back : AppOneCallBack()
Entry 02:
Application ID :
12345
Application Call Back : AppTwoCallBack()
Peer Table at
DestinationHost.ims.com
Entry No. 01:
Host ID :
DestinationHost.ims.com
StatusT :
Static/Dynamic : Static
Expiry Time :
TLS Enabled :
Realm Table at
destiantionHost.ims.com
Entry No. 01
Realm Name :
DestinationRealm.ims.com
Application ID : 12345
Local Action :
LOCAL
Server ID/s :
Static/Dynamic : Static
Expiry Time :
Message received with Following Values
Input Data
Destination Host Name :
Destination Realm :
Destination Application ID :
Steps
Expected Results
Post Condition
DestinationHost.ims.com
DestinationRealm.ims.com
12345
Receive the Message reply from the Origin Host
The message will be successfully delivered to the application
having ID 12345, and a DIAMETER_SUCCESS code will be
returned by the DestinationHost.ims.com to the origin Host.
The Diameter Server must be in a state to receive message
- 43 -
Test Case Document
CC4GTI
4.2 Message Validation Test Cases
Test Case # 19
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
To test a Diameter Message with AVP not allowed
00062
To test when a peer receives a CER (Capability Exchange
request Message) containing a Disconnect Cause AVP which is
not allowed in CER Message. In that case the peer should
return DIAMETER_AVP_NOT_ALLOWED error code; The
Failed_AVP AVP must be present in the CEA Message.
Failed_AVP AVP must contain the copy of Disconnect Cause
AVP received in CER Message
Message Validation
Diameter Server must be in message receiving state
CER ( Capability Exchange Request Message)
CER Message Header
Version =
Message Length =
Message R-Bit = Set
Message P-Bit = Clear
Message E-Bit = Clear
Message T-Bit = Clear
Message 5th,6th, 7th,8th = All Clear
Message Command Code = 257
Message Data = Must contain the below given AVP and all
other AVPs defined by the RFC for this message
CER Message AVPs
Disconnect_Cause AVP (Ungrouped)
AVP Header
AVP code
= 273
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag 4th Bit = Clear (
- 44 -
Test Case Document
CC4GTI
which is reserved Bit)
AVP flag 5th,6th,7th,8th Bits =
Clear
AVP Length =
Vendor ID = Empty
AVP data =
DONT_WANT_TO_TALK_TO_YOU
Steps
Expected Results
1.
Send DPR ( Disconnect-Peer Request Message ) to a peer
2.
Receive the DPA ( Disconnect-Peer Answer Message )
from the peer and check it for expected results
CEA ( Capability Exchange Answer Message)
CEA Message Header
Version =
Message Length =
Message R-Bit = Clear
Message P-Bit = Clear
Message E-Bit = Set
Message T-Bit = Clear
Message 5th,6th, 7th,8th = All Clear
Message Command Code = 257
Message data = Must contain the below given AVPs
and all other AVPs defined by the RFC for this
message
CEA Message AVPs
Result_Code AVP (Ungrouped)
AVP Header
AVP code
= 268
AVP Flag V-Bit = Clear
AVP flag M-Bit
= Set
AVP flag P-Bit
= Clear
AVP flag 4th,5th,6th,7th,8th Bits = Clear
AVP Length =
Vendor ID = Empty
AVP data =
DIAMETER_NOT_ALLOWED_AVP
Failed_AVP AVP (Grouped)
AVP Header
AVP code
= 279
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag 4th,5th,6th,7th,8th Bits = Clear
AVP Length =
Vendor ID = Empty
AVP data = Since the AVP is of type
Grouped, hence must contain the following
- 45 -
Test Case Document
CC4GTI
AVPs as Data
Disconnect_Cause AVP (Ungrouped)
AVP Header
AVP code
= 273
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag 4th Bit =
Clear
AVP flag 5th,6th,7th,8th
Bits = Clear
AVP Length =
Vendor ID = Empty
AVP data =
DONT_WANT_TO_TALK_TO
_YOU
Post Condition
The Diameter Server must be in a state to receive message
Test Case # 20
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
To test a message processing other then CER/CEA having
Host_IP_Address AVP
00075
To test that when a diameter peer receives a DPR (Disconnect
Peer Request Message) having Host_IP_Address AVP. In that
case the peer should return Result_Code AVP with error code
DIAMETER_AVP_NOT_ALLOWED. The message must
contain the Failed_AVP of type grouped having a copy of
Host_IP_Address AVP that was received.
Message Validation
Diameter Server Should be in receiving state
DPR ( Disconnect-Peer Request Message)
DPR Message Header
Version =
Message Length =
Message R-Bit = Set
Message P-Bit = Clear
Message E-Bit = Clear
Message T-Bit = Clear
Message 5th,6th, 7th,8th = All Clear
Message Command Code = 282
Message Data = Must contain the below given AVP and all
other AVPs defined by the RFC for this message
- 46 -
Test Case Document
CC4GTI
DPR Message AVPs
Host_IP_Address AVP (Ungrouped)
AVP Header
AVP code
= 257
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag 4th Bit = Clear (
which is reserved Bit)
AVP flag 5th,6th,7th,8th Bits =
Clear
AVP Length =
Vendor ID = Empty
AVP data = OriginHost.ims.com
Steps
Expected Results
1.
Send DPR ( Disconnect-Peer Request Message ) to a peer
2.
Receive the DPA ( Disconnect-Peer Answer Message )
from the peer and check it for expected results
DPA ( Capability Exchange Answer Message)
DPA Message Header
Version =
Message Length =
Message R-Bit = Clear
Message P-Bit = Clear
Message E-Bit = Set
Message T-Bit = Clear
Message 5th,6th, 7th,8th = All Clear
Message Command Code = 282
Message data = Must contain the below given AVPs
and all other AVPs defined by the RFC for this
message
DPA Message AVPs
Result_Code AVP (Ungrouped)
AVP Header
AVP code
= 268
AVP Flag V-Bit = Clear
AVP flag M-Bit
= Set
AVP flag P-Bit
= Clear
AVP flag 4th,5th,6th,7th,8th Bits = Clear
AVP Length =
Vendor ID = Empty
AVP data =
DIAMETER_NOT_ALLOWED_AVP
Failed_AVP AVP (Grouped)
AVP Header
AVP code
= 279
- 47 -
Test Case Document
CC4GTI
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag 4th,5th,6th,7th,8th Bits = Clear
AVP Length =
Vendor ID = Empty
AVP data = Since the AVP is of type
Grouped, hence must contain the following
Host_IP_Address AVPs as Data
Host_IP_Address AVP (Ungrouped)
AVP Header
AVP code = 257
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag 4th Bit Clear
AVP flag 5th,6th,7th,8th Bits = All Clear
AVP Length =
Vendor ID = Empty
AVP data = OriginHost.ims.com
Post Condition
The Diameter Server must be in a state to receive message
Test Case # 21
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
To test peer behavior on receiving an ASR Message with E and
R bits set at the same time
00068
To test that when a peer receives an ASR message having E and
R -Bits Set in its message header. The peer should return a
message ASA with command code 274 having a Result_Code
AVP
containing
an
error
code
DIAMETER_INVALID_HDR_BITS as AVP value.
Message Validation
Diameter Server Should be in receiving state
ASR ( Abort-Session- Request Message)
ASR Message Header
Version =
Message Length =
Message R-Bit = Set
Message P-Bit = Clear
Message E-Bit = Set
Message T-Bit = Clear
Message 5th,6th, 7th,8th = All Clear
Message Command Code = 274
- 48 -
Test Case Document
CC4GTI
Message Data = Must contain all the AVPs defined by RFC for
ASR message
Steps
Expected Results
Post Condition
1.
2.
Send the ASR (Abort-Session- Request Message) to Peer.
Receive ASA ( Abort-Session- Answer Message) from peer
and Check it for expected results.
ASA ( Abort-Session- Answer Message)
ASA Message Header
Version =
Message Length =
Message R-Bit = Clear
Message P-Bit = Clear
Message E-Bit = Clear
Message T-Bit = Clear
Message 5th,6th, 7th,8th = All Clear
Message Command Code = 274
Message Data = Must contain the AVPs Given Below and
AVPs defined by RFC for ASA message
ASA Message AVPs
Result-Code AVP
AVP Header
AVP code
= 268
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag 4th,5th,6th,7th,8th
Bits = Clear
AVP Length =
Vendor ID = Empty
AVP data =
DIAMETER_INVALID_HDR_BITS
The Diameter Server must be in a state to receive message
Test Case # 22
Test Case Title
Test Case ID
Purpose
To test peer behavior on receiving request Message having R
and E bits set in message header and one mandatory AVP
missing
00070
To test the message processing when the peer receives an ASR
message with R and E-Bits set at the same time, and also
Origin-Host mandatory AVP missing. In that case the peer
should return the Result_Code AVP with error code
DIAMETER_INVALID_AVP_BITS. Also there will be no
information about Origin-Host missing AVP in the message.
The answer message will contain info about the first error
- 49 -
Test Case Document
Scenario
Pre-requisite
Input Data
Steps
Expected Results
CC4GTI
encountered.
Message Validation
Diameter Server Should be in receiving state
1.
2.
Send the ASR ( Abort-Session- Request Message) to peer.
Receive ASA ( Abort-Session- Answer Message) from peer
and Check it expected results.
ASA ( Abort-Session- Answer Message)
ASA Message Header
Version =
Message Length =
Message R-Bit = Clear
Message P-Bit = Clear
Message E-Bit = Set
Message T-Bit = Clear
Message 5th,6th, 7th,8th = All Clear
Message Command Code = 274
Message Data = Must contain the Result-Code AVP Given
Below and AVPs defined by RFC for ASA message
ASA Message AVPs
Result-Code AVP
AVP Header
AVP code
= 268
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag 4th,5th,6th,7th,8th Bits = All
Clear
AVP Length =
Vendor ID = Empty
AVP data =
DIAMETER_INVALID_HDR_BITS
Post Condition
The Diameter Server must be in a state to receive message
Test Case # 23
Test Case Title
Test Case ID
Purpose
To test the behavior of a Diameter Peer when it receives a DPR
Message having unknown mandatory AVP
00060
To test that when a peer receives a DPR (Diameter Peer
Disconnect Request Message) with unknown ACK_THE_MSG
AVP, and also the AVP has M-Bit set. In that case the peer
should return Message of Command code 282 with E-Bit set.
- 50 -
Test Case Document
Scenario
Pre-requisite
Input Data
CC4GTI
The message should contain Result_Code AVP with error code
DIAMETER_AVP_UNSUPPORTED. When it received a
message having AVP of unknown code with M bit set. The
message with this error code must contain Failed_AVP AVP of
type grouped. The Failed_AVP AVP must include a copy of
ACK_THE_MSG AVP that was received by the peer.
Message Validation
Diameter Server Should be in receiving state
DPR ( Disconnect-Peer Request Message)
DPR Message Header
Version =
Message Length =
Message R-Bit = Set
Message P-Bit = Clear
Message E-Bit = Clear
Message T-Bit = Clear
Message 5th,6th, 7th,8th = All Clear
Message Command Code = 282
Message Data = Must contain the below given AVP and all
other AVPs defined by the RFC for this message
DPR Message AVPs
ACK_AVP AVP (Ungrouped)
AVP Header
AVP code
= 600
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag 4th Bit = Clear ( which is
reserved Bit)
AVP flag 5th,6th,7th,8th Bits = Clear
AVP Length =
Vendor ID = Empty
AVP data = ACK_THE_MSG
Steps
Send DPR (Disconnect-Peer Request Message) to a peer .
Receive the DPA ( Disconnect-Peer Answer Message ) from
the peer and check it for expected results
Expected Results
DPA ( Capability Exchange Answer Message)
DPA Message Header
Version =
Message Length =
Message R-Bit = Clear
Message P-Bit = Clear
Message E-Bit = Set
Message T-Bit = Clear
Message 5th,6th, 7th,8th = All Clear
- 51 -
Test Case Document
CC4GTI
Message Command Code = 282
Message data = Must contain the below given AVPs and all
other AVPs defined by the RFC for this message
DPA Message AVPs
Result_Code AVP (Ungrouped)
AVP Header
AVP code
= 268
AVP Flag V-Bit = Clear
AVP flag M-Bit
= Set
AVP flag P-Bit
= Clear
AVP flag 4th,5th,6th,7th,8th Bits = Clear
AVP Length =
Vendor ID = Empty
AVP data =
DIAMETER_AVP_UNSUPPORTED
Failed_AVP AVP (Grouped)
AVP Header
AVP code
= 279
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag 4th,5th,6th,7th,8th Bits = Clear
AVP Length =
Vendor ID = Empty
AVP Data = since it is grouped AVP , hence
must contain the AVP given below.
ACK_AVP AVP (Ungrouped)
AVP Header
AVP code
= 600
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag 4th Bit =
Clear ( which is
reserved Bit)
AVP flag 5th,6th,7th,8th
Bits = Clear
AVP Length =
Vendor ID = Empty
AVP data = ACK_THE_MSG
Post Condition
The Diameter Server must be in a state to receive message
Test Case # 24
- 52 -
Test Case Document
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
CC4GTI
To test the behavior of a diameter agent when it receives a
message ACR/ACA with P bit clear, but having
Destination_Realm AVP
00078
To test that when a diameter agent receives an ACR or ACA
message with P-Bit clear but having Destination-Realm AVP. In
that case the Diameter agent should return a message of
command code 271 with E bit set. The message should contain
the
Result_Code
AVP
with
error
code
DIAMETER_AVP_NOT_ALLOWED. Also the Failed_AVP
AVP of type grouped must be included in the message.
Failed_AVP should contain a copy of Destination_Realm AVP
that was received in a message.
Message Validation
Diameter Server Should be in receiving state
ACR ( Accounting Request Message)
ACR Message Header
Version =
Message Length =
Message R-Bit = Set (Must)
Message P-Bit = Clear ( Must)
Message E-Bit = Clear ( Must)
Message T-Bit = Clear (Optional)
Message 5th,6th, 7th,8th = All Clear
Message Command Code = 271
Message Data = Must contain the below given AVPs As
message data and other AVPs defined by RFC for the Message
ACR (Accounting Request Message AVPs)
Destination-Realm AVP
AVP Header
AVP code
= 283
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag 4th,5th,6th,7th,8th Bits = Clear
AVP Length =
Vendor ID = Empty
AVP data = DestinationRealm.ims.com
Steps
1.
Send ACR (Accounting- Request Message ) to a peer
2.
Expected Results
Receive ACA (Accounting- Answer Message) from the
peer and check it for expected results
ACA ( Accounting Answer Message)
ACA Message Header
Version =
- 53 -
Test Case Document
CC4GTI
Message Length =
Message R-Bit = Clear (Must)
Message P-Bit = Clear ( Must)
Message E-Bit = Set ( Must)
Message T-Bit = Clear (Optional)
Message 5th,6th, 7th,8th = All Clear
Message Command Code = 271
Message data = Must contain the blew given AVPs as Message
data and other AVPs defined by RFC for this message.
ACA Message AVPs
Result_Code AVP ( Ungrouped )
AVP Header
AVP code
= 268
AVP Flag V-Bit = Clear ( Must)
AVP flag M-Bit = Set (Must)
AVP flag P-Bit = Clear ( Optional)
AVP flag 4th,5th,6th,7th,8th Bits = Clear
( Must)
AVP Length =
Vendor ID = Default
AVP data =
DIAMETER_AVP_NOT_ALLOWED
Failed_AVP AVP ( Grouped)
AVP Header
AVP code = 279
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag 4th,5th,6th,7th,8th Bits = Clear
AVP Length =
Vendor ID = Empty
AVP data = since it is grouped AVP so must
contain an Origin-Host AVP as given below
Destination-Realm AVP
AVP Header
AVP code
= 283
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag
4th,5th,6th,7th,8th Bits
= Clear
AVP Length =
Vendor ID = Empty
AVP data =
DestinationRealm.ims.com
- 54 -
Test Case Document
Post Condition
CC4GTI
The Diameter Server must be in a state to receive message
Test Case # 25
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
Steps
Expected Results
To test the behavior of Diameter peer when it receives ACR
message having P bit set in its header but missing
Destination_Realm AVP
00077
To test when a diameter peer receives an ACR (AccountingRequest) message with P-Bit set in its Message Header , with
missing Destination-realm AVP . In that case the diameter node
must return a ACA message with E bit set in message Header.
The message should contain Result_Code AVP with error code
DIAMETER_MISSING_AVP. Failed_AVP containing a copy of
Destination_Realm AVP must be included in the message.
Failed_AVP will contain copy of Destination_Realm AVP will
be with its code and other fields as expected. The value field
will be having minimum length filled with zeros.
Message Validation
Diameter Server Should be in message receiving state
ACR ( Accounting Request Message)
ACR Message Header
Version =
Message Length =
Message R-Bit = Set
Message P-Bit = Clear
Message E-Bit = Clear
Message T-Bit = Clear
Message 5th,6th, 7th,8th = All Clear
Message Command Code = 271
Message Data = Must contain all the AVPs defined by RFC for
this message except the Destination_Realm AVP which is
mandatory if P (Proxiable) bit is set.
1.
2.
Send ACR (Accounting- Request Message) to a peer.
Receive ACA (Accounting- Answer Message ) from the
peer and check it for expected results
ACA ( Accounting Answer Message)
ACA Message Header
Version =
Message Length =
Message R-Bit = Clear
Message P-Bit = Clear
Message E-Bit = Set
- 55 -
Test Case Document
CC4GTI
Message T-Bit = Clear
Message 5th,6th, 7th,8th = All Clear
Message Command Code = 271
Message data = Must contain the below given AVPs as Message
data and other AVPs defined by RFC for this message.
ACA Message AVPs
Result_Code AVP ( Ungrouped )
AVP Header
AVP code
= 268
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag 4th,5th,6th,7th,8th Bits = Clear
( Must)
AVP Length =
Vendor ID = Default
AVP data = DIAMETER_MISSING_AVP
Failed_AVP AVP ( Grouped)
AVP Header
AVP code = 279
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag 4th,5th,6th,7th,8th Bits = Clear
AVP Length =
Vendor ID = Empty
AVP data = since it is grouped AVP so must
contain an Origin-Host AVP as given below
Destination-Realm AVP
AVP Header
AVP code
= 283
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag
4th,5th,6th,7th,8th Bits
= Clear
AVP Length =
Vendor ID = Empty
AVP data = filled with Zeros
Post Condition
The Diameter Server must be in a state to receive message
- 56 -
Test Case Document
CC4GTI
Test Case # 26
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
Steps
To test the behavior of peer when it receives an AVP with
unknown flag bits set
00063
To test that when a peer receives an STR( Session Termination
Request Message) with Destination_Realm AVP, and in the
header of Destination_Realm AVP V-Bit, M-Bit and 4th-Bit(
which is reserve Bit ) are set. In that case the peer must return
Result_Code
AVP
with
error
code
DIAMETER_INVALID_AVP_BITS. The message must contain
Failed_AVP AVP of type grouped. This grouped AVP must
contain a copy of Destination_Realm AVP received by the peer
in STR message.
Message Validation
Diameter Server Should be in receiving state
STR ( Session Termination Request Message)
STR Message Header
Version =
Message Length =
Message R-Bit = Set
Message P-Bit = Set
Message E-Bit = Clear
Message T-Bit = Clear
Message 5th,6th, 7th,8th = All Clear
Message Command Code = 275
Message Data = Must contain the blew given AVPs as Message
data and other AVPs defined by RFC for this message
STA Message AVPs
Origin-Realm AVP (Ungrouped)
AVP Header
AVP code
= 296
AVP Flag V-Bit = Set
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag 4th Bit = Set
AVP flag 5th,6th,7th,8th Bits = Clear
AVP Length =
Vendor ID = Default
AVP data = OriginRealm.ims.com
1.
Send STR (Session-Termination Request Message) to a peer.
2.
Receive STA (Session-Termination Answer Message ) from
the peer and check it for expected results
- 57 -
Test Case Document
Expected Results
CC4GTI
STA ( Session Termination Answer Message)
STA Message Header
Version =
Message Length =
Message R-Bit = Clear
Message P-Bit = Clear
Message E-Bit = Set
Message T-Bit = Clear
Message 5th,6th, 7th,8th = All Clear
Message Command Code = 275
Message data = Must contain the below given AVPs as Message
data and other AVPs defined by RFC for this message.
STA Message AVPs
Result_Code AVP ( Ungrouped )
AVP Header
AVP code
= 268
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag 4th,5th,6th,7th,8th
Bits = Clear
AVP Length =
Vendor ID = Filled with
ZEEROS
AVP data =
DIAMETER_INVALID_AVP_BITS
Failed_AVP AVP ( Grouped )
AVP Header
AVP code = 279
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag 4th,5th,6th,7th,8th
Bits = Clear
AVP Length =
Vendor ID = Empty
AVP data = since it is grouped AVP so
must contain an Origin-Realm AVP
causes the failure
Origin-Realm AVP (
Ungrouped )
AVP Header
AVP code
= 296
AVP Flag V-Bit
= Set
AVP flag M-
- 58 -
Test Case Document
CC4GTI
Bit = Set
AVP flag P-Bit
= Clear
AVP flag 4th
Bit = Set
AVP flag
5th,6th,7th,8th
Bits = Clear
AVP Length =
Vendor ID =
Empty
AVP data =
OriginRealm.ims.com
Post Condition
The Diameter Server must be in a state to receive message
Test Case # 27
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
Steps
Expected Results
To test the message processing of CER/CEA with P bit set
00079
To test that when a Diameter agent receives a CER (Capability
Exchange Message Request Message) with P-Bit set in Message
Header. In that case the Diameter agent should return a CEA
(Capability Exchange Answer Message) with E bit set. The
message should contain the Result_Code AVP with error code
DIAMETER_INVALID_HDR_BITS.
Message Validation
Diameter Server Should be in receiving state
CER ( Capability Exchange Request Message)
CER Message Header
Version =
Message Length =
Message R-Bit = Set
Message P-Bit = Set
Message E-Bit = Clear
Message T-Bit = Clear
Message 5th,6th, 7th,8th = All Clear
Message Command Code = 257
Message Data = Must contain all the AVPs defined by the RFC
for this message
1.
Send CER ( Capability Exchange Request Message ) to a
peer
2.
Receive the CEA ( Capability Exchange Answer Message
) from the peer and check it for expected results
CEA ( Capability Exchange Answer Message)
- 59 -
Test Case Document
CC4GTI
CEA Message Header
Version =
Message Length =
Message R-Bit = Clear
Message P-Bit = Clear
Message E-Bit = Set
Message T-Bit = Clear
Message 5th,6th, 7th,8th = All Clear
Message Command Code = 257
Message data = Must contain the below given AVPs and all
other AVPs defined by the RFC for this message
CEA Message AVPs
Result_Code AVP (Ungrouped)
AVP Header
AVP code
= 268
AVP Flag V-Bit = Clear
AVP flag M-Bit
= Set
AVP flag P-Bit
= Clear
AVP flag 4th,5th,6th,7th,8th Bits = Clear
AVP Length =
Vendor ID = Empty
AVP data =
DIAMETER_INVALID_HDR_BITS
Post Condition
The Diameter Server must be in a state to receive message
Test Case # 28
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
To test the peer behavior on receiving CER message having two
Origin_Host AVPs
00073
To test message processing when a peer received a CER
message with two Origin_Host AVPs. On receiving the
message the peer should return a message of command code
257 with E bit set. The message must contain the error code
with
Result_Code
AVP
having
error
code
DIAMETER_AVP_OCCURS_TOO_MANY_TIMES.
The
Failed_AVP AVP should be included in the message. The
Failed_AVP should contain a copy of the first instance of the
Origin_Host AVP.
Message Validation
Diameter Server Should be in receiving state
CER ( Capability Exchange Request Message)
CER Message Header
- 60 -
Test Case Document
CC4GTI
Version =
Message Length =
Message R-Bit = Set
Message P-Bit = Clear
Message E-Bit = Clear
Message T-Bit = Clear
Message 5th,6th, 7th,8th = All Clear
Message Data = Must contain the below given AVPs
CER Message AVPs
Origin-Host AVP
AVP Header
AVP code
= 264
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag 4th,5th,6th,7th,8th
Bits = Clear
AVP Length =
Vendor ID = Empty
AVP data = OriginServer.ims.com
Origin-Host AVP
AVP Header
AVP code
= 264
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag 4th,5th,6th,7th,8th
Bits = Clear
AVP Length =
Vendor ID = Empty
AVP data = OriginServerOne.ims.com
Steps
Expected Results
1. Send CER (capability Exchange Request Message) to a peer.
2. Check the CEA (capability Exchange Answer Message )
CEA ( Capability Exchange Answer Message)
CEA Message Header
Version =
Message Length =
Message R-Bit = Clear (Must)
Message P-Bit = Clear ( Must)
Message E-Bit = Set ( Must)
Message T-Bit = Clear (Optional)
Message 5th,6th, 7th,8th = All Clear ( Must)
Message data = Must contain the blew given AVPs as Message
data.
CEA Message AVPs
Result_Code AVP (Ungrouped)
AVP Header
- 61 -
Test Case Document
CC4GTI
AVP code
= 268
AVP Flag V-Bit = Clear ( Must)
AVP flag M-Bit = Set (Must)
AVP flag P-Bit = Clear ( Optional)
AVP flag 4th,5th,6th,7th,8th Bits = Clear
( Must)
AVP Length =
Vendor ID = Empty
AVP data =
DIAMETER_AVP_OCCURS_TOO_MANY_TI
MES
Failed_AVP AVP ( Grouped)
AVP Header
AVP code = 279
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag 4th,5th,6th,7th,8th Bits = Clear
AVP Length =
Vendor ID = Empty
AVP data = since it is grouped AVP so must
contain an Origin-Host AVP as Data which is
given below
Origin-Host AVP
AVP Header
AVP code
= 264
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag
4th,5th,6th,7th,8th Bits
= Clear
AVP Length =
Vendor ID = Empty
AVP data =
OriginServer.ims.com
Post Condition
The Diameter Server must be in a state to receive message
Test Case # 29
Test Case Title
To test the peer behavior when it receives a DPR message
without Disconnect_Cause AVP
- 62 -
Test Case Document
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
Steps
Expected Results
CC4GTI
00076
To test that when the peer receives a DPR(Disconnect Peer
Request Message) having Disconnect_Cause AVP missing .In
that case the peer should return a DPA ( Disconnect Peer
Answer Message )with E bit set , containing Result_Code AVP
with error code DIAMETER_AVP_MISSING. Also the
Failed_AVP must be including in the message. The Failed_AVP
must contain a copy of Disconnect_Cause AVP with it expected
fields set, and the value field must be of integer 32 filled with
zero.
Message Validation
Diameter Server Should be in receiving state
DPR ( Disconnect-Peer Request Message)
DPR Message Header
Version =
Message Length =
Message R-Bit = Set
Message P-Bit = Clear
Message E-Bit = Clear
Message T-Bit = Clear
Message 5th,6th, 7th,8th = All Clear
Message Command Code = 282
Message Data = Must contain all the AVPs defined by RFC for
this message except Disconnect_Cause AVP
1.
2.
Send DPR (Disconnect-Peer Request Message) to a peer.
Receive DPA ( Disconnect-Peer Answer Message ) from
the peer and check it for expected result
DPA ( Disconnect-Peer Answer Message)
DPA Message Header
Version =
Message Length =
Message R-Bit = Clear
Message P-Bit = Clear
Message E-Bit = Set
Message T-Bit = Clear
Message 5th,6th, 7th,8th = All Clear
Message Command Code = 282
Message data = Must contain the below given AVPs as Message
data and other AVPs defined by RFC for this message.
DPA Message AVPs
Result_Code AVP (Ungrouped)
AVP Header
AVP code
= 268
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag 4th,5th,6th,7th,8th Bits = Clear
- 63 -
Test Case Document
CC4GTI
AVP Length =
Vendor ID = Empty
AVP data = DIAMETER_AVP_MISSING
Failed_AVP AVP ( Grouped contains copy of missing
AVP which is Disconnect_Cause AVP)
AVP Header
AVP code = 279
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
VP flag 4th,5th,6th,7th,8th Bits = Clear
AVP Length =
Vendor ID = Empty
AVP data = since it is grouped AVP so must
contain an Disconnect_Cause AVP as Data
which is given below
Disconnect_Cause AVP ( Ungrouped )
AVP Header
AVP code
= 273
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag 4th Bit =
Clear ( which is
reserved Bit)
AVP flag 5th,6th,7th,8th
Bits = Clear
AVP Length =
Vendor ID = Empty
AVP data = 32bit
field filled with ZEROS
Post Condition
The Diameter Server must be in a state to receive message
Test Case # 30
Test Case Title
Test Case ID
Purpose
To test the peer behavior when it receives a message with two
contradicting AVPs
00072
To test that when a peer receives a CER (Capability Exchange
Request Message) with two Inband_Security AVPs, with AVP
- 64 -
Test Case Document
Scenario
Pre-requisite
Input Data
CC4GTI
values contradicting each other. In that case the peer should
return a CEA (Capability Exchange Answer Message)with E-Bit
set. The message should contain the Result_Code AVP with
error code DIAMETER_CONTRADICTING_AVP. The message
should also contain the Failed_AVP. The Failed_AVP should
contain the contradicting AVP pair.
Message Validation
Diameter Server Should be in receiving state
CER ( Capability Exchange Request Message)
CER Message Header
Version =
Message Length =
Message R-Bit = Set
Message P-Bit = Clear
Message E-Bit = Clear
Message T-Bit = Clear
Message 5th,6th, 7th,8th = All Clear
Message Command Code = 257
Message Data = Must contain the below given AVPs and all
other AVPs defined by the RFC for this message as data
CER Message AVPs
Inband_Security AVP ( Ungrouped )
AVP Header
AVP code
= 299
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag 4th,5th,6th,7th,8th Bits =
Clear
AVP Length =
Vendor ID = Empty
AVP data = NO_INBAND_SECURITY
Inband_Security AVP ( Ungrouped )
AVP Header
AVP code
= 299
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag 4th,5th,6th,7th,8th Bits = Clear
AVP Length =
Vendor ID = Empty
AVP data = TLS
Steps
1.
Send CER (capability Exchange Request Message) to a peer.
2.
Receive the CEA (capability Exchange Answer Message )
from the peer and check it for expected results.
- 65 -
Test Case Document
Expected Results
CC4GTI
CEA ( Capability Exchange Answer Message)
CEA Message Header
Version =
Message Length =
Message R-Bit = Clear
Message P-Bit = Clear
Message E-Bit = Set
Message T-Bit = Clear
Message 5th,6th, 7th,8th = All Clear
Message Command Code = 257
Message data = Must contain the below given AVPs
and all other AVPs defined by the RFC for this
message as data
CER Message AVPs
Result_Code AVP (Ungrouped)
AVP Header
AVP code
= 268
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag 4th,5th,6th,7th,8th Bits =
Clear
AVP Length =
Vendor ID = Empty
AVP data =
DIAMETER_CONTRADICTING_AVP
Failed_AVP AVP (Grouped)
AVP Header
AVP code
= 279
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag 4th,5th,6th,7th,8th Bits = Clear
AVP Length =
Vendor ID = Empty
AVP data = Since the AVP is of type
Grouped, hence must contain the following
AVPs as Data
Inband_Security AVP (Ungrouped)
AVP Header
AVP code
= 299
AVP Flag V-Bit =
Clear
AVP flag M-Bit = Set
AVP flag P-Bit =
Clear
AVP flag
- 66 -
Test Case Document
CC4GTI
4th,5th,6th,7th,8th Bits
= Clear
AVP Length =
Vendor ID = Empty
AVP data =
NO_INBAND_SECURITY
Inband_Security AVP (Ungrouped)
AVP Header
AVP code
= 299
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit =
Clear
AVP flag
4th,5th,6th,7th,8th Bits
= Clear
AVP Length =
Vendor ID = Empty
AVP data = TLS
Post Condition
The Diameter Server must be in a state to receive message
Test Case # 31
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
To test the peer behavior when it receives an CER message with
two mandatory AVPs missing
00069
To test that when a peer receives an CER ( capability Exchange
Request Message) with two mandatory AVPs (Origin-Host and
Origin-Realm) missing. In this case the peer should return a
CEA (capability Exchange Answer Message) with E bit set. This
message must contain the Result-Code AVP with result code
DIAMETER_MISSING_AVP. Also the message must contain
the Failed_AVP. Failed_AVP is a grouped AVP, hence must
contain copies of the two missing AVPs (Origin-Host and
Origin-Realm) with AVP codes and other fields set as expected
in the missing AVPs. The value fields of the missing AVPs
should be set to minimum length and filled with zeros.
Message Validation
Diameter Server must be in message receiving state
CER ( Capability Exchange Request Message)
CER Message Header
Version =
Message Length =
Message R-Bit = Set
Message P-Bit = Clear
- 67 -
Test Case Document
CC4GTI
Message E-Bit = Clear
Message T-Bit = Clear
Message 5th,6th, 7th,8th = All Clear
Message Command Code = 257
Message Data = Must contain all the AVPs defined by the RFC
for this message except Origin-Host AVP and Origin-Realm
AVP.
Steps
Expected Results
1.
Send CER (capability Exchange Request Message ) to a
peer.
2.
Receive the CEA (capability Exchange Answer Message )
from the peer and check it for expected results
CEA ( Capability Exchange Answer Message)
CEA Message Header
Version =
Message Length =
Message R-Bit = Clear
Message P-Bit = Clear
Message E-Bit = Set
Message T-Bit = Clear
Message 5th,6th, 7th,8th = All Clear
Message Command Code = 257
Message data = Must contain the below given AVPs as
Message data.
CER Message AVPs
Result_Code AVP ( Ungrouped )
AVP Header
AVP code
= 268
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag 4th,5th,6th,7th,8th Bits =
Clear
AVP Length =
Vendor ID = Empty
AVP data = Since the AVP is of type
Grouped, hence must contain the following
AVPs as Data
Failed_AVP AVP ( Grouped)
AVP Header
AVP code
= 279
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag 4th,5th,6th,7th,8th Bits = Clear
AVP Length =
Vendor ID = Empty
- 68 -
Test Case Document
CC4GTI
AVP data = Since the AVP is of type
Grouped, hence must contain the following
AVPs as Data
Origin-Host AVP
AVP Header
AVP code
= 264
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag
4th,5th,6th,7th,8th Bits
= Clear
AVP Length =
Vendor ID = Empty
AVP data = Filled With
ZEROS
Origin-Realm AVP
AVP Header
AVP code
= 296
AVP Flag V-Bit
=
Clear
AVP flag M-Bit
= Set
AVP flag P-Bit
=
Clear
AVP flag
4th,5th,6th,7th,8th Bits
= Clear
AVP Length =
Vendor ID = Empty
AVP data = Filled With
ZEROS
Post Condition
The Diameter Server must be in a state to receive message
Test Case # 32
Test Case Title
Test Case ID
Purpose
When a diameter message is received with two AVPs having
invalid value in their data fields
00071
To test that the peer should return a message having E-Bit set
with the same command code as received .The message should
contain a Result_Code AVP with error code of
DIAMETER_INVALID_AVP_VALUES. Also Failed_AVP AVP
containing the offending AVPs must be included in the
- 69 -
Test Case Document
Scenario
Pre-requisite
Input Data
CC4GTI
message
Message Validation
Diameter Server must be in message receiving state
ACR ( Accounting Request Message)
ACR Message Header
Version =
Message Length =
Message R-Bit = Set
Message P-Bit = Clear
Message E-Bit = Clear
Message T-Bit = Clear
Message 5th,6th, 7th,8th = All Clear
Message Command Code = 271
Message Data = Must contain the below given AVPs As
message data and other AVPs defined by RFC for the Message
ACR (Accounting Request Message AVPs)
Origin-Host AVP
AVP Header
AVP code
= 264
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag 4th,5th,6th,7th,8th Bits = Clear
AVP Length =
Vendor ID = Empty
AVP data = 1234567
Origin-Realm AVP
AVP Header
AVP code
= 296
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag 4th,5th,6th,7th,8th Bits = Clear
AVP Length =
Vendor ID = Empty
AVP data = 1234567
Steps
Expected Results
1.
Send ACR (Accounting- Request Message ) to a peer.
2.
Receive ACA (Accounting- Answer Message ) from the
peer and check it for expected results
ACA ( Accounting Answer Message)
ACA Message Header
Version =
Message Length =
Message R-Bit = Clear (Must)
Message P-Bit = Clear ( Must)
- 70 -
Test Case Document
CC4GTI
Message E-Bit = Set ( Must)
Message T-Bit = Clear (Optional)
Message 5th,6th, 7th,8th = All Clear
Message Command Code =
Message data = Must contain the below given AVPs as Message
data and other AVPs defined by RFC for this message.
ACA Message AVPs
Result_Code AVP ( Ungrouped )
AVP Header
AVP code
= 268
AVP Flag V-Bit = Clear ( Must)
AVP flag M-Bit = Set (Must)
AVP flag P-Bit = Clear ( Optional)
AVP flag 4th,5th,6th,7th,8th Bits = Clear
( Must)
AVP Length =
Vendor ID = Default
AVP data =
DIAMETER_INVALID_AVP_VALUES
Failed_AVP AVP ( Grouped)
AVP Header
AVP code = 279
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag 4th,5th,6th,7th,8th Bits = Clear
AVP Length =
Vendor ID = Empty
AVP data = Since it is an AVP of type
grouped , so must contain the below given
AVPs
Origin-Host AVP
AVP Header
AVP code
= 264
AVP Flag V-Bit = Clear
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag
4th,5th,6th,7th,8th Bits
= Clear
AVP Length =
Vendor ID = Empty
AVP data = 1234567
Origin-Realm AVP
AVP Header
AVP code
= 296
AVP Flag V-Bit = Clear
- 71 -
Test Case Document
CC4GTI
AVP flag M-Bit = Set
AVP flag P-Bit = Clear
AVP flag
4th,5th,6th,7th,8th Bits
= Clear
AVP Length =
Vendor ID = Empty
AVP data = 1234567
Post Condition
The Diameter Server must be in a state to receive message
Test Case # 33
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
Testing Diameter CER Message processing with no common
applications supported between the peers.
00048
Testing that Diameter base protocol should return
DIAMETER_NO_COMMON_APPLICATION when a CER
message is received, and there are no common applications
supported between the peers.
Message Validation
Diameter Server must be in message receiving state
CER Message
Diameter Header = {Version=1, Message-Length=,Flags=R is set,
Command-Code=257, App-ID=0, Hop-by-Hop Id=, End-to-End
Id= }
{ Origin-Host = "nas.ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
{ Host-IP-Address = "0x0001c0a800c9"} <---(IP version 4:
192.168.0.201)
{ Vendor-Id = "0"}
{ Product-Name = "AdvancedIMS Diameter"}
[ Origin-State-Id = 112230 ]
[ Supported-Vendor-Id = "22011" ]
[ Auth-Application-Id = "167772151"]
[ Inband-Security-Id = NO_INBAND_SECURITY ]
[ Acct-Application-Id = "1200"]
[ Firmware-Revision = "1"]
Steps
Expected Results
When connection is established with Peer. Both peers do not
have any applications in common. One peer receives CER from
other.
Result-Code AVP set to
DIAMETER_NO_COMMON_APPLICATION , and peer
disconnect the transport layer connection.
- 72 -
Test Case Document
CC4GTI
CEA Message
Diameter Header={Version=1, MessageLength=,Flags=,Command-Code=257,App-ID=0,Hop-by-Hop
Id=,End-to-End Id=}
{ Result-Code =
DIAMETER_NO_COMMON_APPLICATION }
{ Origin-Host = "dbprotocol.ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
{ Host-IP-Address = "0x0001c0a800d2"} <---(IP version 4:
192.168.0.210)
{ Vendor-Id = "0"}
{ Product-Name = "AdvancedIMS Diameter"}
Post Condition
The Diameter Server must be in a state to receive message
Test Case # 34
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
Testing Diameter DPR Message processing
Testing that Diameter base protocol should terminate transport
connection when receive DPA message
Message Validation
Diameter Server Should be in receiving state
DPR Message
Diameter Header={Version=1, Message-Length=,Flags=R is set,
Command-Code=282, App-ID=0, Hop-by-Hop Id=, End-to-End
Id=}
{ Origin-Host = "nas.ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
{ Disconnect-Cause = REBOOTING}
Steps
Expected Results
When Diameter node wants to inform its peer of its intent to
disconnect the transport layer. A DPR message is sent to the
peer.
DPR sender's peer must reply DPA with following values:
Diameter Header={Version=1, MessageLength=,Flags=,Command-Code=282,App-ID=0,Hop-by-Hop
Id=, End-to-End Id=}
{ Result-Code = DIAMETER_SUCCESS }
{ Origin-Host = "dbprotocol.ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
- 73 -
Test Case Document
Post Condition
CC4GTI
Receiver of DPA should terminate the transport connection.
The Diameter Server must be in a state to receive message
Test Case # 35
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
Steps
Expected Results
Testing Diameter capabilities negotiation (CER/CEA)
00057
Purpose of this test case is to verify that When two Diameter
peers establish a transport connection, they successfully
exchange the Capabilities Exchange messages. And also to
verify that they successfully discover peer's identity and its
capabilities (protocol version number, supported Diameter
applications, security mechanisms, etc.)
Message Validation
Diameter Server must be in message receiving state
CER Message
Diameter Header = {Version=1, Message-Length=,Flags=R is set,
Command-Code=257, App-ID=0, Hop-by-Hop Id=, End-to-End
Id= }
{ Origin-Host = "nas.ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
{ Host-IP-Address = "0x0001c0a800c9"} <---(IP version 4:
192.168.0.201)
{ Vendor-Id = "0"}
{ Product-Name = "AdvancedIMS Diameter"}
[ Origin-State-Id = 112230 ]
[ Supported-Vendor-Id = "22011" ]
[ Auth-Application-Id = "167772151"]
[ Inband-Security-Id = NO_INBAND_SECURITY ]
[ Acct-Application-Id = "1200"]
[ Firmware-Revision = "1"]
When connection is established with Peer. Both peers do not
have any applications in common. One peer receives CER from
other.
Result-Code AVP set to = DIAMETER_SUCCESS, and peers
capabilities record is also updated.
CEA Message
Diameter Header={Version=1, MessageLength=,Flags=,Command-Code=257,App-ID=0,Hop-by-Hop
Id=,End-to-End Id=}
- 74 -
Test Case Document
Post Condition
CC4GTI
{ Result-Code = DIAMETER_SUCCESS}
{ Origin-Host = "dbprotocol.ims.advancedims.org"}
{
Origin-Realm = "ims.advancedims.org"}
{ Host-IP-Address = "0x0001c0a800d2"} <---(IP version 4:
192.168.0.210)
{ Vendor-Id = "0"}
{ Product-Name = "AdvancedIMS Diameter"}
[ Acct-Application-Id = "1200"]
Diameter Server must be in message receiving state
Test Case # 36
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
Testing Diameter Message if the route traversed by the request
is unacceptable.
00055
Testing that Diameter base protocol should return
DIAMETER_AUTHORIZATION_REJECTED if the route
traversed by the request is unacceptable.
Diameter Server must be in message receiving state
ASR Message
Diameter Header = {Version=1, Message-Length=,Flags=R,P is
set, Command-Code=274, App-ID=1200, Hop-by-Hop Id=, Endto-End Id= }
{ Session-Id = "USER11-2200"}
{ Origin-Host = "nas.ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
{ Destination-Host = "hms.ims.advancedims.org"}
- 75 -
Test Case Document
Steps
Expected Results
CC4GTI
{ Auth-Application-Id = "1200"}
{ User-Name = "USER11"}
[ Origin-State-Id = 112230 ]
[ Route-Record = agent1.advancedims.com ]
[ Route-Record = agent2.advancedims.com ]
[ Route-Record =
agent3.advancedims.com ]
1.
Send ASR to a peer.
2.
Receive ASA from the peer and check it for expected
results
Result-Code AVP set to
DIAMETER_AUTHORIZATION_REJECTED, Because
route agent2.advancedims.com traversed by request is
unacceptable.
ASA Message
Diameter Header = {Version=1, Message-Length=,Flags=P is set,
Command-Code=274, App-ID=1200, Hop-by-Hop Id=, End-toEnd Id= }
{ Session-Id = "USER11-2200"}
{ Result-Code =
DIAMETER_AUTHORIZATION_REJECTED }
{ Origin-Host = "proxy.ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
{ Auth-Application-Id = "1200"}
{ User-Name = "USER11"}
[ Origin-State-Id = 112230 ]
Post Condition
The Diameter Server must be in a state to receive message
Test Case # 37
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
Testing Diameter Message processing when relay/proxy cannot
found upstream server for given application
00056
Testing that Diameter base protocol should return
DIAMETER_UNABLE_TO_DELIVER when relay/proxy agents
cannot found upstream server that supports the application of a
particular message.
Message Validation
Diameter Server must be in message receiving state
ASR Message
Diameter Header = {Version=1, Message-Length=,Flags=R,P is
set, Command-Code=274, App-ID=1200, Hop-by-Hop Id=, End-
- 76 -
Test Case Document
Steps
Expected Results
CC4GTI
to-End Id= }
{ Session-Id = "USER11-2200"}
{ Origin-Host = "nas.ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
{ Destination-Host = "hms.ims.advancedims.org"}
{ Auth-Application-Id = "1200"}
{ User-Name = "USER11"}
[ Origin-State-Id = 112230 ]
1.
Send ASR to a peer.
2.
Receive ASA from the peer and check it for expected
results
Result-Code AVP set to DIAMETER_UNABLE_TO_DELIVER,
and message is returned.
ASA Message
Diameter Header = {Version=1, Message-Length=,Flags=P is set,
Command-Code=274, App-ID=1200, Hop-by-Hop Id=, End-toEnd Id= }
{ Session-Id = "USER11-2200"}
{ Result-Code = DIAMETER_UNABLE_TO_DELIVER }
{ Origin-Host = "proxy.ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
{ Auth-Application-Id = "1200"}
{ User-Name = "USER11"}
[ Origin-State-Id = 112230 ]
Post Condition
The Diameter Server must be in a state to receive message
Test Case # 38
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
Testing Diameter Message processing with an AVP having an
invalid value in its data portion.
00045
Testing that Diameter base protocol should return
DIAMETER_INVALID_AVP_VALUE when an AVP is received
having an invalid value in its data portion.
Message Validation
Diameter Server must be in message receiving state
ASR Message
Diameter Header = {Version=1, Message-Length=,Flags=R,P is
set, Command-Code=274, App-ID=1200, Hop-by-Hop Id=, Endto-End Id= }
{ Session-Id = "USER11-2200"}
{ Origin-Host = "nas.ims.advancedims.org"}
- 77 -
Test Case Document
Steps
CC4GTI
1.
2.
Expected Results
{ Origin-Realm = "ims.advancedims.org"}
{ Destination-Host = "hms.ims.advancedims.org"}
{ Auth-Application-Id = "ABC1200"}
{ User-Name = "USER11"}
[ Origin-State-Id = 112230 ]
Send ASR to a peer.
Receive ASA from the peer and check it for expected
results
Result-Code AVP set to DIAMETER_INVALID_AVP_VALUE,
and message is returned. Also include Auth-Application-Id in
Failed-AVP.
ASA Message
Diameter Header = {Version=1, Message-Length=,Flags=P is set,
Command-Code=274, App-ID=1200, Hop-by-Hop Id=, End-toEnd Id= }
{ Session-Id = "USER11-2200"}
{ Result-Code = DIAMETER_INVALID_AVP_VALUE }
{ Origin-Host = "proxy.ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
{ User-Name = "USER11"}
[ Origin-State-Id = 112230 ]
{ Failed-AVP}
{ Auth-Application-Id = "ABC1200"}
Post Condition
The Diameter Server must be in a state to receive message
Test Case # 39
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
Testing Diameter Message processing with an AVP included
more than allowed
00047
Testing that Diameter base protocol should return
DIAMETER_AVP_OCCURS_TOO_MANY_TIMES
when
message was received that included an AVP that appeared
more often than permitted in the message definition.
Message Validation
Diameter Server must be in message receiving state
ASR Message
Diameter Header = {Version=1, Message-Length=,Flags=R,P is
set, Command-Code=274, App-ID=1200, Hop-by-Hop Id=, Endto-End Id= }
- 78 -
Test Case Document
CC4GTI
{ Session-Id = "USER11-2200"}
{ Origin-Host = "nas.ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
{ Destination-Host = "hms.ims.advancedims.org"}
{ Auth-Application-Id = "1200"}
{ User-Name = "USER11"}
[ Origin-State-Id = 112230 ]
Steps
Expected Results
1.
Send ASR to a peer.
2.
Receive ASA from the peer and check it for expected
results
Result-Code AVP set to
DIAMETER_AVP_OCCURS_TOO_MANY_TIMES, and
message is returned. Also include Origin-Realm in Failed-
AVP.
ASA Message
Diameter Header = {Version=1, Message-Length=,Flags=P is set,
Command-Code=274, App-ID=1200, Hop-by-Hop Id=, End-toEnd Id= }
{ Session-Id = "USER11-2200"}
{ Result-Code =
DIAMETER_AVP_OCCURS_TOO_MANY_TIMES }
{ Origin-Host = "proxy.ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
{ User-Name = "USER11"}
[ Origin-State-Id = 112230 ]
{ Failed-AVP}
{ Origin-Realm = "ims.advancedims.org"}
Post Condition
The Diameter Server must be in a state to receive message
Test Case # 40
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
Testing Diameter Message processing with an invalid message
length.
00052
Testing that Diameter base protocol should return
DIAMETER_INVALID_MESSAGE_LENGTH when length of
received message is invalid.
Message Validation
Diameter Server must be in message receiving state
ASR Message
Diameter Header = {Version=1, Message-Length=,Flags=R,P is
set, Command-Code=274, App-ID=1200, Hop-by-Hop Id=, End-
- 79 -
Test Case Document
Steps
Expected Results
CC4GTI
to-End Id= }
{ Session-Id = "USER11-2200"}
{ Origin-Host = "nas.ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
{ Destination-Host = "hms.ims.advancedims.org"}
{ Auth-Application-Id = "1200"} (AVP length is set to 2
bytes in AVP header)
{ User-Name = "USER11"}
[ Origin-State-Id = 112230 ]
1.
Send ASR to a peer.
2.
Receive ASA from the peer and check it for expected
results
Result-Code AVP set to
DIAMETER_INVALID_MESSAGE_LENGTH, and message is
returned. Also include Auth-Application-Id in Failed-
AVP.
ASA Message
Diameter Header = {Version=1, Message-Length=,Flags=P is set,
Command-Code=274, App-ID=1200, Hop-by-Hop Id=, End-toEnd Id= }
{ Session-Id = "USER11-2200"}
{ Result-Code =
DIAMETER_INVALID_MESSAGE_LENGTH}
{ Origin-Host = "proxy.ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
{ User-Name = "USER11"}
[ Origin-State-Id = 112230 ]
{ Failed-AVP}
Post Condition
{ Auth-Application-Id = "1200"}
The Diameter Server must be in a state to receive message
Test Case # 41
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
Testing Diameter Message processing with AVP having an
invalid length.
00051
Testing that Diameter base protocol should return
DIAMETER_INVALID_AVP_LENGTH when an AVP with an
invalid length is received.
Message Validation
Diameter Server must be in message receiving state
ASR Message
- 80 -
Test Case Document
Steps
Expected Results
CC4GTI
Diameter Header = {Version=1, Message-Length=,Flags=R,P is
set, Command-Code=274, App-ID=1200, Hop-by-Hop Id=, Endto-End Id= }
{ Session-Id = "USER11-2200"}
{ Origin-Host = "nas.ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
{ Destination-Host = "hms.ims.advancedims.org"}
{ Auth-Application-Id = "1200"} (AVP length is set to 2
bytes in AVP header)
{ User-Name = "USER11"}
[ Origin-State-Id = 112230 ]
1.
Send ASR to a peer.
2.
Receive ASA from the peer and check it for expected
results
Result-Code AVP set to
DIAMETER_INVALID_AVP_LENGTH, and message is
returned. Also include Auth-Application-Id in Failed-
AVP.
ASA Message
Diameter Header = {Version=1, Message-Length=,Flags=P is set,
Command-Code=274, App-ID=1200, Hop-by-Hop Id=, End-toEnd Id= }
{ Session-Id = "USER11-2200"}
{ Result-Code = DIAMETER_INVALID_AVP_LENGTH }
{ Origin-Host = "proxy.ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
{ User-Name = "USER11"}
[ Origin-State-Id = 112230 ]
{ Failed-AVP}
Post Condition
{ Auth-Application-Id = "1200"}
The Diameter Server must be in a state to receive message
Test Case # 42
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
Testing Diameter Message processing with CER was received
from an unknown peer
00042
Testing that Diameter base protocol should silently discard the
request and peer disconnects the transport layer connection.
Message Validation
Diameter Server must be in message receiving state
CER Message
- 81 -
Test Case Document
CC4GTI
Diameter Header = {Version=1, Message-Length=,Flags=R is set,
Command-Code=257, App-ID=0, Hop-by-Hop Id=, End-to-End
Id= }
{ Origin-Host = "nas.advancedims.com"}
{ Origin-Realm = "advancedims.com"}
{ Host-IP-Address = "0x0001c0a800c9"}
192.168.0.201)
<---(IP version 4:
{ Vendor-Id = "0"}
{ Product-Name = "AdvancedIMS Diameter"}
[ Origin-State-Id = 112230 ]
[ Supported-Vendor-Id = "22011" ]
[ Auth-Application-Id = "167772151"]
[ Inband-Security-Id = NO_INBAND_SECURITY ]
[ Acct-Application-Id = "1200"]
Steps
Expected Results
Post Condition
[ Firmware-Revision = "1"]
1. Receive CER from unknown peer.
2. Disconnect connection with peer.
Silently discard the request and peer disconnects the transport
layer connection.
The Diameter Server must be in a state to receive message
Test Case # 43
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
Testing Diameter Message processing with Invalid AVP's Flag
bit is set
00053
Testing that Diameter base protocol should return
DIAMETER_INVALID_AVP_BIT_COMBO when the request
contained an AVP with which is not allowed to have the given
value in the AVP Flags field.
Diameter Server must be in message receiving state
CER Message
Diameter Header = {Version=1, Message-Length=,Flags=R is set,
Command-Code=257, App-ID=0, Hop-by-Hop Id=, End-to-End
Id= }
{ Origin-Host = "nas.advancedims.com"}
{ Origin-Realm = "advancedims.com"}
- 82 -
Test Case Document
Steps
Expected Results
CC4GTI
{ Host-IP-Address = "0x0001c0a800c9"} <---(IP version 4:
192.168.0.201)
{ Vendor-Id = "0"}
{ Product-Name = "AdvancedIMS Diameter"} (Mandatory
Bit is set)
[ Origin-State-Id = 112230 ]
[ Supported-Vendor-Id = "22011" ]
[ Auth-Application-Id = "167772151"]
[ Inband-Security-Id = NO_INBAND_SECURITY ]
[ Acct-Application-Id = "1200"]
[ Firmware-Revision = "1"]
1.
Receive CER from peer.
2.
Disconnect connection with peer.
Result-Code AVP set to =
DIAMETER_INVALID_AVP_BIT_COMBO.
CEA Message
Post Condition
Diameter Header={Version=1, MessageLength=,Flags=,Command-Code=257,App-ID=0,Hopby-Hop Id=,End-to-End Id=}
{ Result-Code =
DIAMETER_INVALID_AVP_BIT_COMBO}
{ Origin-Host = "dbprotocol.ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
{ Host-IP-Address = "0x0001c0a800d2"} <---(IP version
4: 192.168.0.210)
{ Vendor-Id = "0"}
{Failed-AVP}
{ Product-Name = "AdvancedIMS Diameter"}
The Diameter Server must be in a state to receive message
Test Case # 44
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
Testing Diameter Message processing with Invalid header bits
00041
Testing that Diameter base protocol should return
DIAMETER_INVALID_HDR_BITS when request was received
whose bits in the Diameter header were either set to an invalid
combination, or to a value that is inconsistent with the
command code's definition.
Message Validation
Diameter Server must be in message receiving state
CER Message
- 83 -
Test Case Document
CC4GTI
Diameter Header = {Version=1, Message-Length=,Flags=RP is
set, Command-Code=257, App-ID=0, Hop-by-Hop Id=, End-toEnd Id= }
{ Origin-Host = "nas.ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
{ Host-IP-Address = "0x0001c0a800c9"} <---(IP version 4:
192.168.0.201)
{ Vendor-Id = "0"}
{ Product-Name = "AdvancedIMS Diameter"}
[ Origin-State-Id = 112230 ]
[ Supported-Vendor-Id = "22011" ]
[ Auth-Application-Id = "167772151"]
[ Inband-Security-Id = NO_INBAND_SECURITY ]
[ Acct-Application-Id = "1200"]
[ Firmware-Revision = "1"]
Steps
Expected Results
When connection is established with Peer, One peer receives
CER from other.
Result-Code AVP set to =
DIAMETER_INVALID_HDR_BITS. Proxy bit in CER
message is set which is not allowed.
CEA Message
Diameter Header={Version=1, MessageLength=,Flags=E,Command-Code=257,App-ID=0,Hopby-Hop Id=,End-to-End Id=}
{ Result-Code = DIAMETER_INVALID_HDR_BITS }
{ Origin-Host = "dbprotocol.ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
{ Host-IP-Address = "0x0001c0a800d2"} <---(IP version
4: 192.168.0.210)
{ Vendor-Id = "0"}
{ Product-Name = "AdvancedIMS Diameter"}
Post Condition
The Diameter Server must be in a state to receive message
Test Case # 45
Test Case Title
Test Case ID
Purpose
Scenario
Testing Diameter Message processing with missing AVP
00046
Testing that Diameter base protocol should return
DIAMETER_MISSING_AVP when the request did not contain
an AVP that is required by the Command Code definition.
Message Validation
- 84 -
Test Case Document
Pre-requisite
Input Data
CC4GTI
Diameter Server must be in message receiving state
CER Message
Diameter Header = {Version=1, Message-Length=,Flags=R is set,
Command-Code=257, App-ID=0, Hop-by-Hop Id=, End-to-End
Id= }
{ Origin-Realm = "ims.advancedims.org"}
{ Host-IP-Address = "0x0001c0a800c9"} <---(IP version 4:
192.168.0.201)
{ Vendor-Id = "0"}
{ Product-Name = "AdvancedIMS Diameter"}
[ Origin-State-Id = 112230 ]
[ Supported-Vendor-Id = "22011" ]
[ Auth-Application-Id = "167772151"]
[ Inband-Security-Id = TLS]
[ Acct-Application-Id = "1200"]
[ Firmware-Revision = "1"]
Steps
Expected Results
When connection is established with Peer.
One peer receives CER from other.
Result-Code AVP set to DIAMETER_MISSING_AVP, and peer
disconnect the transport layer connection.
CEA Message
Post Condition
Diameter Header={Version=1, MessageLength=,Flags=,Command-Code=257,App-ID=0,Hop-by-Hop
Id=,End-to-End Id=}
{ Result-Code = DIAMETER_MISSING_AVP }
{ Origin-Host = "dbprotocol.ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
{ Host-IP-Address = "0x0001c0a800d2"} <---(IP version 4:
192.168.0.210)
{ Vendor-Id = "0"}
{ Product-Name = "AdvancedIMS Diameter"}
The Diameter Server must be in a state to receive message
Test Case # 46
Test Case Title
Test Case ID
Purpose
Testing Diameter Message processing with no common security
mechanisms b/w peers
00054
Testing that Diameter base protocol should return
- 85 -
Test Case Document
Scenario
Pre-requisite
Input Data
Steps
Expected Results
Post Condition
CC4GTI
DIAMETER_NO_COMMON_SECURITY when a CER message
is received, and there are no common security mechanisms
supported between the peers.
Message Validation
Diameter Server must be in message receiving state
The Diameter Server must be in a state to receive message
Test Case # 47
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
Steps
Expected Results
Testing Diameter Message processing with unrecognized bit in
header is set
00050
Testing that Diameter base protocol should return
DIAMETER_INVALID_BIT_IN_HEADER
when
an
unrecognized bit in the Diameter header is set to one.
Message Validation
Diameter Server must be in message receiving state
CER Message
Diameter Header = {Version=1, Message-Length=,Flags=R is set,
Command-Code=257, App-ID=0, Hop-by-Hop Id=, End-to-End
Id= }
{ Origin-Host = "nas.ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
{ Host-IP-Address = "0x0001c0a800c9"} <---(IP version 4:
192.168.0.201)
{ Vendor-Id = "0"}
{ Product-Name = "AdvancedIMS Diameter"}
[ Origin-State-Id = 112230 ]
[ Supported-Vendor-Id = "22011" ]
[ Auth-Application-Id = "167772151"]
[ Inband-Security-Id = TLS]
[ Acct-Application-Id = "1200"]
[ Firmware-Revision = "1"]
When connection is established with Peer. Both peers do not
have any security mechanism in common. One peer receives
CER from other.
Result-Code AVP set to
DIAMETER_NO_COMMON_SECURITY, and peer disconnect
the transport layer connection.
CEA Message
- 86 -
Test Case Document
Post Condition
CC4GTI
Diameter Header={Version=1, MessageLength=,Flags=,Command-Code=257,App-ID=0,Hop-by-Hop
Id=,End-to-End Id=}
{ Result-Code = DIAMETER_NO_COMMON_SECURITY }
{ Origin-Host = "dbprotocol.ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
{ Host-IP-Address = "0x0001c0a800d2"} <---(IP version 4:
192.168.0.210)
{ Vendor-Id = "0"}
{ Product-Name = "AdvancedIMS Diameter"}
The Diameter Server must be in a state to receive message
Test Case # 48
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
Steps
Expected Results
Testing Diameter Message processing with unrecognized realm
00043
Testing that Diameter base protocol should return
DIAMETER_REALM_NOT_SERVED when intended realm of
the request is not recognized.
Message Validation
Diameter Server must be in message receiving state
CER Message
Diameter Header = {Version=1, Message-Length=,Flags=R & 7tth
bit is set, Command-Code=257, App-ID=0, Hop-by-Hop Id=,
End-to-End Id= }
{ Origin-Host = "nas.ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
{ Host-IP-Address = "0x0001c0a800c9"} <---(IP version 4:
192.168.0.201)
{ Vendor-Id = "0"}
{ Product-Name = "AdvancedIMS Diameter"}
[ Origin-State-Id = 112230 ]
[ Supported-Vendor-Id = "22011" ]
[ Auth-Application-Id = "167772151"]
[ Inband-Security-Id = TLS]
[ Acct-Application-Id = "1200"]
[ Firmware-Revision = "1"]
When connection is established with Peer. And unrecognized
bit is set in diameter header. One peer receives CER from other
Result-Code AVP set to
DIAMETER_INVALID_BIT_IN_HEADER, and peer disconnect
the transport layer connection.
- 87 -
Test Case Document
CC4GTI
CEA Message
Post Condition
Diameter Header={Version=1, MessageLength=,Flags=,Command-Code=257,App-ID=0,Hop-by-Hop
Id=,End-to-End Id=}
{ Result-Code = DIAMETER_INVALID_BIT_IN_HEADER }
{ Origin-Host = "dbprotocol.ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
{ Host-IP-Address = "0x0001c0a800d2"} <---(IP version 4:
192.168.0.210)
{ Vendor-Id = "0"}
{ Product-Name = "AdvancedIMS Diameter"}
The Diameter Server must be in a state to receive message
Test Case # 49
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
Steps
Expected Results
Testing Diameter Message processing with unsupported
application-Id
00040
Testing that Diameter base protocol should return
DIAMETER_APPLICATION_UNSUPPORTED
when
unsupported application-Id is sent.
Message Validation
Diameter Server must be in message receiving state
ASR Message
Diameter Header = {Version=1, Message-Length=,Flags=R,P is
set, Command-Code=274, App-ID=1200, Hop-by-Hop Id=, Endto-End Id= }
{ Session-Id = "USER11-2200"}
{ Origin-Host = "nas.ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
{ Destination-Host = "hms.ims.advancedims.org"}
{ Destination-Realm = "advancedims.com"}
{ Auth-Application-Id = "1200"}
{ User-Name = "USER11"}
[ Origin-State-Id = 112230 ]
1.
Send ASR to a peer.
2.
Receive ASA from the peer and check it for expected
results
Result-Code AVP set to
DIAMETER_APPLICATION_UNSUPPORTED, and message is
returned.
ASA Message
- 88 -
Test Case Document
Post Condition
CC4GTI
Diameter Header = {Version=1, Message-Length=,Flags=EP is
set, Command-Code=274, App-ID=1200, Hop-by-Hop Id=, Endto-End Id= }
{ Session-Id = "USER11-2200"}
{ Result-Code =
DIAMETER_APPLICATION_UNSUPPORTED }
{ Origin-Host = "proxy.ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
{ Auth-Application-Id = "1200"}
{ User-Name = "USER11"}
[ Origin-State-Id = 112230 ]
The Diameter Server must be in a state to receive message
Test Case # 50
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
Steps
Expected Results
Testing Diameter Message processing with unsupported AVP
that is marked with the Mandatory
00044
Testing that Diameter base protocol should return
DIAMETER_AVP_UNSUPPORTED
when
received
unsupported AVP that is marked with the Mandatory bit.
Message Validation
Diameter Server must be in message receiving state
ASR Message
Diameter Header = {Version=1, Message-Length=,Flags=R,P is
set, Command-Code=274, App-ID=1200, Hop-by-Hop Id=, Endto-End Id= }
{ Session-Id = "USER11-2200"}
{ Origin-Host = "nas.ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
{ Destination-Host = "hms.ims.advancedims.org"}
{ Destination-Realm = "advancedims.com"}
{ Auth-Application-Id = "1200"}
{ User-Name = "USER11"}
[ Origin-State-Id = 112230 ]
{Unknown-AVP = 111} (Mandatory nit is set)
{ Auth-Application-Id = "1200"}
{ User-Name = "USER11"}
[ Origin-State-Id = 112230 ]
{Unknown-AVP = 111} (Mandatory nit is set)
1.
Send ASR to a peer.
2.
Receive ASA from the peer and check it for expected
results
Result-Code AVP set to DIAMETER_AVP_UNSUPPORTED,
- 89 -
Test Case Document
CC4GTI
and message is returned.
ASA Message
Post Condition
Diameter Header = {Version=1, Message-Length=,Flags=P is set,
Command-Code=274, App-ID=1200, Hop-by-Hop Id=, End-toEnd Id= }
{ Session-Id = "USER11-2200"}
{ Result-Code = DIAMETER_AVP_UNSUPPORTED }
{ Origin-Host = "proxy.ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
{ Auth-Application-Id = "1200"}
{ User-Name = "USER11"}
[ Origin-State-Id = 112230 ]
{ Failed-AVP}
{ Unknown-AVP = 111}
The Diameter Server must be in a state to receive message
Test Case # 52
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
ASR Message
Testing Diameter Message processing with unsupported
version number
00049
Testing that Diameter base protocol should return
DIAMETER_UNSUPPORTED_VERSION when a request was
received, whose version number is unsupported.
Message Validation
Diameter Server must be in message receiving state
Diameter Header = {Version=3, Message-Length=,Flags=R,P is set, Command-Code=274,
App-ID=1200, Hop-by-Hop Id=, End-to-End Id= }
{ Session-Id = "USER11-2200"}
{ Origin-Host = "nas.ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
{ Destination-Host = "hms.ims.advancedims.org"}
{ Destination-Realm = "advancedims.com"}
{ Auth-Application-Id = "1200"}
{ User-Name = "USER11"}
[ Origin-State-Id = 112230 ]
{Unknown-AVP = 111} (Mandatory nit is set)
Steps
1.
Send ASR to a peer.
2.
Receive ASA from the peer and check it for
results
Expected Results
Result-Code
AVP
set
- 90 -
Test Case Document
CC4GTI
DIAMETER_UNSUPPORTED_VERSION , and
returned.
ASA Message
Diameter Header = {Version=1, Message-Length=,Fla
Command-Code=274, App-ID=1200, Hop-by-Hop Id
End Id= }
{ Session-Id = "USER11-2200"}
{ Result-Code = DIAMETER_UNSUPPORTED
}
{ Origin-Host = "proxy.ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
{ Auth-Application-Id = "1200"}
{ User-Name = "USER11"}
[ Origin-State-Id = 112230 ]
The Diameter Server must be in a state to receive me
Post Condition
Test Case # 52
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
ASR Message
Testing Diameter Message processing with unsupported
version number
00049
Testing that Diameter base protocol should return
DIAMETER_UNSUPPORTED_VERSION when a request was
received, whose version number is unsupported.
Message Validation
Diameter Server must be in message receiving state
Diameter Header = {Version=3, Message-Length=,Flags=R,P is set, Command-Code=274,
App-ID=1200, Hop-by-Hop Id=, End-to-End Id= }
{ Session-Id = "USER11-2200"}
{ Origin-Host = "nas.ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
{ Destination-Host = "hms.ims.advancedims.org"}
{ Destination-Realm = "advancedims.com"}
{ Auth-Application-Id = "1200"}
{ User-Name = "USER11"}
[ Origin-State-Id = 112230 ]
{Unknown-AVP = 111}
(Mandatory nit is set)
Steps
3.
Send ASR to a peer.
4.
Receive ASA from the peer and check it for expected
- 91 -
Test Case Document
Expected Results
Post Condition
CC4GTI
results
Result-Code
AVP
set
to
DIAMETER_UNSUPPORTED_VERSION , and message is
returned.
ASA Message
Diameter Header = {Version=1, Message-Length=,Flags=P is set,
Command-Code=274, App-ID=1200, Hop-by-Hop Id=, End-toEnd Id= }
{ Session-Id = "USER11-2200"}
{ Result-Code = DIAMETER_UNSUPPORTED_VERSION
}
{ Origin-Host = "proxy.ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
{ Auth-Application-Id = "1200"}
{ User-Name = "USER11"}
[ Origin-State-Id = 112230 ]
The Diameter Server must be in a state to receive message
Test Case # 53
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
Testing Diameter Message processing with Invalid Command
code
00039
Testing that Diameter base protocol should return
DIAMETER_COMMAND_UNSUPPORTED when wrong
command is sent.
Protocol Errors
Diameter Server Should be in receiving state.
Diameter Server receive a command which is not supported.
Diameter Header = {Version=3, Message-Length=,Flags=R,P is
set, Command-Code=970, App-ID=1200, Hop-by-Hop Id=, Endto-End Id= }
{ Origin-Host = "nas.ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
{ Destination-Host =
"hms.ims.advancedims.org"}
Steps
{ Destination-Realm = "advancedims.com"}
1. Send message to a peer.
2.
Expected Results
Receive Answer from the peer and check it for expected
results
Diameter Server receive a command which is not supported.
Diameter base protocol should return
- 92 -
Test Case Document
CC4GTI
DIAMETER_COMMAND_UNSUPPORTED.
Diameter Header = {Version=3, Message-Length=,Flags=is set,
Command-Code=970, App-ID=1200, Hop-by-Hop Id=, End-toEnd Id= }
{Result-Code =
DIAMETER_COMMAND_UNSUPPORTED}
{ Origin-Host = "nas.ims.advancedims.org"}
{ Origin-Realm = "ims.advancedims.org"}
{ Destination-Host =
"hms.ims.advancedims.org"}
Post Condition
{ Destination-Realm = "advancedims.com"}
Diameter Server Should be in message receiving state
4.3 Peer Table Function Validation Test Cases
Test Case # 54
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
Steps
To test Peer Table Creation SUCCESS case
00084
To check the CreatePeerTable() API behavior by for different
Inputs
Function Validation
Server Should be in a state to call the validating function
PeerTable_Handle containing NULL value
1. Call DMBase_CreatePeerTable() API
2.
Expected Results
Post Condition
Check the output of DMBase_CreatePeerTable()
PeerTable created as the PeerTable_Handle is not NULL now
Peertable created
Test Case # 55
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
To test Peer Table Creation Failure case
0117
To check the CreatePeerTable() API behavior by for different
Inputs
Function Validation
Server must be in a state to call the validating function
- 93 -
Test Case Document
Input Data
Steps
Expected Results
Post Condition
CC4GTI
PeerTable_Handle not equal to NULL value
1.
Call DMBase_CreatePeerTable() API
2.
Check the output of DMBase_CreatePeerTable()
PeerTable cannot be created , as PeerTable allready exist
PeerTable not created
Test Case # 56
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
Steps
To test Peer Table Entry Creation SUCCESS case
00086
To check the behavior of DMBase_CreatePeerTableEntry() API
for different inputs
Function Validation
Server Should be in a state to call the validating function
PeerTableEntry_Handle containing NULL value
1. Call DMBase_CreatePeerTableEntry() API
2.
Expected Results
Post Condition
Check it for the expected results
Success: PeerTableEntry Created as PeerTableEntry_Handle in
not NULL now
PeerTable Entry Created
Test Case # 57
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
Steps
Expected Results
Post Condition
To test Peer Table Entry Creation FAILURE case
0118
To check the behavior of DMBase_CreatePeerTableEntry() API
for different inputs
Function Validation
Server Should be in a state to call the validating function
PeerTableEntry_Handle not containing NULL value
3. Call DMBase_CreatePeerTableEntry() API
4.
Check it for the expected results
FAILURE: PeerTableEntry all ready exists cannot be Created
New PeerTable Entry not Created
- 94 -
Test Case Document
CC4GTI
Test Case # 58
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
To test Insertion in Peer Table SUCCESS case
00088
To check the DMBase_InsertIntoPeerTable() API for different
inputs
Function Validation
Server Should be in a state to call the validating function
Empty PeerTable with created PeerTableEntry
Following Values for insertion
HostIdentity = OriginHost.ims.com
Status
= connected
Static/Dynamic = Static
Expiration Time = 1 hr
TLS Enabled = Yes
Steps
1.
Call DMBase_InsertIntoPeerTable() API
2.
Check it for the expected results
Expected Results
Success : Values successfully inserted in PeerTable
Post Condition
PeerTable must contain newly inserted values
Test Case # 59
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
To test Insertion in Peer Table Failure
0119
To check the DMBase_InsertIntoPeerTable() API for different
inputs
Function Validation
Server Should be in a state to call the validating function
PeerTable having following values
HostIdentity = OriginHost.ims.com
Status
= connected
- 95 -
Test Case Document
CC4GTI
Static/Dynamic = Static
Expiration Time = 1 hr
TLS Enabled = Yes
Following Values for insertion
Status
= connected
Static/Dynamic = Static
Expiration Time = 1 hr
TLS Enabled = Yes
Steps
1.
Call DMBase_InsertIntoPeerTable() API
2.
Check it for the expected results
Expected Results
Failure : HostIdentity missing, Entry cannot be inserted in
PeerTable
Post Condition
PeerTable Without Newly inserted values
Test Case # 60
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
To test Deletion of Peer Table Entry Success
00092
Function Validation
To check the behavior of DMBase_DeletePeerTableEntry() API
for different inputs
Server Should be in a state to call the validating function
PeerTable having entry with following values
HostIdentity = OriginHost.ims.com
Status
= connected
Static/Dynamic = Static
Expiration Time = 1 hr
TLS Enabled = Yes
Host Identity = OriginHost.ims.com
Steps
Expected Results
Post Condition
1.
Call DMBase_DeletePeerTableEntry() API
2.
Check it for expected results
Success : PeerTableEntry successfully deleted
PeerTable entry Deleted
Test Case # 61
Test Case Title
Deletion of Peer Table Entry Failure case
- 96 -
Test Case Document
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
CC4GTI
0120
To check the behavior of DMBase_DeletePeerTableEntry() API
for different inputs
Function Validation
Server Should be in a state to call the validating function
PeerTable having entry with following values
HostIdentity = OriginHost.ims.com
Status
= connected
Static/Dynamic = Static
Expiration Time = 1 hr
TLS Enabled = Yes
Host Identity = DestinationHost.ims.com
Steps
Expected Results
Post Condition
1.
Call DMBase_DeletePeerTableEntry() API
2.
Check it for expected results
Failure : PeerTableEntry cannot found for deletion
PeerTable with one entry Deleted
Test Case # 62
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
Deletion of Peer Table Entry when PeerTable is Empty
0121
To check the behavior of DMBase_DeletePeerTableEntry() API
for different inputs
Function Validation
Server Should be in a state to call the validating function
Empty PeerTable
Host Identity = DestinationHost.ims.com
Steps
Expected Results
Post Condition
1.
Call DMBase_DeletePeerTableEntry() API
2.
Check it for expected results
Failure : PeerTable is emtpy
No entry deleted from peerTable
Test Case # 63
Test Case Title
Test Case ID
Purpose
To test Lookup Peer Table Entry SUCCESS case
00090
To check the behavior of DMBase_LooKUpPeerTable() API for
- 97 -
Test Case Document
Scenario
Pre-requisite
Input Data
CC4GTI
different input values
Function Validation
Server Should be in a state to call the validating function
PeerTable having an entry with following values
HostIdentity = OriginHost.ims.com
Status
= connected
Static/Dynamic = Static
Expiration Time = 1 hr
TLS Enabled = Yes
HostIdentity = OriginHost.ims.com
Steps
Expected Results
Post Condition
1.
Call DMBase_LookUpPeerTable() API
2.
Check it for expected results
Success : Entry found in PeerTable
PeerTable Entry found
Test Case # 64
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
Lookup Peer Table Entry FAILURE case
0122
To check the behavior of DMBase_LooKUpPeerTable() API for
different input values
Function Validation
Server Should be in a state to call the validating function
PeerTable having an entry with following values
HostIdentity = OriginHost.ims.com
Status
= connected
Static/Dynamic = Static
Expiration Time = 1 hr
TLS Enabled = Yes
HostIdentity = DestinationHost.ims.com
Steps
Expected Results
Post Condition
1.
Call DMBase_LookUpPeerTable() API
2.
Check it for expected results
Failure : No entry found in PeerTable
PeerTable Entry does not found
- 98 -
Test Case Document
CC4GTI
4.4 Realm Table Function Validation Test Cases
Test Case # 65
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
Steps
To test Realm Table Creation SUCCESS case
00085
To check the CreateRealmTable() API behavior by for different
Inputs
Function Validation
Server Should be in a state to call the validating function
RealmTable_Handle containing NULL value
1. Call DMBase_CreateRealmTable() API
2.
Expected Results
Post Condition
Check the output of DMBase_CreateRealmTable()
Success: RealmTable created as the RealmTable_Handle is not
NULL now
Control Should return to the Caller function
Test Case # 66
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
Realm Table Creation FAILURE case
0123
To check the CreateRealmTable() API behavior by for different
Inputs
Function Validation
Server Should be in a state to call the validating function
RealmTable_Handle not equal to NULL value
Steps
1.
Call DMBase_CreateRealmTable() API
2.
Check the output of DMBase_CreateRealmTable()
Expected Results
Post Condition
RealmTable cannot be created , as RealmTable allready exist
Control Should return to the Caller function
Test Case # 67
Test Case Title
Test Case ID
Purpose
Realm Table Entry Creation when entry all ready exist
00087
To check DMBase_CreatePeerTableEntry() API for different
inputs
- 99 -
Test Case Document
CC4GTI
Scenario
Pre-requisite
Input Data
Function Validation
Server Should be in a state to call the validating function
RealmTableEntry_Handle not equal to NULL
Steps
1.
Call DMBase_CreateRealmTableEntry() API
2.
Check it for the expected results
Expected Results
Post Condition
Failure: PeerTableEntry cannot be Created " RealmTableEntry
All ready exists "
Control Should return to the Caller function
Test Case # 68
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
Steps
To test Realm Table Entry Creation SUCCESS case
0124
To check DMBase_CreatePeerTableEntry() API for different
inputs
Function Validation
Server Should be in a state to call the validating function
RealmTableEntry_Handle containing NULL value
1. Call DMBase_CreateRealmTableEntry() API
2.
Expected Results
Post Condition
Check it for the expected results
Success: PeerTableEntry Created as RealmTableEntry_Handle
in not NULL now
Control Should return to the Caller function
Test Case # 69
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
Insertion in Realm Table SUCCESS case
00089
To check the behavior of DMBase_InsertInToTearlmTable() API
for different inputs
Function Validation
Server Should be in a state to call the validator function
Empty RealmTable with created Entry
Following values for insertion in RealmTable
Realm Name = DestinationRealm.ims.com
Application ID = 123456
Local Action = Proxy
Sewever Identifier = ServerOne, ServerTwo
- 100 -
Test Case Document
CC4GTI
Static/Dynamic= Static
ExpirationTime = 1 hr
Steps
1.
Call DMBase_InsertIntoRealmTable() API
2.
Check it for the expected results
Expected Results
Success : Values successfully inserted in RealmTable
Post Condition
Control Should return to the Caller function
Test Case # 70
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
To test Insertion in Realm Table FAILURE case
0125
To check the behavior of DMBase_InsertInToTearlmTable() API
for different inputs
Function Validation
Server Should be in a state to call the validating function
RealmTable with created Entry and having following Entry as
well
Realm Name = DestinationRealm.ims.com
Application ID = 123456
Local Action = Proxy
Sewever Identifier = ServerOne, ServerTwo
Static/Dynamic= Static
ExpirationTime = 1 hr
Following values for insertion in RealmTable
Realm Name = DestinationRealm.ims.com
Application ID = 123456
Local Action = Proxy
Sewever Identifier = ServerOne, ServerTwo
Static/Dynamic= Static
ExpirationTime = 1 hr
Steps
Expected Results
Post Condition
1.
Call DMBase_InsertIntoRealmTable() API
2.
Check it for the expected results
Failure : Entry Allready exists n RealmTable, Entry cannot be
inserted
Control Should return to the Caller function
- 101 -
Test Case Document
CC4GTI
Test Case # 71
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
To test Insertion in Realm Table when the value of one field is
missing
0126
To check the behavior of DMBase_InsertInToTearlmTable() API
for different inputs
Function Validation
Server Should be in a state to call the validating function
RealmTable with created Entry and having following Entry as
well
Realm Name = DestinationRealm.ims.com
Application ID = 123456
Local Action = Proxy
Sewever Identifier = ServerOne, ServerTwo
Static/Dynamic= Static
ExpirationTime = 1 hr
Following values for insertion in RealmTable
Realm Name = DestinationRealm.ims.com
Local Action = Proxy
Sewever Identifier = ServerOne, ServerTwo
Static/Dynamic= Static
ExpirationTime = 1 hr
Steps
Expected Results
Post Condition
1.
Call DMBase_InsertIntoRealmTable() API
2.
Check it for the expected results
Failure : Application ID missing, Entry cannot be inserted
Control Should return to the Caller function
Test Case # 72
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Lookup Realm Table Entry SUCCESS case
00091
To check the behavior of DMBase_LookUpRealmTableEntry()
API for different input values
Function Validation
Server Should be in a state to call the validating function
- 102 -
Test Case Document
Input Data
CC4GTI
RealmTable with Entry having following values
Realm Name = DestinationRealm.ims.com
Application ID = 123456
Local Action = Proxy
Sewever Identifier = ServerOne, ServerTwo
Static/Dynamic= Static
ExpirationTime = 1 hr
Hash_Table_Key = DestinationRealm.ims.com123456
Steps
Expected Results
Post Condition
1.
Call DMBase_LooKUpRealmTable() API
2.
Check it for expected results
Success : RealmTable Entry Found
Control Should return to the Caller function
Test Case # 73
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
Lookup Realm Table Entry FAILURE case
0127
To check the behavior of DMBase_LookUpRealmTableEntry()
API for different input values
Function Validation
Server Should be in a state to call the validating function
RealmTable with Entry having following values
Realm Name = DestinationRealm.ims.com
Application ID = 123456
Local Action = Proxy
Sewever Identifier = ServerOne, ServerTwo
Static/Dynamic= Static
ExpirationTime = 1 hr
Hash_Table_Key = DestinationRealmOne.ims.com123456
Steps
Expected Results
Post Condition
1.
Call DMBase_LooKUpRealmTable() API
2.
Check it for expected results
Failure : RealmTable Entry not Found
Control Should return to the Caller function
- 103 -
Test Case Document
CC4GTI
Test Case # 74
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
Lookup Realm Table Entry when Realm Table is empty
0128
To check the behavior of DMBase_LookUpRealmTableEntry()
API for different input values
Function Validation
Server Should be in a state to call the validating function
Empty RealmTable
Hash_Table_Key = DestinationRealmOne.ims.com123456
Steps
Expected Results
Post Condition
1.
Call DMBase_LooKUpRealmTable() API
2.
Check it for expected results
Failure : RealmTable is emtpy
Control Should return to the Caller function
Test Case # 75
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
Deletion of Realm Table Entry SUCCESS case
00093
To check the behavior of DMBase_RealmTableEntry() API for
different input values
Function Validation
Server Should be in a state to call the validating function
RealmTable with Entry having following values
Realm Name = DestinationRealm.ims.com
Application ID = 123456
Local Action = Proxy
Sewever Identifier = ServerOne, ServerTwo
Static/Dynamic= Static
ExpirationTime = 1 hr
Hash_Table_Key = DestinationRealm.ims.com123456
Steps
Expected Results
Post Condition
1.
Call DMBase_DeleteRealmTableEntry() API
2.
Check it for expected results
Success : RealmTable Entry Deleted
Control Should return to the Caller function
- 104 -
Test Case Document
CC4GTI
Test Case # 76
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
Deletion of Realm Table Entry FAILURE case
0129
To check the behavior of DMBase_RealmTableEntry() API for
different input values
Function Validation
Server Should be in a state to call the validating function
RealmTable with Entry having following values
Realm Name = DestinationRealm.ims.com
Application ID = 123456
Local Action = Proxy
Sewever Identifier = ServerOne, ServerTwo
Static/Dynamic= Static
ExpirationTime = 1 hr
Hash_Table_Key = DestinationRealmOne.ims.com123456
Steps
Expected Results
Post Condition
1.
Call DMBase_DeleteRealmTableEntry() API
2.
Check it for the expected results
Failure : RealmTable Entry not Found for deletion
Control Should return to the Caller function
Test Case # 77
Test Case Title
Test Case ID
Purpose
Scenario
Pre-requisite
Input Data
Deletion of Realm Table Entry when Realm Table is Empty
0130
To check the behavior of DMBase_RealmTableEntry() API for
different input values
Function Validation
Server Should be in a state to call the validating function
Empty RealmTable
Hash_Table_Key = DestinationRealm.ims.com123456
Steps
Expected Results
Post Condition
1.
Call DMBase_DeleteRealmTableEntry() API
2.
Check it for expected results
Failure : RealmTable is empty
Control Should return to the Caller function
- 105 -
Test Case Document
CC4GTI
5. Hardware and Software requirements for testing
Hardware Requirements
CPU
RAM
Disk Storage
2.16 GHz
64 MB
20 GB
5.1 Software Requirements for testing
Operating System
Windows 2000
Windows 2003 Server
Windows XP
Linux
Development Dependencies
Development Dependencies Software
AMPS
6. Test Report Form (Sample)
The following form will be used as the test reporting form.
Test Report Form
Version #:
Prepared By:
Sr#
Test Case Name
Input Data
Expected Results
Actual Result
01
This form contains information about test result when product is tested.
- 106 -
Status
Test Case Document
CC4GTI
7. References
[1]
Diameter Base Protocol [IETF RFC 3588]
- 107 -