Esempio n. 1
0
def test_stats_search_tickets_query_ok():
    rt_object = RTApiMock()
    rt_object.set_return(
        [
            u"id: ticket/887677",
            u"owner: [email protected]",
            u"subject: create rt dashboard",
            u"status: open",
            u"priority: 26",
            u"cf.{servico}: csc-gsiic",
            u"cf.{is - informatica e sistemas}: dir-inbox",
            u"lastupdated: wed jul 15 21:16:50 2015",
        ]
    )
    response = stats_search_tickets(rt_object, "My search")
    assert response == [
        {
            u"status": u"open",
            u"priority": u"26",
            u"lastupdated": u"wed jul 15 21:16:50 2015",
            u"owner": u"*****@*****.**",
            u"cf.{is - informatica e sistemas}": u"dir-inbox",
            "id": u"887677",
            u"cf.{servico}": u"csc-gsiic",
            u"subject": u"create rt dashboard",
        }
    ]
Esempio n. 2
0
def test_search_tickets_With_result():
    rt_object = RTApiMock()
    rt_object.set_return([
        u'id: ticket/887677',
        u'owner: [email protected]',
        u'subject: create rt dashboard',
        u'status: open',
        u'priority: 26',
        u'cf.{servico}: csc-gsiic',
        u'cf.{is - informatica e sistemas}: dir-inbox',
        u'lastupdated: wed jul 15 21:16:50 2015',
    ])
    result = search_tickets(rt_object, '*****@*****.**')
    assert result == {
        'tickets': {
            '07/15': [{
                u'status': u'open',
                u'priority': u'26',
                u'lastupdated': u'wed jul 15 21:16:50 2015',
                'auxiliary_date': '07/15',
                u'owner': u'*****@*****.**',
                u'cf.{is - informatica e sistemas}': u'dir-inbox',
                'id': u'887677',
                u'cf.{servico}': u'csc-gsiic',
                u'subject': u'create rt dashboard'
            }]
        },
        'no_result': False,
        'number_tickets': 1,
        'email_limit': {
            'new': 7,
            'open': 1,
            'rejected': 7
        }
    }
Esempio n. 3
0
def test_stats_search_number_of_tickets_query_ok():
    rt_object = RTApiMock()
    rt_object.set_return([
        u'812344: create rt dashboard',
    ])
    response = stats_search_number_of_tickets(rt_object, 'My search')
    assert response == 1
Esempio n. 4
0
def test_number_of_created_tickets_on_a_date_query_ok():
    rt_object = RTApiMock()
    rt_object.set_return([
        u'812344: create rt dashboard',
    ])
    response = number_of_created_tickets_on_a_date(rt_object, 'My search')
    assert response == 1
Esempio n. 5
0
def test_get_list_of_tickets_detail_True():
    rt_object = RTApiMock()
    rt_object.set_return(
        [
                u'rt/4.0.6 200 ok', u'',
                u'id: ticket/887677',
                u'owner: [email protected]',
                u'subject: create rt dashboard',
                u'status: open',
                u'priority: 26',
                u'cf.{servico}: csc-gsiic',
                u'cf.{is - informatica e sistemas}: dir-inbox',
            ]
    )
    result = get_list_of_tickets(rt_object, 'Owner = "*****@*****.**" and Status == "open"', True)
    assert rt_object.uri == '/search/ticket'
    assert rt_object.data == {
        'query': 'Owner = "*****@*****.**" and Status == "open"',
        'format': 'l'
    }
    assert result == [
        {
            u'status': u'open',
            u'priority': u'26',
            u'owner': u'*****@*****.**',
            u'cf.{is - informatica e sistemas}': u'dir-inbox',
            u'id': u'887677',
            u'cf.{servico}': u'csc-gsiic',
            u'subject': u'create rt dashboard'
        }
    ]
Esempio n. 6
0
def test_get_number_of_tickets_query_not_ok_raise_exception():
    rt_object = RTApiMock()
    rt_object.set_return([
                u'rt/4.0.6 200 ok', u'',
                u'invalid query: just testing...',
    ])
    result = get_number_of_tickets(rt_object, 'Something')
    assert result == 0
