UNPKG

@bigtest/mirage

Version:

A client-side server to develop, test and prototype your app.

70 lines (61 loc) 1.27 kB
import { ActiveModelSerializer } from '@bigtest/mirage'; import {module, test} from 'qunit'; module('Unit | Serializers | ActiveModelSerializer', { beforeEach() { this.serializer = new ActiveModelSerializer(); } }); test('normalize works', function(assert) { let payload = { contact: { id: 1, name: 'Link' } }; let jsonApiDoc = this.serializer.normalize(payload); assert.deepEqual(jsonApiDoc, { data: { type: 'contacts', id: 1, attributes: { name: 'Link' } } }); }); test('it hyphenates snake_cased words', function(assert) { let payload = { contact: { id: 1, first_name: 'Link' } }; let jsonApiDoc = this.serializer.normalize(payload); assert.deepEqual(jsonApiDoc, { data: { type: 'contacts', id: 1, attributes: { 'first-name': 'Link' } } }); }); test('it works without an id', function(assert) { let payload = { contact: { first_name: 'Link', last_name: 'zor' } }; let jsonApiDoc = this.serializer.normalize(payload); assert.deepEqual(jsonApiDoc, { data: { type: 'contacts', attributes: { 'first-name': 'Link', 'last-name': 'zor' } } }); });