diff --git a/client/src/actions/presentation.ts b/client/src/actions/presentation.ts
index 43232014b4fe8e77ad6b63fbc93660d8d9254e23..9e482d2b4c51d49fdd04dd8f18721a1e74e82d5a 100644
--- a/client/src/actions/presentation.ts
+++ b/client/src/actions/presentation.ts
@@ -7,7 +7,6 @@ export const getPresentationCompetition = (id: string) => async (dispatch: AppDi
   await axios
     .get(`/competitions/${id}`)
     .then((res) => {
-      console.log(res)
       dispatch({
         type: Types.SET_PRESENTATION_COMPETITION,
         payload: res.data,
@@ -22,7 +21,6 @@ export const getPresentationTeams = (id: string) => async (dispatch: AppDispatch
   await axios
     .get(`/competitions/${id}/teams`)
     .then((res) => {
-      console.log(res)
       dispatch({
         type: Types.SET_PRESENTATION_TEAMS,
         payload: res.data.items,
diff --git a/client/src/pages/admin/AdminPage.test.tsx b/client/src/pages/admin/AdminPage.test.tsx
index efb56bb24b9ff8726e5a402816b3440f8a6107e6..ab694cee23501ef51a644c1df30f36662d9d36f6 100644
--- a/client/src/pages/admin/AdminPage.test.tsx
+++ b/client/src/pages/admin/AdminPage.test.tsx
@@ -1,4 +1,5 @@
 import { render } from '@testing-library/react'
+import mockedAxios from 'axios'
 import React from 'react'
 import { Provider } from 'react-redux'
 import { BrowserRouter } from 'react-router-dom'
@@ -6,6 +7,42 @@ import store from '../../store'
 import AdminPage from './AdminPage'
 
 it('renders admin view', () => {
+  const cityRes: any = {
+    data: {
+      items: [
+        {
+          id: 1,
+          name: 'Link\u00f6ping',
+        },
+        {
+          id: 2,
+          name: 'Stockholm',
+        },
+      ],
+      count: 2,
+      total_count: 3,
+    },
+  }
+  const rolesRes: any = {
+    data: {
+      items: [
+        {
+          id: 1,
+          name: 'role1',
+        },
+        {
+          id: 2,
+          name: 'role2',
+        },
+      ],
+      count: 2,
+      total_count: 3,
+    },
+  }
+  ;(mockedAxios.get as jest.Mock).mockImplementation((path: string, params?: any) => {
+    if (path === '/misc/cities') return Promise.resolve(cityRes)
+    else return Promise.resolve(rolesRes)
+  })
   render(
     <Provider store={store}>
       <BrowserRouter>
diff --git a/client/src/pages/views/AudienceViewPage.test.tsx b/client/src/pages/views/AudienceViewPage.test.tsx
index 984ee7f208e058536acbda91097a83a071f1273f..d00d4277e8b3a5021088b02a13947fb41f28b9f1 100644
--- a/client/src/pages/views/AudienceViewPage.test.tsx
+++ b/client/src/pages/views/AudienceViewPage.test.tsx
@@ -1,7 +1,13 @@
-import { Slide } from '@material-ui/core'
 import { render } from '@testing-library/react'
 import React from 'react'
+import { Provider } from 'react-redux'
+import store from '../../store'
+import AudienceViewPage from './AudienceViewPage'
 
-it('renders slide', () => {
-  render(<Slide />)
+it('renders audience view page', () => {
+  render(
+    <Provider store={store}>
+      <AudienceViewPage />
+    </Provider>
+  )
 })
diff --git a/client/src/pages/views/JudgeViewPage.test.tsx b/client/src/pages/views/JudgeViewPage.test.tsx
index 5ff1cc5d002eba5db9e9f13256ec4b32643aff4f..537dae4c570f3b7ed50dadaa9f60bae1be8823a2 100644
--- a/client/src/pages/views/JudgeViewPage.test.tsx
+++ b/client/src/pages/views/JudgeViewPage.test.tsx
@@ -1,7 +1,43 @@
 import { render } from '@testing-library/react'
+import mockedAxios from 'axios'
 import React from 'react'
+import { Provider } from 'react-redux'
+import { BrowserRouter } from 'react-router-dom'
+import store from '../../store'
 import JudgeViewPage from './JudgeViewPage'
 
 it('renders judge view page', () => {
-  render(<JudgeViewPage />)
+  const compRes: any = {
+    data: {
+      slides: [{ id: 0, title: '' }],
+    },
+  }
+  const teamsRes: any = {
+    data: {
+      items: [
+        {
+          id: 1,
+          name: 'team1',
+        },
+        {
+          id: 2,
+          name: 'team2',
+        },
+      ],
+      count: 2,
+      total_count: 3,
+    },
+  }
+
+  ;(mockedAxios.get as jest.Mock).mockImplementation((path: string, params?: any) => {
+    if (path.endsWith('/teams')) return Promise.resolve(teamsRes)
+    else return Promise.resolve(compRes)
+  })
+  render(
+    <BrowserRouter>
+      <Provider store={store}>
+        <JudgeViewPage />
+      </Provider>
+    </BrowserRouter>
+  )
 })
diff --git a/client/src/pages/views/ParticipantViewPage.test.tsx b/client/src/pages/views/ParticipantViewPage.test.tsx
index f7154a9deb127480b2d92db08da12fc352656af3..85360e4ffe754f5887e9b654c45d0c921a67a3a0 100644
--- a/client/src/pages/views/ParticipantViewPage.test.tsx
+++ b/client/src/pages/views/ParticipantViewPage.test.tsx
@@ -1,7 +1,13 @@
 import { render } from '@testing-library/react'
 import React from 'react'
+import { Provider } from 'react-redux'
+import store from '../../store'
 import ParticipantViewPage from './ParticipantViewPage'
 
 it('renders participant view page', () => {
-  render(<ParticipantViewPage />)
+  render(
+    <Provider store={store}>
+      <ParticipantViewPage />
+    </Provider>
+  )
 })
diff --git a/client/src/pages/views/PresenterViewPage.test.tsx b/client/src/pages/views/PresenterViewPage.test.tsx
index 0647a87549e9f9544f31dd56a9778b57a8537f6f..fd7b0a9692e08354330b3e4db98c046649c0d10a 100644
--- a/client/src/pages/views/PresenterViewPage.test.tsx
+++ b/client/src/pages/views/PresenterViewPage.test.tsx
@@ -1,12 +1,43 @@
 import { render } from '@testing-library/react'
+import mockedAxios from 'axios'
 import React from 'react'
+import { Provider } from 'react-redux'
 import { BrowserRouter } from 'react-router-dom'
+import store from '../../store'
 import PresenterViewPage from './PresenterViewPage'
 
 it('renders presenter view page', () => {
+  const compRes: any = {
+    data: {
+      slides: [{ id: 0, title: '' }],
+    },
+  }
+  const teamsRes: any = {
+    data: {
+      items: [
+        {
+          id: 1,
+          name: 'team1',
+        },
+        {
+          id: 2,
+          name: 'team2',
+        },
+      ],
+      count: 2,
+      total_count: 3,
+    },
+  }
+
+  ;(mockedAxios.get as jest.Mock).mockImplementation((path: string, params?: any) => {
+    if (path.endsWith('/teams')) return Promise.resolve(teamsRes)
+    else return Promise.resolve(compRes)
+  })
   render(
     <BrowserRouter>
-      <PresenterViewPage />
+      <Provider store={store}>
+        <PresenterViewPage />
+      </Provider>
     </BrowserRouter>
   )
 })
diff --git a/client/src/pages/views/components/SlideDisplay.test.tsx b/client/src/pages/views/components/SlideDisplay.test.tsx
index b3cfb1dc1daf6619211c3433a876cc126409cf0f..1a661d3340d503c71e149393db3cb00f1e2406c4 100644
--- a/client/src/pages/views/components/SlideDisplay.test.tsx
+++ b/client/src/pages/views/components/SlideDisplay.test.tsx
@@ -1,7 +1,13 @@
 import { render } from '@testing-library/react'
 import React from 'react'
+import { Provider } from 'react-redux'
+import store from '../../../store'
 import SlideDisplay from './SlideDisplay'
 
-it('renders audience view page', () => {
-  render(<SlideDisplay />)
+it('renders slide display', () => {
+  render(
+    <Provider store={store}>
+      <SlideDisplay />
+    </Provider>
+  )
 })
diff --git a/server/app/apis/competitions.py b/server/app/apis/competitions.py
index 8cdaf6dadf861c197082857131003849514faec8..9f17a932c4c47c6e127128b944986458df670988 100644
--- a/server/app/apis/competitions.py
+++ b/server/app/apis/competitions.py
@@ -38,6 +38,7 @@ class CompetitionsList(Resource):
 @api.route("/<ID>")
 @api.param("ID")
 class Competitions(Resource):
+    @jwt_required
     def get(self, ID):
         item = get_comp(ID)
         return item_response(schema.dump(item))
diff --git a/server/app/apis/teams.py b/server/app/apis/teams.py
index 3eb09bc296be74034ebe814a69724598ec2a27f8..bec6cb6a81005ebf782c212319b0641ca9f3a35a 100644
--- a/server/app/apis/teams.py
+++ b/server/app/apis/teams.py
@@ -18,10 +18,12 @@ def get_comp(CID):
 @api.route("/")
 @api.param("CID")
 class TeamsList(Resource):
+    @jwt_required
     def get(self, CID):
         item_comp = get_comp(CID)
         return list_response(list_schema.dump(item_comp.teams))
 
+    @jwt_required
     def post(self, CID):
         parser = reqparse.RequestParser()
         parser.add_argument("name", type=str, location="json")