Esempio n. 7
0
def test_get_number_of_tickets_query_not_ok():
    rt_object = RTApiMock()
    rt_object.set_return([
                u'rt/4.0.6 200 ok', u'',
                u'887677: create rt dashboard',
    ])
    result = get_number_of_tickets(rt_object, '')
    assert result == 0
Esempio n. 8
0
def test_get_number_of_tickets_query_not_ok_raise_exception():
    rt_object = RTApiMock()
    rt_object.set_return([
        u'rt/4.0.6 200 ok',
        u'',
        u'invalid query: just testing...',
    ])
    result = get_number_of_tickets(rt_object, 'Something')
    assert result == 0
Esempio n. 9
0
def test_get_urgent_tickets():
    rt_object = RTApiMock()
    rt_object.set_return([
                u'rt/4.0.6 200 ok', u'',
                u'81818: This is a test...',
    ])

    result = get_urgent_tickets(rt_object)
    assert result == [{'id': '81818', 'subject': 'This is a test...'}]
Esempio n. 10
0
def test_get_number_of_tickets_query_not_ok():
    rt_object = RTApiMock()
    rt_object.set_return([
        u'rt/4.0.6 200 ok',
        u'',
        u'887677: create rt dashboard',
    ])
    result = get_number_of_tickets(rt_object, '')
    assert result == 0
Esempio n. 11
0
def test_get_urgent_tickets():
    rt_object = RTApiMock()
    rt_object.set_return([
        u'rt/4.0.6 200 ok',
        u'',
        u'81818: This is a test...',
    ])

    result = get_urgent_tickets(rt_object)
    assert result == [{'id': '81818', 'subject': 'This is a test...'}]
Esempio n. 12
0
def test_private__generate_summary_file():
    rt_object = RTApiMock()
    rt_object.set_return(
        [
            u'rt/4.0.6 200 ok', u'',
            u'id: ticket/887677',
            u'owner: [email protected]',
            u'status: open',
            u'cf.{is - informatica e sistemas}: dir-inbox',
            u'',
            u'rt/4.0.6 200 ok', u'',
            u'id: ticket/887677',
            u'owner: [email protected]',
            u'status: new',
            u'cf.{is - informatica e sistemas}: dir-inbox',
            u'',
        ]
    )
    list_emails = set(['*****@*****.**', '*****@*****.**'])
    list_status = ['new', 'open']

    summary = __generate_summary_file(rt_object, list_emails, list_status)
    assert summary == {
        'unknown':
            {
                'new': 0,
                'open': 0,
            },
        u'*****@*****.**':
            {
                'new': 3,
                'open': 0,
            },
        'dir-inbox':
            {
                'new': 0,
                'open': 0,
            },
        u'*****@*****.**':
            {
                'new': 0,
                'open': 3,
            },
        'dir':
            {
                'new': 0,
                'open': 0
            }
    }


# As it is very complicated to mock the open function, I will pass those testes:
# generate_summary_file
# get_summary_info
#
Esempio n. 13
0
def test_user_tickets_details_known_email():
    rt_object = RTApiMock()
    rt_object.set_return([
                u'id: ticket/887677',
                u'owner: [email protected]',
                u'subject: create rt dashboard',
                u'status: open',
                u'priority: 26',
                u'cf.{servico}: csc-gsiic',
                u'cf.{is - informatica e sistemas}: dir-inbox',
    ])
    result = user_tickets_details(rt_object, '*****@*****.**')
    assert result == {
        'email_limit':
            {
                'new': 7,
                'open': 1,
                'rejected': 7
            },
        'number_tickets_per_status':
            {
                u'open': 1
            },
        'tickets':
            {
                u'open':
                    {
                        u'26':
                            [
                                {
                                    u'cf.{is - informatica e sistemas}': u'dir-inbox',
                                    u'cf.{servico}': u'csc-gsiic',
                                    'id': u'887677',
                                    'kanban_actions':
                                        {
                                            'back': True,
                                            'decrease_priority': True,
                                            'forward': True,
                                            'increase_priority': True,
                                            'interrupted': True,
                                            'stalled': True
                                        },
                                    u'owner': u'*****@*****.**',
                                    u'priority': u'26',
                                    u'status': u'open',
                                    u'subject': u'create rt dashboard'
                                }
                            ]
                    }
            }
    }
