diff --git a/demo/card/card.js b/demo/card/card.js index f5f04f8..95247db 100644 --- a/demo/card/card.js +++ b/demo/card/card.js @@ -1,6 +1,6 @@ import React from 'react'; import ReactDOM from 'react-dom'; -import { Card, CardTitle, CardText, CardActions, CardMenu } from '../../src/Card'; +import { Card, CardTitle, CardText, CardActions, CardMenu, CardMedia } from '../../src/Card'; import Button from '../../src/Button'; import IconButton from '../../src/IconButton'; import Icon from '../../src/Icon'; @@ -62,6 +62,17 @@ class Demo extends React.Component { + +

Media card

+ + Media card + + + + + This card contains media. + + ); } diff --git a/index.js b/index.js index a520007..1207b46 100644 --- a/index.js +++ b/index.js @@ -13,6 +13,7 @@ module.exports = { Card: Card.Card, CardTitle: Card.CardTitle, CardActions: Card.CardActions, + CardMedia: Card.CardMedia, CardText: Card.CardText, CardMenu: Card.CardMenu, Checkbox: require('./lib/Checkbox'), diff --git a/src/Card/__tests__/CardMedia-test.js b/src/Card/__tests__/CardMedia-test.js new file mode 100644 index 0000000..a353f28 --- /dev/null +++ b/src/Card/__tests__/CardMedia-test.js @@ -0,0 +1,38 @@ +/* eslint-env mocha */ +import expect from 'expect'; +import React from 'react'; +import { render } from '../../__tests__/render'; +import { CardMedia } from '../'; + +describe('Card', () => { + describe('CardMedia', () => { + it('should render a div with the card media css class', () => { + const output = render(); + + expect(output.type).toBe('div'); + expect(output.props.className).toInclude('mdl-card__media'); + }); + + it('should allow custom css classes', () => { + const output = render(); + + expect(output.props.className) + .toInclude('mdl-card__media') + .toInclude('my-media'); + }); + + it('should render with the children', () => { + const element = ( + + + + ); + + const output = render(element); + + expect(output.props.children) + .toEqual(); + }); + }); +}); + diff --git a/src/Card/index.js b/src/Card/index.js index aa708f8..0355b7a 100644 --- a/src/Card/index.js +++ b/src/Card/index.js @@ -5,3 +5,4 @@ export const CardText = basicClassCreator('CardText', 'mdl-card__supporting-text export const CardMenu = basicClassCreator('CardMenu', 'mdl-card__menu'); export CardTitle from './CardTitle'; export CardActions from './CardActions'; +export const CardMedia = basicClassCreator('CardMedia', 'mdl-card__media');