Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
E
edx-platform
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
edx
edx-platform
Commits
c61bcb5b
Commit
c61bcb5b
authored
Apr 24, 2012
by
David Ormsbee
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #21 from MITx/pmitros/case_fix
Case sensitivity bug fix
parents
cd03a3ad
e33897bb
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
16 additions
and
5 deletions
+16
-5
djangoapps/courseware/capa/calc.py
+11
-5
djangoapps/courseware/tests.py
+5
-0
No files found.
djangoapps/courseware/capa/calc.py
View file @
c61bcb5b
...
@@ -78,17 +78,23 @@ def evaluator(variables, functions, string, cs=False):
...
@@ -78,17 +78,23 @@ def evaluator(variables, functions, string, cs=False):
# log.debug("functions: {0}".format(functions))
# log.debug("functions: {0}".format(functions))
# log.debug("string: {0}".format(string))
# log.debug("string: {0}".format(string))
def
lower_dict
(
d
):
return
dict
([(
k
.
lower
(),
d
[
k
])
for
k
in
d
])
all_variables
=
copy
.
copy
(
default_variables
)
all_variables
=
copy
.
copy
(
default_variables
)
all_variables
.
update
(
variables
)
all_functions
=
copy
.
copy
(
default_functions
)
all_functions
=
copy
.
copy
(
default_functions
)
if
not
cs
:
all_variables
=
lower_dict
(
all_variables
)
all_functions
=
lower_dict
(
all_functions
)
all_variables
.
update
(
variables
)
all_functions
.
update
(
functions
)
all_functions
.
update
(
functions
)
if
not
cs
:
if
not
cs
:
string_cs
=
string
.
lower
()
string_cs
=
string
.
lower
()
for
v
in
all_variables
.
keys
():
all_functions
=
lower_dict
(
all_functions
)
all_variables
[
v
.
lower
()]
=
all_variables
[
v
]
all_variables
=
lower_dict
(
all_variables
)
for
f
in
all_functions
.
keys
():
all_functions
[
f
.
lower
()]
=
all_functions
[
f
]
CasedLiteral
=
CaselessLiteral
CasedLiteral
=
CaselessLiteral
else
:
else
:
string_cs
=
string
string_cs
=
string
...
...
djangoapps/courseware/tests.py
View file @
c61bcb5b
...
@@ -33,6 +33,11 @@ class ModelsTest(unittest.TestCase):
...
@@ -33,6 +33,11 @@ class ModelsTest(unittest.TestCase):
self
.
assertTrue
(
abs
(
calc
.
evaluator
(
variables
,
functions
,
"k*T/q-0.025"
))
<
0.001
)
self
.
assertTrue
(
abs
(
calc
.
evaluator
(
variables
,
functions
,
"k*T/q-0.025"
))
<
0.001
)
self
.
assertTrue
(
abs
(
calc
.
evaluator
(
variables
,
functions
,
"e^(j*pi)"
)
+
1
)
<
0.00001
)
self
.
assertTrue
(
abs
(
calc
.
evaluator
(
variables
,
functions
,
"e^(j*pi)"
)
+
1
)
<
0.00001
)
self
.
assertTrue
(
abs
(
calc
.
evaluator
(
variables
,
functions
,
"j||1"
)
-
0.5
-
0.5
j
)
<
0.00001
)
self
.
assertTrue
(
abs
(
calc
.
evaluator
(
variables
,
functions
,
"j||1"
)
-
0.5
-
0.5
j
)
<
0.00001
)
variables
[
't'
]
=
1.0
self
.
assertTrue
(
abs
(
calc
.
evaluator
(
variables
,
functions
,
"t"
)
-
1.0
)
<
0.00001
)
self
.
assertTrue
(
abs
(
calc
.
evaluator
(
variables
,
functions
,
"T"
)
-
1.0
)
<
0.00001
)
self
.
assertTrue
(
abs
(
calc
.
evaluator
(
variables
,
functions
,
"t"
,
cs
=
True
)
-
1.0
)
<
0.00001
)
self
.
assertTrue
(
abs
(
calc
.
evaluator
(
variables
,
functions
,
"T"
,
cs
=
True
)
-
298
)
<
0.2
)
exception_happened
=
False
exception_happened
=
False
try
:
try
:
calc
.
evaluator
({},{},
"5+7 QWSEKO"
)
calc
.
evaluator
({},{},
"5+7 QWSEKO"
)
...
...
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