Esempio n. 14
0
def test_ticket_actions_decrease_priority():
    rt_object = RTApiMock()
    rt_object.set_return([
        u'id: ticket/887677',
        u'owner: [email protected]',
        u'subject: create rt dashboard',
        u'status: open',
        u'priority: 26',
        u'cf.{servico}: csc-gsiic',
        u'cf.{is - informatica e sistemas}: dir-inbox',
    ])
    ticket_actions(rt_object, '887677', 'decrease_priority', '*****@*****.**',
                   '*****@*****.**')
    assert rt_object.uri == 'ticket/887677/edit'
    assert rt_object.data == {'content': 'priority: 25\n'}
Esempio n. 15
0
def test_user_tickets_details_dir_inbox():
    rt_object = RTApiMock()
    rt_object.set_return([
                u'id: ticket/887677',
                u'owner: nobody',
                u'subject: create rt dashboard',
                u'status: open',
                u'priority: 26',
                u'cf.{servico}: csc-gsiic',
                u'cf.{is - informatica e sistemas}: dir-inbox',
    ])
    result = user_tickets_details(rt_object, 'dir-inbox')
    assert rt_object.data == {
        'query': 'Queue = "general" AND "CF.{IS - Informatica e Sistemas}" = "DIR-INBOX" '
                 'AND Owner = "Nobody"  AND Status != "resolved" AND Status != "deleted" ',
        'format': 'l'
    }
    assert result == {
        'tickets':
            {
                u'26':
                    [
                        {
                            u'status': u'open',
                            u'priority': u'26',
                            'kanban_actions':
                                {
                                    'increase_priority': True,
                                    'decrease_priority': True,
                                    'back': True,
                                    'interrupted': False,
                                    'stalled': False,
                                    'forward': False
                                },
                            u'owner': u'nobody',
                            u'cf.{is - informatica e sistemas}': u'dir-inbox',
                            u'id': u'887677',
                            u'cf.{servico}': u'csc-gsiic',
                            u'subject': u'create rt dashboard'
                        }
                    ]
            },
        'email_limit': {},
        'number_tickets_per_status':
            {
                'dir-inbox': 1
            }
    }
Esempio n. 16
0
def test_ticket_actions_forward_new():
    rt_object = RTApiMock()
    rt_object.set_return([
        u'id: ticket/887677',
        u'owner: [email protected]',
        u'subject: create rt dashboard',
        u'status: new',
        u'priority: 26',
        u'cf.{servico}: csc-gsiic',
        u'cf.{is - informatica e sistemas}: dir-inbox',
        u'starts: ' + str(ctime(time())),
        u'timeworked: 10 minutes',
    ])
    ticket_actions(rt_object, '887677', 'forward', '*****@*****.**', '*****@*****.**')
    assert rt_object.uri == 'ticket/887677/edit'
    assert 'status: open\nstarts: ' in rt_object.data['content']
Esempio n. 17
0
def test_user_tickets_details_unknown():
    rt_object = RTApiMock()
    rt_object.set_return(
        [
                u'id: ticket/887677',
                u'owner: [email protected]',
                u'subject: create rt dashboard',
                u'status: open',
                u'priority: 26',
                u'cf.{servico}: csc-gsiic',
                u'cf.{is - informatica e sistemas}: dir-inbox',
        ]
    )
    result = user_tickets_details(rt_object, 'unknown')
    assert 'Owner != "Nobody"' in rt_object.data['query']
    assert result == {
        'tickets':
            {
                u'26':
                    [
                        {
                            u'status': u'open',
                            u'priority': u'26',
                            'kanban_actions':
                                {
                                    'increase_priority': False,
                                    'decrease_priority': False,
                                    'back': False,
                                    'interrupted': False,
                                    'stalled': False,
                                    'forward': False
                                },
                            u'owner': u'*****@*****.**',
                            u'cf.{is - informatica e sistemas}': u'dir-inbox',
                            u'id': u'887677',
                            u'cf.{servico}': u'csc-gsiic',
                            u'subject': u'create rt dashboard'
                        }
                    ]
            },
        'email_limit': {},
        'number_tickets_per_status':
            {
                'unknown': 1
            }
    }
