예제 #1
0
class RankTest(unittest.TestCase):

    rank = randint(0, 99)

    def setUp(self):
        self.app = app.test_client()
        self.handler = Handler()
        self.user = User(self.handler)
        self.issue_id = str(uuid.uuid4())

    def tearDown(self):
        self.handler.clean_up()

    def parameters(self):
        return dict(
            user_id=self.user.node_id,
            node_id=self.node.node_id,
            rank=self.rank,
            issue_id=self.issue_id,
        )

    def find_link(self):
        link = graph.links.find(self.user.node, self.node.node, "RANKS")
        self.handler.add_link(link)
        return link

    def check_rank(self):
        link = self.find_link()
        assert link, "failed to find link"
        self.assertEqual(link.properties["rank"], self.rank)

    def check_status_code(self, code):
        assert code == 200, "status code not 200"

    def check_response(self, expected, data):
        response = safe_json_loads(data)
        error = "expecting: {0}, actual: {1}".format(expected, response)
        assert response == expected, error

    def runner(self):
        rv = self.app.post(self.endpoint, data=self.data)
        expected = dict(success=True)
        self.check_status_code(rv.status_code)
        self.check_response(expected, rv.data)
        self.check_rank()
예제 #2
0
class RankTest(unittest.TestCase):
    
    rank = randint(0, 99)
           
    def setUp(self):
        self.app = app.test_client()
        self.handler = Handler()
        self.user = User(self.handler)
        self.issue_id = str(uuid.uuid4())
    
    def tearDown(self):
        self.handler.clean_up()

    def parameters(self):
        return dict(
            user_id=self.user.node_id,
            node_id=self.node.node_id,
            rank=self.rank,
            issue_id=self.issue_id,
        )
   
    def find_link(self):
        link = graph.links.find(self.user.node, self.node.node, "RANKS")
        self.handler.add_link(link)
        return link

    def check_rank(self):
        link = self.find_link()
        assert link, "failed to find link"
        self.assertEqual(link.properties["rank"], self.rank)

    def check_status_code(self, code):
        assert code == 200, "status code not 200"

    def check_response(self, expected, data):
        response = safe_json_loads(data)
        error = "expecting: {0}, actual: {1}".format(expected, response)
        assert response == expected, error

    def runner(self):
        rv = self.app.post(self.endpoint, data=self.data)
        expected = dict(success=True)
        self.check_status_code(rv.status_code)
        self.check_response(expected, rv.data)
        self.check_rank()
예제 #3
0
class MapTest(unittest.TestCase):

    strength = randint(0, 99)

    def setUp(self):
        self.app = app.test_client()
        self.handler = Handler()
        self.user = User(self.handler)

    def tearDown(self):
        args = dict(start_node=self.map_node,
                    rel_type="MAPS",
                    bidirectional=True)
        for link in graph.graph.match(**args):
            self.handler.add_link(link)
        self.handler.clean_up()

    def postSetUp(self):
        self.data = self.parameters()
        self.map_id = "{0}-{1}".format(self.src.node_id, self.dst.node_id)

        # make sure each node is ranked by the user
        Rank(self.handler, self.user.node, self.src.node, 1)
        Rank(self.handler, self.user.node, self.dst.node, 1)

    def parameters(self):
        return dict(user_id=self.user.node_id,
                    strength=self.strength,
                    src_id=self.src.node_id,
                    dst_id=self.dst.node_id)

    def check_status_code(self, code):
        self.assertEqual(code, 200, msg="status code not 200")

    def check_map(self):
        self.map_node = graph.nodes.find("Map", self.map_id)
        self.handler.add_node(self.map_node)
        self.assertIsNotNone(self.map_node, msg="Map node was not created")