diff --git a/benchmarking/src/benchmarks/BenchmarkSuite.js b/benchmarking/src/benchmarks/BenchmarkSuite.js
index db1fdd0..f0487d7 100644
--- a/benchmarking/src/benchmarks/BenchmarkSuite.js
+++ b/benchmarking/src/benchmarks/BenchmarkSuite.js
@@ -13,11 +13,13 @@ export class BenchmarkSuite {
setBenchmarkType(benchmarktype) {
this.benchmarktype = benchmarktype
+ this.onChange()
}
setCases(cases) {
this.cases = new CasesIterator(cases)
this.stats = this.cases.getInitialStats()
+ this.onChange()
}
addStat(name, val) {
diff --git a/benchmarking/src/components/runner.js b/benchmarking/src/components/runner.js
index 86cc909..3a96850 100644
--- a/benchmarking/src/components/runner.js
+++ b/benchmarking/src/components/runner.js
@@ -37,13 +37,16 @@ export class BenchmarkRunner extends Component {
if (prevState !== this.state) {
this.props.onStatsChange(this.suite.stats)
}
+ if (prevProps.formState !== this.props.formState) {
+ this.initializeSuite()
+ this.suite.stop()
+ }
}
initializeSuite() {
let data = dataSelector[this.props.formState.dataset]
this.suite.setBenchmarkType(benchmarkTypeSelector(this.props.formState))
this.suite.setCases(generateCases(data, this.props.formState))
- this.suite.start()
}
stateIsOneOf(states) {
@@ -83,7 +86,14 @@ export class BenchmarkRunner extends Component {
{this.startButtonShown() && (
-
+
)}
{this.resumeButtonShown() && (