Esempio n. 18
0
def test_get_ticket_links():
    rt_object = RTApiMock()
    rt_object.set_return(
        [
            u'rt/4.0.6 200 ok',
            u'',
            u'id: ticket/885775/links',
            u'',
            u'members: fsck.com-rt://uc.pt/ticket/887677,',
            u'fsck.com-rt://uc.pt/ticket/897183,',
            u'fsck.com-rt://uc.pt/ticket/899145',
            u'',
            u''
        ]
    )
    result = get_ticket_links(rt_object, 885775)
    assert result == [[u'members', u'887677'], [u'members', u'897183'], [u'members', u'899145']]
Esempio n. 19
0
def test_ticket_actions_unset_urgent():
    rt_object = RTApiMock()
    rt_object.set_return(
        [
                u'id: ticket/887677',
                u'owner: [email protected]',
                u'subject: create rt dashboard',
                u'status: open',
                u'priority: 26',
                u'cf.{servico}: csc-gsiic',
                u'cf.{is - informatica e sistemas}: dir-inbox',
        ]
    )
    ticket_actions(rt_object, '887677', 'unset_urgent', '*****@*****.**', '*****@*****.**')
    assert rt_object.uri == 'ticket/887677/edit'
    assert rt_object.data == {
        'content': 'cf.{DITIC-Urgent}: \n',
    }
Esempio n. 20
0
def test_ticket_actions_stalled_open():
    rt_object = RTApiMock()
    rt_object.set_return(
        [
                u'id: ticket/887677',
                u'owner: [email protected]',
                u'subject: create rt dashboard',
                u'status: open',
                u'priority: 26',
                u'cf.{servico}: csc-gsiic',
                u'cf.{is - informatica e sistemas}: dir-inbox',
                u'starts: '+str(ctime(time())),
                u'timeworked: 10 minutes',
        ]
    )
    ticket_actions(rt_object, '887677', 'stalled', '*****@*****.**', '*****@*****.**')
    assert rt_object.uri == 'ticket/887677/edit'
    assert 'status: stalled\nstarts: 0\ntimeworked: 10.' in rt_object.data['content']
Esempio n. 21
0
def test_ticket_actions_unknown_option():
    rt_object = RTApiMock()
    rt_object.set_return([
        u'id: ticket/887677',
        u'owner: [email protected]',
        u'subject: create rt dashboard',
        u'status: open',
        u'priority: 26',
        u'cf.{servico}: csc-gsiic',
        u'cf.{is - informatica e sistemas}: dir-inbox',
    ])
    result = ticket_actions(rt_object, '887677', 'not_known', '*****@*****.**',
                            '*****@*****.**')
    assert rt_object.data == {'query': 'id = "887677"', 'format': 'l'}
    assert rt_object.uri == '/search/ticket'
    assert result == {
        'action_result': 'Still working on it... sorry for the inconvenience!'
    }
Esempio n. 22
0
def test_private__generate_summary_file():
    rt_object = RTApiMock()
    rt_object.set_return([
        u'rt/4.0.6 200 ok',
        u'',
        u'id: ticket/887677',
        u'owner: [email protected]',
        u'status: open',
        u'cf.{is - informatica e sistemas}: dir-inbox',
        u'',
        u'rt/4.0.6 200 ok',
        u'',
        u'id: ticket/887677',
        u'owner: [email protected]',
        u'status: new',
        u'cf.{is - informatica e sistemas}: dir-inbox',
        u'',
    ])
    list_emails = set(['*****@*****.**', '*****@*****.**'])
    list_status = ['new', 'open']

    summary = __generate_summary_file(rt_object, list_emails, list_status)
    assert summary == {
        'unknown': {
            'new': 0,
            'open': 0,
        },
        u'*****@*****.**': {
            'new': 3,
            'open': 0,
        },
        'dir-inbox': {
            'new': 0,
            'open': 0,
        },
        u'*****@*****.**': {
            'new': 0,
            'open': 3,
        },
        'dir': {
            'new': 0,
            'open': 0
        }
    }
