| // Copyright 2015 The Vanadium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style |
| // license that can be found in the LICENSE file. |
| |
| var test = require('prova'); |
| var Complex = require('./../../src/vdl/complex'); |
| |
| test('toString', function(assert) { |
| assert.equal((new Complex(1, -3)).toString(), '1 - 3i'); |
| assert.equal((new Complex(1, 5)).toString(), '1 + 5i'); |
| assert.equal((new Complex(4, 0)).toString(), '4'); |
| assert.equal((new Complex(0, 3)).toString(), '3i'); |
| assert.equal((new Complex(1, 1)).toString(), '1 + i'); |
| assert.equal((new Complex(1, -1)).toString(), '1 - i'); |
| assert.end(); |
| }); |
| |
| test('add', function(assert) { |
| var c1 = new Complex(1, 3); |
| var c2 = new Complex(3, -2); |
| assert.equal(c1.add(c2).toString(), '4 + i'); |
| assert.equal(c1.add(c2).toString(), '4 + i'); |
| assert.end(); |
| }); |
| |
| test('subtract', function(assert) { |
| var c1 = new Complex(1, 3); |
| var c2 = new Complex(3, -2); |
| assert.equal(c1.subtract(c2).toString(), '-2 + 5i'); |
| assert.equal(c2.subtract(c1).toString(), '2 - 5i'); |
| assert.end(); |
| }); |
| |
| test('multiply', function(assert) { |
| var c1 = new Complex(1, 3); |
| var c2 = new Complex(3, -2); |
| assert.equal(c1.multiply(c2).toString(), '9 + 7i'); |
| assert.equal(c2.multiply(c1).toString(), '9 + 7i'); |
| assert.end(); |
| }); |
| |
| test('divide', function(assert) { |
| var c1 = new Complex(3, 3); |
| var c2 = new Complex(1, -1); |
| assert.equal(c1.divide(c2).toString(), '3i'); |
| assert.end(); |
| }); |