diff --git a/src/PhonoChangeApplier.js b/src/PhonoChangeApplier.js
index 0f0edde..45a520e 100644
--- a/src/PhonoChangeApplier.js
+++ b/src/PhonoChangeApplier.js
@@ -12,13 +12,14 @@ const PhonoChangeApplier = () => {
{ phoneme: [ 'feature' ] }
);
const [ epochs, setEpochs ] = useState([{name: 'epoch 1', changes:['[+ feature]>[- feature]/_#']}]);
+ const [ options, setOptions ] = useState({output: 'default', save: false})
return (
);
}
diff --git a/src/components/Options.js b/src/components/Options.js
index d96c202..55d0617 100644
--- a/src/components/Options.js
+++ b/src/components/Options.js
@@ -2,37 +2,54 @@ import React from 'react';
import './Options.scss';
const Options = props => {
+ const handleRadioChange = e => {
+ props.setOptions({...props.options, [e.target.name]: e.target.id})
+ }
+
+ const handleCheckChange = e => {
+ props.setOptions({...props.options, [e.target.name]: e.target.checked})
+ }
+
return (
Modeling Options
-
diff --git a/src/components/Options.test.js b/src/components/Options.test.js
index dd91e5f..850999c 100644
--- a/src/components/Options.test.js
+++ b/src/components/Options.test.js
@@ -19,4 +19,9 @@ describe('Options', () => {
expect(getByTestId('Options')).toHaveTextContent('Modeling Options');
});
+ it('renders form options from props', () => {
+ let options = {output: 'proto', save: true}
+ const { getByTestId } = render()
+ expect(getByTestId('Options-form')).toHaveFormValues(options);
+ })
});
\ No newline at end of file