Esempio n. 23
0
def test_user_tickets_details_dir_inbox():
    rt_object = RTApiMock()
    rt_object.set_return([
        u'id: ticket/887677',
        u'owner: nobody',
        u'subject: create rt dashboard',
        u'status: open',
        u'priority: 26',
        u'cf.{servico}: csc-gsiic',
        u'cf.{is - informatica e sistemas}: dir-inbox',
    ])
    result = user_tickets_details(rt_object, 'dir-inbox')
    assert rt_object.data == {
        'query':
        'Queue = "general" AND "CF.{IS - Informatica e Sistemas}" = "DIR-INBOX" '
        'AND Owner = "Nobody"  AND Status != "resolved" AND Status != "deleted" ',
        'format':
        'l'
    }
    assert result == {
        'tickets': {
            u'26': [{
                u'status': u'open',
                u'priority': u'26',
                'kanban_actions': {
                    'increase_priority': True,
                    'decrease_priority': True,
                    'back': True,
                    'interrupted': False,
                    'stalled': False,
                    'forward': False
                },
                u'owner': u'nobody',
                u'cf.{is - informatica e sistemas}': u'dir-inbox',
                u'id': u'887677',
                u'cf.{servico}': u'csc-gsiic',
                u'subject': u'create rt dashboard'
            }]
        },
        'email_limit': {},
        'number_tickets_per_status': {
            'dir-inbox': 1
        }
    }
Esempio n. 24
0
def test_user_closed_tickets_known_email():
    rt_object = RTApiMock()
    rt_object.set_return([
        u'id: ticket/887677',
        u'owner: [email protected]',
        u'subject: create rt dashboard',
        u'status: open',
        u'priority: 26',
        u'cf.{servico}: csc-gsiic',
        u'cf.{is - informatica e sistemas}: dir-inbox',
        u'lastupdated: wed jul 15 21:16:50 2015',
    ])
    result = user_closed_tickets(rt_object, '*****@*****.**')
    assert result == {
        'tickets': {
            '07/15': [{
                u'status': u'open',
                u'priority': u'26',
                'kanban_actions': {
                    'increase_priority': True,
                    'decrease_priority': True,
                    'back': True,
                    'interrupted': True,
                    'stalled': True,
                    'forward': True
                },
                u'lastupdated': u'wed jul 15 21:16:50 2015',
                'auxiliary_date': '07/15',
                u'owner': u'*****@*****.**',
                u'cf.{is - informatica e sistemas}': u'dir-inbox',
                'id': u'887677',
                u'cf.{servico}': u'csc-gsiic',
                u'subject': u'create rt dashboard'
            }]
        },
        'email_limit': {
            'new': 7,
            'open': 1,
            'rejected': 7
        },
        'number_tickets_per_status': {
            '*****@*****.**': 1
        }
    }
Esempio n. 25
0
def test_user_closed_tickets_unknown_email():
    rt_object = RTApiMock()
    rt_object.set_return([
                u'id: ticket/887677',
                u'owner: [email protected]',
                u'subject: create rt dashboard',
                u'status: open',
                u'priority: 26',
                u'cf.{servico}: csc-gsiic',
                u'cf.{is - informatica e sistemas}: dir-inbox',
    ])
    test_config = DITICConfig()
    test_config.email_to_user = {
        '*****@*****.**': 'Vapi',
        '*****@*****.**': 'Alex',
    }
    with pytest.raises(ValueError) as value_error:
        user_closed_tickets(rt_object, '*****@*****.**')
    assert 'Unknown email/user:' in str(value_error)
