File: TestRequestData.py

package info (click to toggle)
python-applicationinsights 0.10.0-2
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 608 kB
  • ctags: 801
  • sloc: python: 4,572; makefile: 3
file content (147 lines) | stat: -rw-r--r-- 5,152 bytes parent folder | download
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
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
import unittest
import datetime
import uuid
import sys
import json

import sys, os, os.path
root_directory = os.path.join(os.path.dirname(os.path.realpath(__file__)), '..', '..', '..', '..')
if root_directory not in sys.path:
    sys.path.append(root_directory)

from applicationinsights.channel.contracts import *
from .Utils import TestJsonEncoder

class TestRequestData(unittest.TestCase):
    def test_construct(self):
        item = RequestData()
        self.assertNotEqual(item, None)
    
    def test_ver_property_works_as_expected(self):
        expected = 42
        item = RequestData()
        item.ver = expected
        actual = item.ver
        self.assertEqual(expected, actual)
        expected = 13
        item.ver = expected
        actual = item.ver
        self.assertEqual(expected, actual)
    
    def test_id_property_works_as_expected(self):
        expected = 'Test string'
        item = RequestData()
        item.id = expected
        actual = item.id
        self.assertEqual(expected, actual)
        expected = 'Other string'
        item.id = expected
        actual = item.id
        self.assertEqual(expected, actual)
    
    def test_name_property_works_as_expected(self):
        expected = 'Test string'
        item = RequestData()
        item.name = expected
        actual = item.name
        self.assertEqual(expected, actual)
        expected = 'Other string'
        item.name = expected
        actual = item.name
        self.assertEqual(expected, actual)
    
    def test_start_time_property_works_as_expected(self):
        expected = 'Test string'
        item = RequestData()
        item.start_time = expected
        actual = item.start_time
        self.assertEqual(expected, actual)
        expected = 'Other string'
        item.start_time = expected
        actual = item.start_time
        self.assertEqual(expected, actual)
    
    def test_duration_property_works_as_expected(self):
        expected = 'Test string'
        item = RequestData()
        item.duration = expected
        actual = item.duration
        self.assertEqual(expected, actual)
        expected = 'Other string'
        item.duration = expected
        actual = item.duration
        self.assertEqual(expected, actual)
    
    def test_response_code_property_works_as_expected(self):
        expected = 'Test string'
        item = RequestData()
        item.response_code = expected
        actual = item.response_code
        self.assertEqual(expected, actual)
        expected = 'Other string'
        item.response_code = expected
        actual = item.response_code
        self.assertEqual(expected, actual)
    
    def test_success_property_works_as_expected(self):
        expected = True
        item = RequestData()
        item.success = expected
        actual = item.success
        self.assertEqual(expected, actual)
        expected = False
        item.success = expected
        actual = item.success
        self.assertEqual(expected, actual)
    
    def test_http_method_property_works_as_expected(self):
        expected = 'Test string'
        item = RequestData()
        item.http_method = expected
        actual = item.http_method
        self.assertEqual(expected, actual)
        expected = 'Other string'
        item.http_method = expected
        actual = item.http_method
        self.assertEqual(expected, actual)
    
    def test_url_property_works_as_expected(self):
        expected = 'Test string'
        item = RequestData()
        item.url = expected
        actual = item.url
        self.assertEqual(expected, actual)
        expected = 'Other string'
        item.url = expected
        actual = item.url
        self.assertEqual(expected, actual)
    
    def test_properties_property_works_as_expected(self):
        item = RequestData()
        actual = item.properties
        self.assertNotEqual(actual, None)
    
    def test_measurements_property_works_as_expected(self):
        item = RequestData()
        actual = item.measurements
        self.assertNotEqual(actual, None)
    
    def test_serialize_works_as_expected(self):
        item = RequestData()
        item.ver = 42
        item.id = 'Test string'
        item.name = 'Test string'
        item.start_time = 'Test string'
        item.duration = 'Test string'
        item.response_code = 'Test string'
        item.success = True
        item.http_method = 'Test string'
        item.url = 'Test string'
        for key, value in { 'key1': 'test value 1' , 'key2': 'test value 2' }.items():
            item.properties[key] = value
        for key, value in { 'key1': 3.1415 , 'key2': 42.2 }.items():
            item.measurements[key] = value
        actual = json.dumps(item.write(), separators=(',', ':'), cls=TestJsonEncoder)
        expected = '{"ver":42,"id":"Test string","name":"Test string","startTime":"Test string","duration":"Test string","responseCode":"Test string","success":true,"httpMethod":"Test string","url":"Test string","properties":{"key1":"test value 1","key2":"test value 2"},"measurements":{"key1":3.1415,"key2":42.2}}'
        self.assertEqual(expected, actual)