Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
S
SMART
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
3
Issues
3
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
UNI-KLU
SMART
Commits
f6af0a8e
Commit
f6af0a8e
authored
4 years ago
by
Bogdan
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Refactored Test Code
parent
4c4c978a
Changes
12
Show whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
555 additions
and
573 deletions
+555
-573
test_coverage.py
...ub/role-stage-discovery-microservice/app/test_coverage.py
+3
-1
test_cluster.py
...le-stage-discovery-microservice/app/tests/test_cluster.py
+18
-24
test_cluster_result.py
...e-discovery-microservice/app/tests/test_cluster_result.py
+84
-105
test_clusterer.py
...-stage-discovery-microservice/app/tests/test_clusterer.py
+143
-145
test_similarity.py
...stage-discovery-microservice/app/tests/test_similarity.py
+286
-290
test_coverage.py
...ta-hub/semantic-linking-microservice/app/test_coverage.py
+3
-1
test_pipeline.py
.../semantic-linking-microservice/app/tests/test_pipeline.py
+2
-2
test_coverage.py
...tion-hub/business-logic-microservice/app/test_coverage.py
+3
-1
test_layer_adapter.py
...siness-logic-microservice/app/tests/test_layer_adapter.py
+1
-1
test_coverage.py
src/rest-gateway/app/test_coverage.py
+5
-0
test_coverage.py
...-hub-in/trace-retrieval-microservice/app/test_coverage.py
+4
-0
test_MessageHandler.py
...e-retrieval-microservice/app/tests/test_MessageHandler.py
+3
-3
No files found.
src/data-hub/role-stage-discovery-microservice/app/test_coverage.py
View file @
f6af0a8e
...
@@ -3,7 +3,9 @@ import sys
...
@@ -3,7 +3,9 @@ import sys
for
path
in
[
'../'
,
'./'
]:
for
path
in
[
'../'
,
'./'
]:
sys
.
path
.
insert
(
1
,
path
)
sys
.
path
.
insert
(
1
,
path
)
#####################################
### Don't include for test report ###
#####################################
try
:
try
:
class
TestCoverage
(
unittest
.
TestCase
):
class
TestCoverage
(
unittest
.
TestCase
):
def
test_init_main
(
self
):
def
test_init_main
(
self
):
...
...
This diff is collapsed.
Click to expand it.
src/data-hub/role-stage-discovery-microservice/app/tests/test_cluster.py
View file @
f6af0a8e
try
:
import
unittest
import
unittest
import
sys
import
sys
for
path
in
[
'../'
,
'./'
]:
for
path
in
[
'../'
,
'./'
]:
sys
.
path
.
insert
(
1
,
path
)
sys
.
path
.
insert
(
1
,
path
)
# python -m unittest discover
# python -m unittest discover
from
db.entities
import
Cluster
from
db.entities
import
Cluster
from
datetime
import
date
,
datetime
from
datetime
import
date
,
datetime
import
json
import
json
class
TestCluster
(
unittest
.
TestCase
):
class
TestCluster
(
unittest
.
TestCase
):
def
test_init_Cluster
(
self
):
def
test_init_Cluster
(
self
):
try
:
c
=
Cluster
(
'debug'
,
'debug-table1'
,
'layer1'
,
1
,
[
1
,
2
,
3
])
c
=
Cluster
(
'debug'
,
'debug-table1'
,
'layer1'
,
1
,
[
1
,
2
,
3
])
self
.
assertEqual
(
'debug'
,
c
.
use_case
)
self
.
assertEqual
(
'debug'
,
c
.
use_case
)
self
.
assertEqual
(
'debug-table1'
,
c
.
use_case_table
)
self
.
assertEqual
(
'debug-table1'
,
c
.
use_case_table
)
self
.
assertEqual
(
1
,
c
.
cluster_label
)
self
.
assertEqual
(
1
,
c
.
cluster_label
)
self
.
assertEqual
([
1
,
2
,
3
],
c
.
nodes
)
self
.
assertEqual
([
1
,
2
,
3
],
c
.
nodes
)
except
Exception
as
e
:
print
(
e
)
if
__name__
==
'__main__'
:
if
__name__
==
'__main__'
:
unittest
.
main
()
unittest
.
main
()
except
Exception
as
e
:
print
(
"Exception found:"
)
print
(
e
)
This diff is collapsed.
Click to expand it.
src/data-hub/role-stage-discovery-microservice/app/tests/test_cluster_result.py
View file @
f6af0a8e
try
:
import
unittest
import
unittest
import
sys
import
sys
for
path
in
[
'../'
,
'./'
]:
for
path
in
[
'../'
,
'./'
]:
sys
.
path
.
insert
(
1
,
path
)
sys
.
path
.
insert
(
1
,
path
)
# python -m unittest discover
# python -m unittest discover
from
processing.clustering
import
ClusterResultConverter
,
ClusterResult
from
processing.clustering
import
ClusterResultConverter
,
ClusterResult
from
typing
import
List
,
Dict
,
Any
from
typing
import
List
,
Dict
,
Any
class
TestClusterResult
(
unittest
.
TestCase
):
class
TestClusterResult
(
unittest
.
TestCase
):
converter
:
ClusterResultConverter
=
None
converter
:
ClusterResultConverter
=
None
def
setUp
(
self
):
def
setUp
(
self
):
try
:
self
.
converter
=
ClusterResultConverter
()
self
.
converter
=
ClusterResultConverter
()
except
Exception
as
e
:
print
(
e
)
def
test_result_undefined_feature
(
self
):
def
test_result_undefined_feature
(
self
):
try
:
cluster_groups
=
self
.
_get_some_cluster_groups_1d
()
cluster_groups
=
self
.
_get_some_cluster_groups_1d
()
cluster_res
=
self
.
converter
.
convert_to_cluster_results
(
cluster_res
=
self
.
converter
.
convert_to_cluster_results
(
cluster_groups
=
cluster_groups
,
cluster_groups
=
cluster_groups
,
...
@@ -27,11 +24,8 @@ try:
...
@@ -27,11 +24,8 @@ try:
self
.
assert_correct_cluster_result_len
(
cluster_groups
,
cluster_res
)
self
.
assert_correct_cluster_result_len
(
cluster_groups
,
cluster_res
)
self
.
assert_correct_cluster_result_labels
([
'n.a.'
,
'n.a.'
,
'n.a.'
],
cluster_res
)
self
.
assert_correct_cluster_result_labels
([
'n.a.'
,
'n.a.'
,
'n.a.'
],
cluster_res
)
except
Exception
as
e
:
print
(
e
)
def
test_result_1d_feature
(
self
):
def
test_result_1d_feature
(
self
):
try
:
cluster_groups
=
self
.
_get_some_cluster_groups_1d
()
cluster_groups
=
self
.
_get_some_cluster_groups_1d
()
cluster_res
=
self
.
converter
.
convert_to_cluster_results
(
cluster_res
=
self
.
converter
.
convert_to_cluster_results
(
cluster_groups
=
cluster_groups
,
cluster_groups
=
cluster_groups
,
...
@@ -42,12 +36,8 @@ try:
...
@@ -42,12 +36,8 @@ try:
self
.
assert_correct_cluster_result_len
(
cluster_groups
,
cluster_res
)
self
.
assert_correct_cluster_result_len
(
cluster_groups
,
cluster_res
)
self
.
assert_correct_cluster_result_labels
([
'-1.0 -- 1.0'
,
'10.0 -- 11.0'
,
'2.0 -- 2.0'
],
cluster_res
)
self
.
assert_correct_cluster_result_labels
([
'-1.0 -- 1.0'
,
'10.0 -- 11.0'
,
'2.0 -- 2.0'
],
cluster_res
)
except
Exception
as
e
:
print
(
e
)
def
test_result_2d_features
(
self
):
def
test_result_2d_features
(
self
):
try
:
cluster_groups
=
self
.
_get_some_cluster_groups_2d
()
cluster_groups
=
self
.
_get_some_cluster_groups_2d
()
cluster_res
=
self
.
converter
.
convert_to_cluster_results
(
cluster_res
=
self
.
converter
.
convert_to_cluster_results
(
cluster_groups
=
cluster_groups
,
cluster_groups
=
cluster_groups
,
...
@@ -57,29 +47,21 @@ try:
...
@@ -57,29 +47,21 @@ try:
self
.
assert_correct_cluster_result_len
(
cluster_groups
,
cluster_res
)
self
.
assert_correct_cluster_result_len
(
cluster_groups
,
cluster_res
)
self
.
assert_correct_cluster_result_labels
([
str
((
0.0
,
0.0
)),
str
((
10.5
,
10.5
)),
str
((
2.0
,
2.0
)),
str
((
3.0
,
6.0
))],
cluster_res
)
self
.
assert_correct_cluster_result_labels
([
str
((
0.0
,
0.0
)),
str
((
10.5
,
10.5
)),
str
((
2.0
,
2.0
)),
str
((
3.0
,
6.0
))],
cluster_res
)
except
Exception
as
e
:
print
(
e
)
#region Custom Assertions
#region Custom Assertions
def
assert_correct_cluster_result_len
(
self
,
expected
:
'original dict of lists'
,
actual
:
Dict
[
Any
,
ClusterResult
]):
def
assert_correct_cluster_result_len
(
self
,
expected
:
'original dict of lists'
,
actual
:
Dict
[
Any
,
ClusterResult
]):
try
:
self
.
assertEqual
(
len
(
expected
),
len
(
actual
))
self
.
assertEqual
(
len
(
expected
),
len
(
actual
))
for
i
in
range
(
len
(
expected
)):
for
i
in
range
(
len
(
expected
)):
self
.
assertEqual
(
len
(
expected
[
i
]),
len
(
actual
[
i
]
.
nodes
))
self
.
assertEqual
(
len
(
expected
[
i
]),
len
(
actual
[
i
]
.
nodes
))
self
.
assertEqual
(
expected
[
i
],
actual
[
i
]
.
nodes
)
self
.
assertEqual
(
expected
[
i
],
actual
[
i
]
.
nodes
)
except
Exception
as
e
:
print
(
e
)
def
assert_correct_cluster_result_labels
(
self
,
expected
:
List
[
str
],
actual
:
Dict
[
Any
,
ClusterResult
]):
def
assert_correct_cluster_result_labels
(
self
,
expected
:
List
[
str
],
actual
:
Dict
[
Any
,
ClusterResult
]):
try
:
self
.
assertEqual
(
len
(
expected
),
len
(
actual
))
self
.
assertEqual
(
len
(
expected
),
len
(
actual
))
for
i
in
range
(
len
(
expected
)):
for
i
in
range
(
len
(
expected
)):
self
.
assertEqual
(
expected
[
i
],
actual
[
i
]
.
label
)
self
.
assertEqual
(
expected
[
i
],
actual
[
i
]
.
label
)
except
Exception
as
e
:
print
(
e
)
#endregion Custom Assertions
#endregion Custom Assertions
...
@@ -100,8 +82,5 @@ try:
...
@@ -100,8 +82,5 @@ try:
}
}
#endregion helper methods
#endregion helper methods
if
__name__
==
'__main__'
:
if
__name__
==
'__main__'
:
unittest
.
main
()
unittest
.
main
()
\ No newline at end of file
except
Exception
as
e
:
print
(
"Exception found:"
)
print
(
e
)
\ No newline at end of file
This diff is collapsed.
Click to expand it.
src/data-hub/role-stage-discovery-microservice/app/tests/test_clusterer.py
View file @
f6af0a8e
try
:
import
unittest
import
unittest
import
sys
import
sys
for
path
in
[
'../'
,
'./'
]:
for
path
in
[
'../'
,
'./'
]:
sys
.
path
.
insert
(
1
,
path
)
sys
.
path
.
insert
(
1
,
path
)
# python -m unittest discover
# python -m unittest discover
from
processing.clustering
import
Clusterer
,
ClusterResult
from
processing.clustering
import
Clusterer
,
ClusterResult
import
numpy
as
np
import
numpy
as
np
from
typing
import
List
,
Dict
,
Any
from
typing
import
List
,
Dict
,
Any
class
TestClusterer
(
unittest
.
TestCase
):
class
TestClusterer
(
unittest
.
TestCase
):
clusterer
:
Clusterer
=
None
clusterer
:
Clusterer
=
None
def
setUp
(
self
):
def
setUp
(
self
):
...
@@ -193,8 +193,6 @@ try:
...
@@ -193,8 +193,6 @@ try:
#endregion helper methods
#endregion helper methods
if
__name__
==
'__main__'
:
if
__name__
==
'__main__'
:
unittest
.
main
()
unittest
.
main
()
except
Exception
as
e
:
print
(
"Exception found:"
)
print
(
e
)
This diff is collapsed.
Click to expand it.
src/data-hub/role-stage-discovery-microservice/app/tests/test_similarity.py
View file @
f6af0a8e
try
:
import
unittest
import
unittest
import
sys
import
sys
for
path
in
[
'../'
,
'./'
,
'../../../modules/'
,
'../../../../modules'
]:
for
path
in
[
'../'
,
'./'
,
'../../../modules/'
,
'../../../../modules'
]:
sys
.
path
.
insert
(
1
,
path
)
sys
.
path
.
insert
(
1
,
path
)
from
db.entities.connected_node
import
NodeC
from
db.entities.connected_node
import
NodeC
from
db.entities.connected_cluster
import
ClusterC
from
db.entities.connected_cluster
import
ClusterC
from
db.entities.connected_layer
import
LayerC
from
db.entities.connected_layer
import
LayerC
import
math
import
math
import
datetime
import
datetime
from
typing
import
Dict
from
typing
import
Dict
from
typing
import
Dict
from
typing
import
Dict
from
processing.similarityFiles.dataInput
import
*
from
processing.similarityFiles.dataInput
import
*
from
processing.similarityFiles.calculateWeights
import
*
from
processing.similarityFiles.calculateWeights
import
*
from
processing.similarityFiles.calculateSimilarity
import
*
from
processing.similarityFiles.calculateSimilarity
import
*
from
processing.similarityFiles.miscFunctions
import
*
from
processing.similarityFiles.miscFunctions
import
*
import
json
import
json
class
TestSimilarity
(
unittest
.
TestCase
):
class
TestSimilarity
(
unittest
.
TestCase
):
'''Tests the similarity calculation which works without object orientation.'''
'''Tests the similarity calculation which works without object orientation.'''
def
test_integration_similarityCalculation
(
self
):
def
test_integration_calculateSimilarity_ClustersDict_CorrectValue
(
self
):
'''
'''
Only for testing, can be deleted at any time.
\n
Only for testing, can be deleted at any time.
\n
Served as a testing example to make sure the computations are correct
Served as a testing example to make sure the computations are correct
...
@@ -68,7 +67,7 @@ try:
...
@@ -68,7 +67,7 @@ try:
def
getTestLocationLayerData
():
def
getTestLocationLayerData
():
inputLayerLocation
=
[
inputLayerLocation
=
[
{
{
"cluster_label"
:
1
,
"cluster_label"
:
1
,
...
@@ -199,7 +198,7 @@ try:
...
@@ -199,7 +198,7 @@ try:
]
]
return
inputLayerLocation
return
inputLayerLocation
def
getTestTimeLayerData
():
def
getTestTimeLayerData
():
inputLayerTime
=
[
inputLayerTime
=
[
{
{
"cluster_label"
:
4
,
"cluster_label"
:
4
,
...
@@ -298,7 +297,7 @@ try:
...
@@ -298,7 +297,7 @@ try:
]
]
return
inputLayerTime
return
inputLayerTime
def
getTestPriceLayerData
():
def
getTestPriceLayerData
():
inputLayerPrice
=
[
inputLayerPrice
=
[
{
{
"cluster_label"
:
6
,
"cluster_label"
:
6
,
...
@@ -398,8 +397,5 @@ try:
...
@@ -398,8 +397,5 @@ try:
if
__name__
==
'__main__'
:
if
__name__
==
'__main__'
:
unittest
.
main
()
unittest
.
main
()
\ No newline at end of file
except
Exception
as
e
:
print
(
"Exception found:"
)
print
(
e
)
\ No newline at end of file
This diff is collapsed.
Click to expand it.
src/data-hub/semantic-linking-microservice/app/test_coverage.py
View file @
f6af0a8e
...
@@ -3,7 +3,9 @@ import sys
...
@@ -3,7 +3,9 @@ import sys
for
path
in
[
'../'
,
'./'
]:
for
path
in
[
'../'
,
'./'
]:
sys
.
path
.
insert
(
1
,
path
)
sys
.
path
.
insert
(
1
,
path
)
#####################################
### Don't include for test report ###
#####################################
try
:
try
:
class
TestCoverage
(
unittest
.
TestCase
):
class
TestCoverage
(
unittest
.
TestCase
):
def
test_init_main
(
self
):
def
test_init_main
(
self
):
...
...
This diff is collapsed.
Click to expand it.
src/data-hub/semantic-linking-microservice/app/tests/test_pipeline.py
View file @
f6af0a8e
...
@@ -67,8 +67,8 @@ class Test_Pipeline(unittest.TestCase):
...
@@ -67,8 +67,8 @@ class Test_Pipeline(unittest.TestCase):
}
}
}
}
}
}
#original name testTraceProcessing
def
test
TraceProcessing
(
self
):
def
test
_handle_new_trace_newTraceMsg_correctlyInserted
(
self
):
msg
=
self
.
_buildTraceMessage
()
msg
=
self
.
_buildTraceMessage
()
self
.
handler
.
handle_new_trace
(
msg
[
"content"
])
self
.
handler
.
handle_new_trace
(
msg
[
"content"
])
self
.
assertEqual
(
len
(
self
.
handler
.
_repository
.
layernodes
),
1
)
self
.
assertEqual
(
len
(
self
.
handler
.
_repository
.
layernodes
),
1
)
...
...
This diff is collapsed.
Click to expand it.
src/participation-hub/business-logic-microservice/app/test_coverage.py
View file @
f6af0a8e
...
@@ -3,7 +3,9 @@ import sys
...
@@ -3,7 +3,9 @@ import sys
for
path
in
[
'../'
,
'./'
]:
for
path
in
[
'../'
,
'./'
]:
sys
.
path
.
insert
(
1
,
path
)
sys
.
path
.
insert
(
1
,
path
)
#####################################
### Don't include for test report ###
#####################################
try
:
try
:
class
TestCoverage
(
unittest
.
TestCase
):
class
TestCoverage
(
unittest
.
TestCase
):
def
test_init_main
(
self
):
def
test_init_main
(
self
):
...
...
This diff is collapsed.
Click to expand it.
src/participation-hub/business-logic-microservice/app/tests/test_layer_adapter.py
View file @
f6af0a8e
...
@@ -4,7 +4,7 @@ from db.entities.layer_adapter import LayerAdapter
...
@@ -4,7 +4,7 @@ from db.entities.layer_adapter import LayerAdapter
class
Test_Layer_Adapter
(
unittest
.
TestCase
):
class
Test_Layer_Adapter
(
unittest
.
TestCase
):
def
test_
valid_adapter
(
self
):
def
test_
LayerAdapter_newLayerAdapterObj_validInstantiation
(
self
):
adapter1
=
LayerAdapter
(
"layer1"
,
"use_case"
,
"table"
,
[
"a"
,
"c"
],
[
"a"
])
adapter1
=
LayerAdapter
(
"layer1"
,
"use_case"
,
"table"
,
[
"a"
,
"c"
],
[
"a"
])
print
(
adapter1
.
to_serializable_dict
)
print
(
adapter1
.
to_serializable_dict
)
...
...
This diff is collapsed.
Click to expand it.
src/rest-gateway/app/test_coverage.py
View file @
f6af0a8e
...
@@ -2,6 +2,11 @@ import unittest
...
@@ -2,6 +2,11 @@ import unittest
import
sys
import
sys
for
path
in
[
'../'
,
'./'
]:
for
path
in
[
'../'
,
'./'
]:
sys
.
path
.
insert
(
1
,
path
)
sys
.
path
.
insert
(
1
,
path
)
#####################################
### Don't include for test report ###
#####################################
try
:
try
:
class
TestCoverage
(
unittest
.
TestCase
):
class
TestCoverage
(
unittest
.
TestCase
):
def
test_init_main
(
self
):
def
test_init_main
(
self
):
...
...
This diff is collapsed.
Click to expand it.
src/transaction-hub-in/trace-retrieval-microservice/app/test_coverage.py
View file @
f6af0a8e
...
@@ -3,6 +3,10 @@ import sys
...
@@ -3,6 +3,10 @@ import sys
for
path
in
[
'../'
,
'./'
]:
for
path
in
[
'../'
,
'./'
]:
sys
.
path
.
insert
(
1
,
path
)
sys
.
path
.
insert
(
1
,
path
)
#####################################
### Don't include for test report ###
#####################################
try
:
try
:
class
TestCoverage
(
unittest
.
TestCase
):
class
TestCoverage
(
unittest
.
TestCase
):
def
test_init_main
(
self
):
def
test_init_main
(
self
):
...
...
This diff is collapsed.
Click to expand it.
src/transaction-hub-in/trace-retrieval-microservice/app/tests/test_MessageHandler.py
View file @
f6af0a8e
...
@@ -170,7 +170,7 @@ class Test_MessageHandler(unittest.TestCase):
...
@@ -170,7 +170,7 @@ class Test_MessageHandler(unittest.TestCase):
self
.
assertEqual
(
'semantic-linking'
,
self
.
msg_sender
.
last_message
[
'key'
])
self
.
assertEqual
(
'semantic-linking'
,
self
.
msg_sender
.
last_message
[
'key'
])
self
.
assertEqual
(
'new-trace'
,
json
.
loads
(
self
.
msg_sender
.
last_message
[
'msg'
])[
"type"
])
self
.
assertEqual
(
'new-trace'
,
json
.
loads
(
self
.
msg_sender
.
last_message
[
'msg'
])[
"type"
])
def
test_handle
blockchain_duplicateTrace
(
self
):
def
test_handle
BlockchainTransaction_duplicateTrace_oneTransAddedToDuplicateRepo
(
self
):
msg
=
self
.
_get_valid_message
()
msg
=
self
.
_get_valid_message
()
msg2
=
self
.
_get_valid_message
()
msg2
=
self
.
_get_valid_message
()
msg
=
eval
(
msg
)
msg
=
eval
(
msg
)
...
@@ -179,7 +179,7 @@ class Test_MessageHandler(unittest.TestCase):
...
@@ -179,7 +179,7 @@ class Test_MessageHandler(unittest.TestCase):
self
.
handler
.
handle_blockchain_transaction
(
msg2
[
'content'
])
self
.
handler
.
handle_blockchain_transaction
(
msg2
[
'content'
])
self
.
assertEqual
(
len
(
self
.
repo
.
added_transactions
),
len
(
self
.
repo
.
duplicated_transactions
))
self
.
assertEqual
(
len
(
self
.
repo
.
added_transactions
),
len
(
self
.
repo
.
duplicated_transactions
))
def
test_handle
blockchain_duplicateTraceDifferentTabl
e
(
self
):
def
test_handle
BlockchainTransaction_duplicateTraceDifferentTable_bothTransactionsAddedAsUniqu
e
(
self
):
msg
=
self
.
_get_valid_message
()
msg
=
self
.
_get_valid_message
()
msg2
=
self
.
_get_valid_message2
()
msg2
=
self
.
_get_valid_message2
()
msg
=
eval
(
msg
)
msg
=
eval
(
msg
)
...
@@ -188,7 +188,7 @@ class Test_MessageHandler(unittest.TestCase):
...
@@ -188,7 +188,7 @@ class Test_MessageHandler(unittest.TestCase):
self
.
handler
.
handle_blockchain_transaction
(
msg2
[
'content'
])
self
.
handler
.
handle_blockchain_transaction
(
msg2
[
'content'
])
self
.
assertEqual
(
len
(
self
.
repo
.
added_transactions
),
2
)
self
.
assertEqual
(
len
(
self
.
repo
.
added_transactions
),
2
)
def
test_handle
blockchain_duplicateTraceDifferentUseCas
e
(
self
):
def
test_handle
BlockchainTransaction_duplicateTraceDifferentUseCase_bothTransactionsAddedAsUniqu
e
(
self
):
msg
=
self
.
_get_valid_message
()
msg
=
self
.
_get_valid_message
()
msg2
=
self
.
_get_valid_message3
()
msg2
=
self
.
_get_valid_message3
()
msg
=
eval
(
msg
)
msg
=
eval
(
msg
)
...
...
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
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