Commit bca85ae3 authored by Elemer Lelik's avatar Elemer Lelik
Browse files

asciidoc migration

parent 551cfb46
---
Author: Gábor Szalai
Version: 1551-CNL 113, Rev. A
Date: 2014-08-08
---
= Thrift Test Port generator for TTCN-3 Toolset with TITAN, Description
:author: Gábor Szalai
:revnumber: 1551-CNL 113, Rev. A
:revdate: 2014-08-08
:toc:
*Abstract*
The Thrift Test Port generator produces TTCN-3 test ports based on Apache Thrift definitions.
= Functionality
The Thrift Test Port Generator generates TTCN3 test port definition and c++ wrapper from the Apache Thrift definitions.
The generated test port is able to simulate both Thrift based client and servers.
== System Requirements
In order to operate the Thrift test port, the following system requirements must be satisfied:
* TITAN TTCN-3 Test Executor version R7A (1.7.pl0) or higher installed. For installation guide, see <<_2,here>>.
* Platform:- Linux- Solaris
* <<_5,Thrift library>>
* Gnu AWK 3.1.8 or later
= Feature list
== Generate test port
First the Thrift library files should be generated by the Thrift:
[source]
----
thrift –gen cpp <thrift files>
----
The command above generates the C++ code for the thrift functionality. The Thrift Test Port generator creates the TTCN-3 type definition, test port and wrapper around code generated above.
Generate the TTCN-3 test port from the Thrift definition:
[source]
----
gawk –f TTPG.awk <thrift files>
----
== Server closing issue
The Thrift library doesn’t support the forced close of the inactive client connection from server side. There is a workaround implemented in the Thrift Test Port generator. Generate the test port with the following way:
[source]
----
gawk –f TTPG.awk –v myserver=1 <thrift files>
----
And add the files `myTThreadedServer.cc` and `myTThreadedServer.h` to the project.
Those files are a patched version of the original thrift library code, and support the closing of the connection by the server.
== Type mapping
The following mapping is used:
=== Basic types
The TTCN-3 type definitions of the Thrift basic types:
[source]
----
type boolean bool
type integer byte
type integer i16
type integer i32
type integer i64
type charstring string
type octetstring binary
----
=== Complex types
The complex type and definition mapping:
[cols=",",options="header",]
|==================================
|Thrift |TTCN-3
|`list<>` |record of
|`set<>` |set of
|`struct` |record
|`exception` |record
|`service` |Procedure based test port
|`funct` |signature
|==================================
= Terminology
No specific terminology is used.
== Abbreviations
API:: Application Programming Interface
ASP:: Abstract Service Primitive
PDU:: Protocol Data Unit
RTE:: Run-Time Environment
SUT:: System Under Test
TTCN-3:: Testing and Test Control Notation version 3
= References
1. [[_1]]ETSI ES 201 873-1 v4.3.1 (2011-06) +
The Testing and Test Control Notation version 3. Part 1: Core Language
2. [[_2]]1/198 17-CRL 113 200/4 Uen +
User Guide for the TITAN TTCN-3 Test Executor
3. [[_3]]109 21-CNL 113 785-1 +
Thrift Test Port generator for TTCN-3 Toolset with TITAN, Product Revision Information
4. [[_4]]2/198 17-CRL 113 200/4 Uen +
Programmer’s Technical Reference for TITAN TTCN–3 Test Executor
5. [[_5]]Apache Thrift +
https://thrift.apache.org/
---
Author: Gábor Szalai
Version: 109 21-CNL 113 785-1, Rev. A
Date: 2014-08-08
---
= Thrift Test Port generator for TTCN-3 Toolset with TITAN, Product Revision Information
:author: Gábor Szalai
:revnumber: 109 21-CNL 113 785-1, Rev. A
:revdate: 2014-08-08
:toc:
= Product Revision
== Product
|===
|Old Product number:| NA |
|New Product number:| CNL 113 785 | R1A
|===
== Included Parts
=== Source Code
[source]
----
TTPG.awk
Thrift_Common.ttcn
Thrift_Common_Converter.cc
Thrift_Common_Converter.hh
myTThreadedServer.cc
myTThreadedServer.h
----
=== Documentation
==== Description
[cols="50%,30%,20%",options="header",]
|===
|Document Name |Document Number | Revision
|Thrift Test Port generator for TTCN-3 Toolset with TITAN, Function Description |1551-CNL 113 785 | A
|===
= Reason for Revision
== Requirement Specification
== Change Requests
[cols="50%,50%",options="header",]
|===
| CR ID | Description
|===
== Exemption Requests
None.
== Trouble Reports
Trouble reports accepted until 2014-04-14.
=== Implemented Trouble Reports
[cols="50%,50%",options="header",]
|===
| TR ID | Trouble Effect
|===
=== Not Implemented Trouble Reports
[cols="50%,50%",options="header",]
|===
| TR ID | Trouble Effect
|===
= Product Changes
== R1A
Initial release.
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment