Fakultas Ilmu Komputer UI
Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
PMPL
Class Project
DIGIPUS
Commits
4e11f0a2
Commit
4e11f0a2
authored
Oct 31, 2020
by
Moh Faisal
Browse files
Merge branch '1706039502-79' into 'master'
1706039502 79 See merge request
!107
parents
87716fc7
dac8ebcc
Pipeline
#60167
passed with stages
in 23 minutes and 6 seconds
Changes
1
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
app/tests.py
View file @
4e11f0a2
import
mock
import
pandas
as
pd
import
base64
import
base64
import
datetime
as
dt
import
datetime
as
dt
import
json
import
json
...
@@ -9,7 +11,7 @@ import time
...
@@ -9,7 +11,7 @@ import time
import
itertools
import
itertools
from
django.test
import
override_settings
from
django.test
import
override_settings
from
datetime
import
datetime
from
datetime
import
datetime
from
io
import
StringIO
from
io
import
StringIO
,
BytesIO
from
time
import
sleep
from
time
import
sleep
import
mock
import
mock
...
@@ -25,8 +27,8 @@ from django.contrib import messages as dj_messages
...
@@ -25,8 +27,8 @@ from django.contrib import messages as dj_messages
from
django.contrib.auth
import
get_user_model
from
django.contrib.auth
import
get_user_model
from
django.core
import
mail
,
serializers
from
django.core
import
mail
,
serializers
from
django.core.exceptions
import
PermissionDenied
,
ValidationError
from
django.core.exceptions
import
PermissionDenied
,
ValidationError
from
django.core.files.uploadedfile
import
SimpleUploadedFile
,
InMemoryUploadedFile
from
django.core.files
import
File
from
django.core.files
import
File
from
django.core.files.uploadedfile
import
SimpleUploadedFile
from
django.core.management
import
call_command
from
django.core.management
import
call_command
from
django.db.utils
import
IntegrityError
from
django.db.utils
import
IntegrityError
from
pytz
import
timezone
,
UTC
from
pytz
import
timezone
,
UTC
...
@@ -1326,7 +1328,6 @@ class UploadPageTest(TestCase):
...
@@ -1326,7 +1328,6 @@ class UploadPageTest(TestCase):
# Negative tests
# Negative tests
self
.
assertNotContains
(
response
,
"anything"
)
self
.
assertNotContains
(
response
,
"anything"
)
class
UploadExcelPageTest
(
TestCase
):
class
UploadExcelPageTest
(
TestCase
):
def
setUp
(
self
):
def
setUp
(
self
):
self
.
client
=
Client
()
self
.
client
=
Client
()
...
@@ -3153,9 +3154,6 @@ class YTUrlVideoTest(TestCase):
...
@@ -3153,9 +3154,6 @@ class YTUrlVideoTest(TestCase):
@
override_settings
(
MEDIA_ROOT
=
tempfile
.
gettempdir
())
@
override_settings
(
MEDIA_ROOT
=
tempfile
.
gettempdir
())
def
setUpImage
(
self
):
def
setUpImage
(
self
):
from
io
import
BytesIO
from
django.core.files.uploadedfile
import
InMemoryUploadedFile
self
.
cover
=
InMemoryUploadedFile
(
self
.
cover
=
InMemoryUploadedFile
(
BytesIO
(
base64
.
b64decode
(
TEST_IMAGE
)),
BytesIO
(
base64
.
b64decode
(
TEST_IMAGE
)),
field_name
=
'tempfile'
,
field_name
=
'tempfile'
,
...
@@ -3948,3 +3946,43 @@ class MateriStatsTest(TestCase):
...
@@ -3948,3 +3946,43 @@ class MateriStatsTest(TestCase):
response
=
self
.
client
.
get
(
self
.
path_json
)
response
=
self
.
client
.
get
(
self
.
path_json
)
jobj
=
json
.
loads
(
response
.
content
)
jobj
=
json
.
loads
(
response
.
content
)
self
.
assertEqual
(
len
(
jobj
[
'labels'
]),
6
)
self
.
assertEqual
(
len
(
jobj
[
'labels'
]),
6
)
class
UploadMateriTest
(
TestCase
):
def
setUp
(
self
):
self
.
client
=
Client
()
self
.
user
=
User
.
objects
.
_create_user
(
email
=
"kontributor@gov.id"
,
password
=
"kontributor"
,
is_contributor
=
True
)
self
.
setUpImage
()
self
.
content
=
SimpleUploadedFile
(
"ExampleFile221.pdf"
,
b
"Test file"
)
self
.
category
=
Category
.
objects
.
create
(
id
=
"1"
,
name
=
"sains"
,
description
=
"kategori sains"
)
@
override_settings
(
MEDIA_ROOT
=
tempfile
.
gettempdir
())
def
setUpImage
(
self
):
self
.
cover
=
InMemoryUploadedFile
(
BytesIO
(
base64
.
b64decode
(
TEST_IMAGE
)),
field_name
=
'tempfile'
,
name
=
'tempfile.png'
,
content_type
=
'image/png'
,
size
=
len
(
TEST_IMAGE
),
charset
=
'utf-8'
,
)
def
test_for_invalid_input_shows_validation_error
(
self
):
self
.
client
.
login
(
email
=
"kontributor@gov.id"
,
password
=
"kontributor"
)
response
=
self
.
client
.
post
(
"/unggah/"
,
data
=
{
"title"
:
""
})
self
.
assertContains
(
response
,
"This field is required."
)
def
test_data_form_upload_materi_success_save_to_db
(
self
):
self
.
client
.
login
(
email
=
"kontributor@gov.id"
,
password
=
"kontributor"
)
data
=
{
"title"
:
"Dunia Binatang"
,
"author"
:
"Parzival"
,
"publisher"
:
"Buku Asyik"
,
"release_year"
:
"2015"
,
"descriptions"
:
"Buku dunia binatang seri 1"
,
'categories'
:
"1"
,
"cover"
:
self
.
cover
,
"content"
:
self
.
content
}
self
.
client
.
post
(
"/unggah/"
,
data
=
data
)
self
.
assertEqual
(
Materi
.
objects
.
count
(),
1
)
\ No newline at end of file
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment