Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[StepButton] Fix prop-types warning regarding expanded #19332

Merged
merged 5 commits into from
Jan 22, 2020

Conversation

eps1lon
Copy link
Member

@eps1lon eps1lon commented Jan 21, 2020

Fixes

Warning: Received false for a non-boolean attribute expanded.

when using <Step><StepButton /></Step> which is used in our docs.

Used this opportunity to convert Step and StepButton to testing-library where possible.

Includes a fix for TouchRipple that will be handled in a different PR.

@eps1lon eps1lon added bug 🐛 Something doesn't work component: stepper This is the name of the generic UI component, not the React module! labels Jan 21, 2020
packages/material-ui/src/ButtonBase/TouchRipple.js Outdated Show resolved Hide resolved
getAllByTestId('props').forEach(child => {
// HTMLElement.dataset is a DOMStringMap which fails deep.equal
const datasetAsObject = { ...child.dataset };
expect(datasetAsObject).to.deep.equal({
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Using deep equality over (previous) subset checking. This helps exposing all props that children might receive.


describe('event handlers', () => {
describe('handleMouseEnter/Leave', () => {
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This handles the same as the "should bubble callbacks used internally" test whose description is misleading. It never tested bubbling as far as I can tell.

assert.strictEqual(handleTouchStart.callCount, 2);
const button = getByRole('button');

fireEvent.mouseOver(button);
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Something about mouseenter vs mouseover. Need a refresher what the difference is and how react handles those.

@mui-pr-bot
Copy link

mui-pr-bot commented Jan 21, 2020

Details of bundle changes.

Comparing: 2082679...6b0fbb5

bundle Size Change Size Gzip Change Gzip
@material-ui/core ▲ +24 B (+0.01% ) 361 kB ▲ +6 B (+0.01% ) 98.8 kB
StepButton ▲ +24 B (+0.03% ) 82.6 kB ▲ +6 B (+0.02% ) 26.1 kB
@material-ui/core[umd] ▲ +24 B (+0.01% ) 318 kB ▲ +4 B (0.00% ) 92 kB
@material-ui/lab -- 185 kB -- 55.2 kB
@material-ui/styles -- 51.2 kB -- 15.4 kB
@material-ui/system -- 14.8 kB -- 4.07 kB
Alert -- 84 kB -- 26.3 kB
AlertTitle -- 64.3 kB -- 20.2 kB
AppBar -- 64.1 kB -- 20 kB
Autocomplete -- 132 kB -- 41.3 kB
Avatar -- 65.4 kB -- 20.6 kB
AvatarGroup -- 62.4 kB -- 19.6 kB
Backdrop -- 68 kB -- 21 kB
Badge -- 65.4 kB -- 20.4 kB
BottomNavigation -- 62.5 kB -- 19.6 kB
BottomNavigationAction -- 75.7 kB -- 23.9 kB
Box -- 71 kB -- 21.7 kB
Breadcrumbs -- 67.9 kB -- 21.3 kB
Button -- 79.9 kB -- 24.5 kB
ButtonBase -- 74.2 kB -- 23.3 kB
ButtonGroup -- 83.4 kB -- 25.5 kB
Card -- 63 kB -- 19.7 kB
CardActionArea -- 75.3 kB -- 23.7 kB
CardActions -- 62.2 kB -- 19.5 kB
CardContent -- 62.1 kB -- 19.4 kB
CardHeader -- 65.2 kB -- 20.5 kB
CardMedia -- 62.5 kB -- 19.7 kB
Checkbox -- 83.2 kB -- 26.3 kB
Chip -- 82.8 kB -- 25.4 kB
CircularProgress -- 64.2 kB -- 20.3 kB
ClickAwayListener -- 3.91 kB -- 1.55 kB
Collapse -- 68.2 kB -- 21.1 kB
colorManipulator -- 3.88 kB -- 1.52 kB
Container -- 63.4 kB -- 19.8 kB
CssBaseline -- 57.7 kB -- 18.1 kB
Dialog -- 83.2 kB -- 25.9 kB
DialogActions -- 62.2 kB -- 19.5 kB
DialogContent -- 62.3 kB -- 19.5 kB
DialogContentText -- 64.2 kB -- 20.2 kB
DialogTitle -- 64.4 kB -- 20.2 kB
Divider -- 62.7 kB -- 19.7 kB
docs.landing -- 50.5 kB -- 13.3 kB
docs.main -- 596 kB -- 194 kB
Drawer -- 85 kB -- 25.8 kB
ExpansionPanel -- 72.5 kB -- 22.7 kB
ExpansionPanelActions -- 62.2 kB -- 19.5 kB
ExpansionPanelDetails -- 62.1 kB -- 19.4 kB
ExpansionPanelSummary -- 78.3 kB -- 24.7 kB
Fab -- 77 kB -- 24 kB
Fade -- 23.6 kB -- 8 kB
FilledInput -- 73.7 kB -- 22.9 kB
FormControl -- 64.5 kB -- 20.1 kB
FormControlLabel -- 65.6 kB -- 20.6 kB
FormGroup -- 62.1 kB -- 19.5 kB
FormHelperText -- 63.5 kB -- 20 kB
FormLabel -- 63.6 kB -- 19.7 kB
Grid -- 65.2 kB -- 20.4 kB
GridList -- 62.6 kB -- 19.7 kB
GridListTile -- 63.9 kB -- 20 kB
GridListTileBar -- 63.3 kB -- 19.9 kB
Grow -- 24.2 kB -- 8.21 kB
Hidden -- 66.1 kB -- 20.7 kB
Icon -- 62.9 kB -- 19.7 kB
IconButton -- 76.3 kB -- 23.8 kB
Input -- 72.6 kB -- 22.7 kB
InputAdornment -- 65.2 kB -- 20.5 kB
InputBase -- 70.8 kB -- 22.2 kB
InputLabel -- 65.5 kB -- 20.2 kB
LinearProgress -- 65.4 kB -- 20.5 kB
Link -- 66.7 kB -- 21.1 kB
List -- 62.5 kB -- 19.5 kB
ListItem -- 77.3 kB -- 24.2 kB
ListItemAvatar -- 62.2 kB -- 19.5 kB
ListItemIcon -- 62.3 kB -- 19.5 kB
ListItemSecondaryAction -- 62.1 kB -- 19.5 kB
ListItemText -- 65.1 kB -- 20.4 kB
ListSubheader -- 62.9 kB -- 19.8 kB
Menu -- 88.9 kB -- 27.4 kB
MenuItem -- 78.4 kB -- 24.5 kB
MenuList -- 66.2 kB -- 20.7 kB
MobileStepper -- 68 kB -- 21.3 kB
Modal -- 14.5 kB -- 5.05 kB
NativeSelect -- 77 kB -- 24.3 kB
NoSsr -- 2.19 kB -- 1.04 kB
OutlinedInput -- 75 kB -- 23.3 kB
Paper -- 62.5 kB -- 19.5 kB
Popover -- 83.3 kB -- 25.8 kB
Popper -- 28.8 kB -- 10.3 kB
Portal -- 2.92 kB -- 1.3 kB
Radio -- 84.3 kB -- 26.6 kB
RadioGroup -- 64.6 kB -- 20 kB
Rating -- 70.6 kB -- 22.7 kB
RootRef -- 4.24 kB -- 1.64 kB
Select -- 117 kB -- 34.6 kB
Skeleton -- 63 kB -- 19.9 kB
Slide -- 25.6 kB -- 8.73 kB
Slider -- 76.8 kB -- 24.3 kB
Snackbar -- 75.5 kB -- 23.6 kB
SnackbarContent -- 63.7 kB -- 20.1 kB
SpeedDial -- 86.4 kB -- 27.2 kB
SpeedDialAction -- 119 kB -- 37.5 kB
SpeedDialIcon -- 64.7 kB -- 20.3 kB
Step -- 62.8 kB -- 19.7 kB
StepConnector -- 62.8 kB -- 19.8 kB
StepContent -- 69.3 kB -- 21.7 kB
StepIcon -- 64.8 kB -- 20.2 kB
StepLabel -- 68.7 kB -- 21.7 kB
Stepper -- 65 kB -- 20.5 kB
styles/createMuiTheme -- 16.6 kB -- 5.83 kB
SvgIcon -- 63.2 kB -- 19.8 kB
SwipeableDrawer -- 92.4 kB -- 28.9 kB
Switch -- 82.4 kB -- 26 kB
Tab -- 76.6 kB -- 24.2 kB
Table -- 62.7 kB -- 19.7 kB
TableBody -- 62.2 kB -- 19.5 kB
TableCell -- 64.2 kB -- 20.2 kB
TableContainer -- 62.1 kB -- 19.4 kB
TableFooter -- 62.2 kB -- 19.5 kB
TableHead -- 62.2 kB -- 19.5 kB
TablePagination -- 144 kB -- 42 kB
TableRow -- 62.6 kB -- 19.6 kB
TableSortLabel -- 77.6 kB -- 24.4 kB
Tabs -- 85.8 kB -- 27.2 kB
TextareaAutosize -- 5.12 kB -- 2.14 kB
TextField -- 126 kB -- 36.6 kB
ToggleButton -- 76.3 kB -- 24.2 kB
ToggleButtonGroup -- 63.3 kB -- 19.9 kB
Toolbar -- 62.5 kB -- 19.6 kB
Tooltip -- 102 kB -- 32.3 kB
TreeItem -- 74.1 kB -- 23.5 kB
TreeView -- 66.8 kB -- 21 kB
Typography -- 63.8 kB -- 20 kB
useAutocomplete -- 14.6 kB -- 5.26 kB
useMediaQuery -- 2.51 kB -- 1.06 kB
Zoom -- 23.6 kB -- 8.12 kB

Generated by 🚫 dangerJS against 6b0fbb5

@eps1lon eps1lon force-pushed the test/testing-lib-step branch from bdb59b3 to 6b0fbb5 Compare January 21, 2020 18:27
@eps1lon eps1lon marked this pull request as ready for review January 21, 2020 19:35
@oliviertassinari
Copy link
Member

👌

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug 🐛 Something doesn't work component: stepper This is the name of the generic UI component, not the React module!
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants