aboutsummaryrefslogtreecommitdiffstats
path: root/fr/FR_Tests.ttcn
blob: a7b8a977e01cda02ceecd91250268fd7d6c278ee (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
module FR_Tests {

import from General_Types all;
import from Osmocom_Types all;
import from Osmocom_Gb_Types all;

import from NS_Emulation all;
import from BSSGP_Emulation all;

modulepar {
	NSConfigurations mp_nsconfig := {
		{
			provider := {
				fr := {
					netdev := "hdlc1",
					dlci := 123
				}
			},
			nsvci := 123,
			nsei := 123,
			role_sgsn := false,
			handle_sns := false
		}
	};
}

type record GbInstance {
	NS_CT vc_NS,
	BSSGP_CT vc_BSSGP,
	BssgpConfig cfg
};

const integer NUM_GB := 1;
type record length(NUM_GB) of GbInstance GbInstances;
type record length(NUM_GB) of NSConfiguration NSConfigurations;
type record length(NUM_GB) of BssgpCellId BssgpCellIds;


type component test_CT {
	var GbInstances g_gb;
};

private function f_init_gb(inout GbInstance gb, charstring id, integer offset) runs on test_CT {
	var charstring id_idx := id & int2str(offset);
	gb.vc_NS := NS_CT.create(id_idx & "-NSemu");
	gb.vc_BSSGP := BSSGP_CT.create(id_idx & "-BSSGPemu");
	connect(gb.vc_BSSGP:BSCP, gb.vc_NS:NS_SP);
	gb.vc_NS.start(NSStart(mp_nsconfig[offset], id_idx));
	gb.vc_BSSGP.start(BssgpStart(gb.cfg, testcasename()));
}

testcase TC_foo() runs on test_CT {
	g_gb[0].cfg := {
		nsei := 123,
		sgsn_role := false,
		bvc := {
			{
				bvci := 1123,
				cell_id := {
					ra_id := {
						lai := {
							mcc_mnc := '262F42'H,
							lac := 11123
						},
						rac := 1
					},
					cell_id := 31123
				},
				depth := BSSGP_DECODE_DEPTH_LLC
			}
		}
	};
	f_init_gb(g_gb[0], "gb", 0);
	while (true) {
		f_sleep(100.0);
	}
}

control {
	execute( TC_foo() );
}

}