Esempio n. 26
0
def test_user_closed_tickets_unknown_email():
    rt_object = RTApiMock()
    rt_object.set_return([
        u'id: ticket/887677',
        u'owner: [email protected]',
        u'subject: create rt dashboard',
        u'status: open',
        u'priority: 26',
        u'cf.{servico}: csc-gsiic',
        u'cf.{is - informatica e sistemas}: dir-inbox',
    ])
    test_config = DITICConfig()
    test_config.email_to_user = {
        '*****@*****.**': 'Vapi',
        '*****@*****.**': 'Alex',
    }
    with pytest.raises(ValueError) as value_error:
        user_closed_tickets(rt_object, '*****@*****.**')
    assert 'Unknown email/user:' in str(value_error)
Esempio n. 27
0
def test_get_list_of_tickets_detail_False():
    rt_object = RTApiMock()
    rt_object.set_return(
        [
            u'rt/4.0.6 200 ok', u'',
            u'887677: create rt dashboard',
        ]
    )
    result = get_list_of_tickets(rt_object, 'Owner = "*****@*****.**" and Status == "open"', False)
    assert rt_object.uri == '/search/ticket'
    assert rt_object.data == {
        'query': 'Owner = "*****@*****.**" and Status == "open"',
    }
    assert result == [
        {
            u'subject': u'create rt dashboard',
            u'id': u'887677',
        }
    ]
Esempio n. 28
0
def test_search_tickets_With_result():
    rt_object = RTApiMock()
    rt_object.set_return([
                u'id: ticket/887677',
                u'owner: [email protected]',
                u'subject: create rt dashboard',
                u'status: open',
                u'priority: 26',
                u'cf.{servico}: csc-gsiic',
                u'cf.{is - informatica e sistemas}: dir-inbox',
                u'lastupdated: wed jul 15 21:16:50 2015',
    ])
    result = search_tickets(rt_object, '*****@*****.**')
    assert result == {
        'tickets':
            {
                '07/15':
                    [
                        {
                            u'status': u'open',
                            u'priority': u'26',
                            u'lastupdated': u'wed jul 15 21:16:50 2015',
                            'auxiliary_date': '07/15',
                            u'owner': u'*****@*****.**',
                            u'cf.{is - informatica e sistemas}': u'dir-inbox',
                            'id': u'887677',
                            u'cf.{servico}': u'csc-gsiic',
                            u'subject': u'create rt dashboard'
                        }
                    ]
            },
        'no_result': False,
        'number_tickets': 1,
        'email_limit':
            {
                'new': 7,
                'open': 1,
                'rejected': 7
            }
    }
Esempio n. 29
0
def test_ticket_actions_unknown_option():
    rt_object = RTApiMock()
    rt_object.set_return(
        [
                u'id: ticket/887677',
                u'owner: [email protected]',
                u'subject: create rt dashboard',
                u'status: open',
                u'priority: 26',
                u'cf.{servico}: csc-gsiic',
                u'cf.{is - informatica e sistemas}: dir-inbox',
        ]
    )
    result = ticket_actions(rt_object, '887677', 'not_known', '*****@*****.**', '*****@*****.**')
    assert rt_object.data == {
        'query': 'id = "887677"',
        'format': 'l'
    }
    assert rt_object.uri == '/search/ticket'
    assert result == {
        'action_result': 'Still working on it... sorry for the inconvenience!'
    }
Esempio n. 30
0
def test_user_tickets_details_unknown():
    rt_object = RTApiMock()
    rt_object.set_return([
        u'id: ticket/887677',
        u'owner: [email protected]',
        u'subject: create rt dashboard',
        u'status: open',
        u'priority: 26',
        u'cf.{servico}: csc-gsiic',
        u'cf.{is - informatica e sistemas}: dir-inbox',
    ])
    result = user_tickets_details(rt_object, 'unknown')
    assert 'Owner != "Nobody"' in rt_object.data['query']
    assert result == {
        'tickets': {
            u'26': [{
                u'status': u'open',
                u'priority': u'26',
                'kanban_actions': {
                    'increase_priority': False,
                    'decrease_priority': False,
                    'back': False,
                    'interrupted': False,
                    'stalled': False,
                    'forward': False
                },
                u'owner': u'*****@*****.**',
                u'cf.{is - informatica e sistemas}': u'dir-inbox',
                u'id': u'887677',
                u'cf.{servico}': u'csc-gsiic',
                u'subject': u'create rt dashboard'
            }]
        },
        'email_limit': {},
        'number_tickets_per_status': {
            'unknown': 1
        }
    }
