Ejemplo n.º 1
0
    def testEditCompTeams(self):
        """Test editing the teams for a competition"""
        self.login()
        teams = {
            'teams': json.dumps({
                'Team Test Edited': [self.username]
            })
        }
        competition = self._insert_comp_into_db()[0]
        cid = competition.cid
        session.add(
            CompUser(
                cid=cid,
                username=self.username,
                team='Team Test'
            )
        )
        session.expunge(competition)
        session.commit()

        response = test_app.put('/api/competitions/{}/teams'.format(cid),
                                 data=teams)
        self.assertEqual(200, response.status_code)
        response_body = json.loads(response.data.decode())['data']

        self.assertEqual({}, response_body)
        new_team = session.query(CompUser).filter_by(cid=cid).first()
        self.assertEqual('Team Test Edited', new_team.team)
        self.assertEqual(self.username, new_team.username)

        session.delete(session.query(CompUser).filter_by(cid=cid).first())
        session.delete(session.query(Competition).filter_by(cid=cid).first())
        session.commit()
Ejemplo n.º 2
0
    def testProblemEdit(self):
        new_name = "A Different Test Problem"
        resp = test_app.put("/api/problems/" + str(test_problem["pid"]), data={"name": new_name})
        self.assertEqual(200, resp.status_code)

        rv = json.loads(resp.data)
        prob = rv["data"]
        self.assertEqual(new_name, prob["name"])
Ejemplo n.º 3
0
    def testProblemEdit(self):
        new_name = 'A Different Test Problem'
        resp = test_app.put(
            '/api/problems/' + str(test_problem['pid']),
            data={'name':new_name})
        self.assertEqual(200, resp.status_code)

        rv = json.loads(resp.data.decode())
        prob = rv['data']
        self.assertEqual(new_name, prob['name'])
Ejemplo n.º 4
0
    def testEdit(self):
        """Test editing a blog post"""
        post = self._insert_test_post()[0]
        post_id = post.id
        new_body = 'This is different!'
        post_json = {
            'title': post.title,
            'subtitle': post.subtitle,
            'body': new_body,
            'username': post.username
        }
        session.expunge(post)

        response = json.loads(test_app.put('/api/blog/{}'.format(post_id),
                                           data=post_json).data.decode())
        response_data = response['data']

        self.assertEquals(200, response['status'])
        self.assertEquals(new_body, response_data['body'])

        session.delete(session.query(BlogPost).filter_by(id=post.id).first())
        session.commit()
Ejemplo n.º 5
0
    def testEditComp(self):
        """Test modifying a competition"""
        self.login()
        competition = self._insert_comp_into_db()[0]
        competition_data = {
            'name':  'Different Name',
            'start_time': int(time.time()),
            'length': 100,
            'closed': False,
            'problems': '[{"label": "A", "pid": 1}]',
        }

        response = test_app.put('/api/competitions/{}'.format(competition.cid),
                                data=competition_data)

        self.assertEqual(200, response.status_code)
        response_data = json.loads(response.data.decode())['data']
        self.assertEqual(competition_data['name'], response_data['name'])
        self.assertEqual(competition_data['start_time'],
                         response_data['startTime'])
        self.assertEqual(competition_data['length'], response_data['length'])

        session.delete(competition)
        session.commit()