summaryrefslogtreecommitdiffstats
path: root/robotframework-onap/ONAPLibrary/ProtobufKeywords.py
blob: 9fded9bdb14f0c3e1d57d12f3fa4e9deb02cb4b5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
from ONAPLibrary.VESProtobuf import *
from ONAPLibrary.JSONKeywords import JSONKeywords
from robot.api.deco import keyword


class ProtobufKeywords(object):
    """ Utilities useful for Protobuf manipulation """

    def __init__(self):
        super(ProtobufKeywords, self).__init__()

    @keyword
    def compare_file_to_message(self, file_name, message):
        with open(file_name, "rb") as file_to_do:
            return self.compare_two_messages(file_to_do.read(), message)

    @staticmethod
    def compare_two_messages(left, right):
        left_json = VESProtobuf.binary_to_json(left)
        right_json = VESProtobuf.binary_to_json(right)
        return JSONKeywords().json_equals(left_json, right_json)