Esempio n. 31
0
def test_stats_search_tickets_query_ok():
    rt_object = RTApiMock()
    rt_object.set_return([
        u'id: ticket/887677',
        u'owner: [email protected]',
        u'subject: create rt dashboard',
        u'status: open',
        u'priority: 26',
        u'cf.{servico}: csc-gsiic',
        u'cf.{is - informatica e sistemas}: dir-inbox',
        u'lastupdated: wed jul 15 21:16:50 2015',
    ])
    response = stats_search_tickets(rt_object, 'My search')
    assert response == [{
        u'status': u'open',
        u'priority': u'26',
        u'lastupdated': u'wed jul 15 21:16:50 2015',
        u'owner': u'*****@*****.**',
        u'cf.{is - informatica e sistemas}': u'dir-inbox',
        'id': u'887677',
        u'cf.{servico}': u'csc-gsiic',
        u'subject': u'create rt dashboard'
    }]
Esempio n. 32
0
def test_stats_search_tickets_query_not_ok():
    rt_object = RTApiMock()
    rt_object.set_return(['no matching results.'])
    result = stats_search_tickets(rt_object, 'My search')
    assert result == []
Esempio n. 33
0
def test_modify_ticket():
    rt_object = RTApiMock()
    rt_object.set_return([u'rt/4.0.6 200 ok', u'', u'# ticket 887677 updated.', u''])
    result = modify_ticket(rt_object, '881188', {'Owner': '*****@*****.**'})
    assert result == [u'rt/4.0.6 200 ok', u'', u'# ticket 887677 updated.', u'']
Esempio n. 34
0
def test_get_list_of_tickets_invalid_username_or_password():
    rt_object = RTApiMock()
    rt_object.set_return(['your username or password is incorrect'])
    with pytest.raises(ValueError) as value_error:
        get_list_of_tickets(rt_object, 'Owner = "*****@*****.**" and Status == "open"')
    assert 'your username or password is incorrect' in str(value_error)
Esempio n. 35
0
def test_get_list_of_tickets_invalid_query():
    rt_object = RTApiMock()
    rt_object.set_return(['invalid query:'])
    with pytest.raises(ValueError) as value_error:
        get_list_of_tickets(rt_object, 'Owner = "*****@*****.**" and Status == "open"')
    assert 'invalid query' in str(value_error)
Esempio n. 36
0
def test_stats_search_tickets_query_not_ok():
    rt_object = RTApiMock()
    rt_object.set_return(["no matching results."])
    result = stats_search_tickets(rt_object, "My search")
    assert result == []
