Open eloypnd opened 6 years ago
Create a test file for every component (folder) in the folder. Meant to be executed in src/components
:
for folder in */;
do name=$(echo $folder | sed 's/\/$//');
echo -e "import React from 'react'\nimport renderer from 'react-test-renderer'\nimport $name from './$name'\n\nit('$name renders correctly', () => {\n const tree = renderer\n .create(<$name />)\n .toJSON()\n expect(tree).toMatchSnapshot()\n})\n" > "$name/$name.spec.js";
done
Create files from a array of strings:
declare -a names=("list" "of" "strings")
for name in "${names[@]}"
do
echo "$name";
echo -e "content for file $name\nnew line" > "path/to/$name.ext";
done
Create index file if it does not exist
#!/bin/bash
for file in *; do
if [ -d "$file" ]; then
if [[ ! -e $file/index.js ]]; then
echo "export { default } from './$file';\n" > "$file/index.js";
fi
fi
done
Goal
In a React project I need to move from a flat structure based on components, documentation and test files in the
component
folders to one folder per component.Script