diff --git a/cur/programming/5-algorithms/1-searching-lists/8-sequential.es.html b/cur/programming/5-algorithms/1-searching-lists/8-sequential.es.html
index 05a365a91a..49b6feee64 100644
--- a/cur/programming/5-algorithms/1-searching-lists/8-sequential.es.html
+++ b/cur/programming/5-algorithms/1-searching-lists/8-sequential.es.html
@@ -298,25 +298,25 @@
Paralelismo
-
\frac{18}{14}
+
\frac{18}{14}
¡Correcto!
-
\frac{14}{18}
+
\frac{14}{18}
La aceleración se calcula dividiendo el tiempo secuencial por el tiempo paralelo.
-
\frac{18}{6}
+
\frac{18}{6}
Transmitir y esperar
espera hasta que todas las tareas que comenzó han terminado.
-
\frac{18}{8}
+
\frac{18}{8}
El tiempo paralelo más largo sí importa, pero no es lo único que contribuye al tiempo paralelo total.
diff --git a/cur/programming/5-algorithms/1-searching-lists/8-sequential.html b/cur/programming/5-algorithms/1-searching-lists/8-sequential.html
index 5260c18247..6ed04ca4ee 100644
--- a/cur/programming/5-algorithms/1-searching-lists/8-sequential.html
+++ b/cur/programming/5-algorithms/1-searching-lists/8-sequential.html
@@ -296,25 +296,25 @@
Parallelism
-
\frac{18}{14}
+
\frac{18}{14}
Correct!
-
\frac{14}{18}
+
\frac{14}{18}
Speedup is calculated by dividing the sequential time by the parallel time.
-
\frac{18}{6}
+
\frac{18}{6}
Broadcast and wait
waits until all the tasks that it started have finished.
-
\frac{18}{8}
+
\frac{18}{8}
The longest parallel time does matter, but it's not the only thing that contributes to the total parallel time.
diff --git a/cur/programming/5-algorithms/3-turning-data-information/1-health-data.html b/cur/programming/5-algorithms/3-turning-data-information/1-health-data.html
index b39f9b78a8..559ff9a973 100644
--- a/cur/programming/5-algorithms/3-turning-data-information/1-health-data.html
+++ b/cur/programming/5-algorithms/3-turning-data-information/1-health-data.html
@@ -32,7 +32,7 @@
Analyzing Global Health Data
What does the size of each point indicate?
What does the slider at the bottom do?
-
+
diff --git a/cur/programming/summaries/assessment-data5.html b/cur/programming/summaries/assessment-data5.html
index b26588a1ea..b0c43cdb6a 100755
--- a/cur/programming/summaries/assessment-data5.html
+++ b/cur/programming/summaries/assessment-data5.html
@@ -259,25 +259,25 @@ Lab 1: Search Algorithms and Efficiency
-
\frac{18}{14}
+
\frac{18}{14}
Correct!
-
\frac{14}{18}
+
\frac{14}{18}
Speedup is calculated by dividing the sequential time by the parallel time.
-
\frac{18}{6}
+
\frac{18}{6}
Broadcast and wait
waits until all the tasks that it started have finished.
-
\frac{18}{8}
+
\frac{18}{8}
The longest parallel time does matter, but it's not the only thing that contributes to the total parallel time.
diff --git a/utilities/spec/accessibility_spec.rb b/utilities/spec/accessibility_spec.rb
index 373be66754..8a235dc293 100644
--- a/utilities/spec/accessibility_spec.rb
+++ b/utilities/spec/accessibility_spec.rb
@@ -76,6 +76,7 @@ def a11y_test_cases(course, url)
# Allows CI to run only the tests for a specific course AND standard.
wcag20_tags = test_tags([course, :wcag20])
wcag22_tags = test_tags([course, :wcag22])
+ subset_tags = test_tags([course, :subset])
# ====== AXE Configuration
# Axe-core test standards groups
@@ -90,8 +91,16 @@ def a11y_test_cases(course, url)
# These are elements that are not required to be accessible
excluded_elements = [
- '[data-a11y-external-errors="true"]', # should be used very sparingly.
- '.js-openProdLink', # OK to exclude, only in development.
+ # should be used very sparingly.
+ '[data-a11y-external-errors="true"]',
+ # Developer Tools, which aren't visible in production
+ '.js-openProdLink',
+ '.todo',
+ '.comment',
+ '.commentBig',
+ '.ap-standard',
+ '.csta-standard',
+ # TODO: items below here **must** be fixed eventually.
'var', # Snap! elements don't have enough color contrast.
]
@@ -120,6 +129,23 @@ def a11y_test_cases(course, url)
.excluding(*excluded_elements)
end
+ # This test should normally be commented out.
+ # it allows you to easily/temporary update a subset of axe rules and run just those.
+ # heading-order
+ # color-contrast
+ it 'passes a subset a11y rules', **subset_tags do
+ expect(page).to be_axe_clean
+ .checking_only(%i|
+ duplicate-id
+ listitem
+ frame-title
+ image-alt
+ label
+ area-alt
+ |)
+ .excluding(*excluded_elements)
+ end
+
it 'has no broken links', course => true do
passed_test = true
page.all('a').each do |link|