Esempio n. 37
0
def test_get_list_of_tickets_ok():
    rt_object = RTApiMock()
    rt_object.set_return(
        [
                u'rt/4.0.6 200 ok', u'',
                u'id: ticket/887677',
                u'queue: general',
                u'owner: [email protected]',
                u'creator: [email protected]',
                u'subject: create rt dashboard',
                u'status: open',
                u'priority: 26',
                u'initialpriority: 25',
                u'finalpriority: 75',
                u'requestors: [email protected]',
                u'cc:',
                u'admincc:',
                u'created: wed jul 15 21:17:29 2015',
                u'starts: fri jul 24 13:08:34 2015',
                u'started: wed jul 15 21:17:38 2015',
                u'due: not set',
                u'resolved: sun jul 19 02:29:03 2015',
                u'told: not set',
                u'lastupdated: fri jul 24 13:08:14 2015',
                u'timeestimated: 0',
                u'timeworked: 1026 minutes',
                u'timeleft: 0',
                u'cf.{servico}: csc-gsiic',
                u'cf.{n\xba de equipamento}:',
                u'cf.{tipo interven\xe7\xe3o}:',
                u'cf.{is - informatica e sistemas}: dir-inbox',
                u'cf.{sistema}:',
                u'cf.{estado gsiic}:',
                u'cf.{prioridade do requerente}:',
                u'cf.{notas}:',
                u'cf.{tipo de pedido}:',
                u'cf.{linkreport}: relatorio'
            ]
    )

    # Test if everything is ok...
    result = get_list_of_tickets(rt_object, 'Owner = "*****@*****.**" and Status == "open"')

    assert result == [
        {
            u'status': u'open',
            u'resolved': u'sun jul 19 02:29:03 2015',
            u'cf.{n\xba de equipamento}': u'',
            u'creator': u'*****@*****.**',
            u'cc': u'',
            u'started': u'wed jul 15 21:17:38 2015',
            u'requestors': u'*****@*****.**',
            u'cf.{servico}': u'csc-gsiic',
            u'owner': u'*****@*****.**',
            u'cf.{is - informatica e sistemas}': u'dir-inbox',
            'id': u'887677',
            u'subject': u'create rt dashboard',
            u'queue': u'general',
            u'cf.{sistema}': u'',
            u'timeleft': u'0',
            u'cf.{tipo de pedido}': u'',
            u'cf.{prioridade do requerente}': u'',
            u'created': u'wed jul 15 21:17:29 2015',
            u'cf.{notas}': u'',
            u'starts': u'fri jul 24 13:08:34 2015',
            u'due': u'not set',
            u'lastupdated': u'fri jul 24 13:08:14 2015',
            u'timeworked': u'1026 minutes',
            u'priority': u'26',
            u'admincc': u'', u'cf.{tipo interven\xe7\xe3o}': u'',
            u'cf.{estado gsiic}': u'', u'timeestimated': u'0',
            u'initialpriority': u'25', u'finalpriority': u'75',
            u'cf.{linkreport}': u'relatorio',
            u'told': u'not set'
        }
    ]
Esempio n. 38
0
def test_stats_search_number_of_tickets_query_not_ok():
    rt_object = RTApiMock()
    rt_object.set_return(["no matching results."])
    with pytest.raises(ValueError) as value_error:
        stats_search_number_of_tickets(rt_object, "My search")
    assert "no matching results." in str(value_error)
Esempio n. 39
0
def test_number_of_created_tickets_on_a_date_query_ok():
    rt_object = RTApiMock()
    rt_object.set_return([u"812344: create rt dashboard"])
    response = number_of_created_tickets_on_a_date(rt_object, "My search")
    assert response == 1
Esempio n. 40
0
def test_number_of_created_tickets_on_a_date_query_not_ok():
    rt_object = RTApiMock()
    rt_object.set_return(["no matching results."])
    response = number_of_created_tickets_on_a_date(rt_object, "My search")
    assert response == 0
Esempio n. 41
0
def test_stats_search_number_of_tickets_query_not_ok():
    rt_object = RTApiMock()
    rt_object.set_return(['no matching results.'])
    with pytest.raises(ValueError) as value_error:
        stats_search_number_of_tickets(rt_object, 'My search')
    assert 'no matching results.' in str(value_error)
Esempio n. 42
0
def test_stats_search_number_of_tickets_query_ok():
    rt_object = RTApiMock()
    rt_object.set_return([u"812344: create rt dashboard"])
    response = stats_search_number_of_tickets(rt_object, "My search")
    assert response == 1
Esempio n. 43
0
def test_number_of_created_tickets_on_a_date_query_not_ok():
    rt_object = RTApiMock()
    rt_object.set_return(['no matching results.'])
    response = number_of_created_tickets_on_a_date(rt_object, 'My search')
    assert response == 0
Esempio n. 44
0
def test_get_list_of_tickets_no_results():
    rt_object = RTApiMock()
    rt_object.set_return(['no matching results.'])
    with pytest.raises(ValueError) as value_error:
        get_list_of_tickets(rt_object, 'Owner = "*****@*****.**" and Status == "open"')
    assert 'no matching results.' in str(value_error)