Mercurial > hg > thermostat-ng > web-client
view src/app/shared/filters/format-bytes.pipe.spec.ts @ 245:2eb2ae0f3b3f
Transition project to Angular 4 Hybrid
Reviewed-by: jkang
Review-thread: http://icedtea.classpath.org/pipermail/thermostat/2017-October/025266.html
author | Andrew Azores <aazores@redhat.com> |
---|---|
date | Fri, 13 Oct 2017 14:05:09 -0400 |
parents | |
children | 288f0c458eb6 |
line wrap: on
line source
/** * Copyright 2012-2017 Red Hat, Inc. * * Thermostat is distributed under the GNU General Public License, * version 2 or any later version (with a special exception described * below, commonly known as the "Classpath Exception"). * * A copy of GNU General Public License (GPL) is included in this * distribution, in the file COPYING. * * Linking Thermostat code with other modules is making a combined work * based on Thermostat. Thus, the terms and conditions of the GPL * cover the whole combination. * * As a special exception, the copyright holders of Thermostat give you * permission to link this code with independent modules to produce an * executable, regardless of the license terms of these independent * modules, and to copy and distribute the resulting executable under * terms of your choice, provided that you also meet, for each linked * independent module, the terms and conditions of the license of that * module. An independent module is a module which is not derived from * or based on Thermostat code. If you modify Thermostat, you may * extend this exception to your version of the software, but you are * not obligated to do so. If you do not wish to do so, delete this * exception statement from your version. */ import * as sinon from 'sinon'; import { FormatBytesPipe } from './format-bytes.pipe'; import { Metric } from './metric'; import { ScaleBytesService } from '../services/scale-bytes.service' describe('FormatBytesPipe', () => { let pipe: FormatBytesPipe; let svc: ScaleBytesService; beforeEach(() => { svc = { format: sinon.stub().returns({ result: 100, scale: 2, unit: 'KiB' }), metricToBigInt: null, sizes: ['B', 'KiB', 'MiB', 'GiB', 'TiB', 'PiB', 'EiB', 'ZiB', 'YiB'], }; pipe = new FormatBytesPipe(svc); }); it('should delegate to service', () => { svc.format.should.not.be.called(); pipe.transform({ $numberLong: '2' }).should.equal('100 KiB'); svc.format.should.be.calledOnce(); svc.format.should.be.calledWithMatch({ $numberLong: '2' }); }); });