All files / RdsProgressBar RdsProgressBar.js

80% Statements 8/10
60% Branches 6/10
100% Functions 2/2
80% Lines 8/10

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35        1x 1x                   1x   1x 1x 1x 1x                 1x          
import React from "react";
import PropTypes from 'prop-types';
import styles from './RdsProgressBar.module.css';
 
const RdsProgressBar = ({ progress, classNames }) => {
  return (
  <div className={`${styles.container} ${classNames}`}>
    <div className={styles.progress} style={{width: progress + '%'}}>
        <span className={styles.progress_text}>{progress}%</span>
    </div>
  </div>
  );
}
 
function validProgress(props, propName, componentName) {
  componentName = componentName || 'ANONYMOUS';
 
  Eif (props[propName]) {
    let value = props[propName];
    Eif (typeof value === 'number') {
        return (value >= 0 && value <= 100) ? null : new Error(propName + ' in ' + componentName + " is not within 0 to 100");
    } else {
        return new Error(propName + ' in ' + componentName + " is not a number");
    }
  }
  // assume all ok
  return null;
}
 
RdsProgressBar.propTypes = {
    progress: validProgress
}
 
export default RdsProgressBar;