k8s-features
Version:
A Cucumber-js base library for Kubernetes Gherkin tests, with base world class, basic steps, reusable utility functions and k8s client
42 lines (38 loc) • 830 B
JavaScript
const { AbstractFileOperation } = require('./fileOperation.cjs');
class FileContainsOperation extends AbstractFileOperation {
/**
*
* @param {string} path
* @param {string} content
*/
constructor(path, content) {
super(path);
this.content = content;
}
/**
*
* @param {string} rootDir
* @returns {string[]}
*/
bash(rootDir) {
return [
``,
`# FileContainsOperation`,
`FILE=${rootDir}/${this.path}`,
`DIR=${rootDir}`,
`CONTENT="${this.content}"`,
`if ! grep $CONTENT $FILE; then`,
` echo "content '$CONTENT' not found"`,
` echo "directory '$DIR' content:"`,
` ls -la $DIR`,
` echo "file content:"`,
` cat $FILE`,
` exit 1`,
`fi`,
``,
];
}
}
module.exports = {
FileContainsOperation,
};