コード例 #1
0
ファイル: UnitCombinerTests.cs プロジェクト: larsmoa/Quants
        public void Divide_BothArgumentsAreSame_ReturnsUnitless()
        {
            // Arrange
            IUnit unit = CreateStubUnit();
            // Act
            IUnit result = UnitCombiner.Divide(unit, unit);

            // Assert
            Assert.IsInstanceOf(typeof(Unitless), result);
        }
コード例 #2
0
ファイル: UnitCombinerTests.cs プロジェクト: larsmoa/Quants
        public void Divide_LeftArgumentIsUnitless_ReturnsCompoundUnit()
        {
            // Arrange
            IUnit unit = CreateStubUnit();
            // Act
            IUnit result = UnitCombiner.Divide(Unitless.Instance, unit);

            // Assert
            Assert.IsInstanceOf(typeof(CompoundUnit), result);
        }
コード例 #3
0
ファイル: UnitCombinerTests.cs プロジェクト: larsmoa/Quants
        public void Divide_RightArgumentIsUnitless_ReturnsLeftUnit()
        {
            // Arrange
            IUnit unit = CreateStubUnit();
            // Act
            IUnit result = UnitCombiner.Divide(unit, Unitless.Instance);

            // Assert
            Assert.AreSame(unit, result);
        }
コード例 #4
0
ファイル: UnitCombinerTests.cs プロジェクト: larsmoa/Quants
        public void Divide_CompoundUnitOverSelf_ReturnsUnitless()
        {
            // Arrange
            IUnit a   = CreateStubUnit("a");
            IUnit b   = CreateStubUnit("b");
            IUnit axb = UnitCombiner.Multiply(a, b);

            // Act
            IUnit result = UnitCombiner.Divide(axb, axb);

            // Assert
            Assert.AreSame(Unitless.Instance, result);
        }
コード例 #5
0
ファイル: UnitCombinerTests.cs プロジェクト: larsmoa/Quants
        public void Multiply_1_over_B_MultiplyWithA_ResultIsA_over_B()
        {
            // Arrange
            IUnit a    = CreateStubUnit("a");
            IUnit b    = CreateStubUnit("b");
            IUnit binv = UnitCombiner.Divide(Unitless.Instance, b);

            // Act
            IUnit result = UnitCombiner.Multiply(binv, a);

            // Assert
            Assert.AreEqual(UnitCombiner.Divide(a, b), result);
        }
コード例 #6
0
ファイル: UnitCombinerTests.cs プロジェクト: larsmoa/Quants
        public void Multiply_A_over_B_MultiplyWithB_ResultIsA()
        {
            // Arrange
            IUnit a      = CreateStubUnit("a");
            IUnit b      = CreateStubUnit("b");
            IUnit aoverb = UnitCombiner.Divide(a, b);

            // Act
            IUnit result = UnitCombiner.Multiply(aoverb, b);

            // Assert
            Assert.AreEqual(a, result);
        }
コード例 #7
0
ファイル: UnitCombinerTests.cs プロジェクト: larsmoa/Quants
        public void Divide_AxB_over_A_ResultIsB()
        {
            // Arrange
            IUnit a   = CreateStubUnit("a");
            IUnit b   = CreateStubUnit("b");
            IUnit axb = UnitCombiner.Multiply(a, b);

            // Act
            IUnit result = UnitCombiner.Divide(axb, a);

            // Assert
            Assert.AreSame(b, result);
        }
コード例 #8
0
ファイル: UnitCombinerTests.cs プロジェクト: larsmoa/Quants
        public void Multiply_AoverB_X_BoverA_ReturnsUnitless()
        {
            // Arrange
            IUnit a      = CreateStubUnit("a");
            IUnit b      = CreateStubUnit("b");
            IUnit aoverb = UnitCombiner.Divide(a, b);
            IUnit bovera = UnitCombiner.Divide(b, a);

            // Act
            IUnit result = UnitCombiner.Multiply(aoverb, bovera);

            // Assert
            Assert.AreSame(Unitless.Instance, result);
        }
コード例 #9
0
ファイル: UnitCombinerTests.cs プロジェクト: larsmoa/Quants
        public void Divide_AxB_Over_1OverBxA_EqualsAxAxBxB()
        {
            // Arrange
            IUnit a      = CreateStubUnit("a");
            IUnit b      = CreateStubUnit("b");
            IUnit axb    = UnitCombiner.Multiply(a, b);
            IUnit bxa    = UnitCombiner.Multiply(b, a);
            IUnit bxainv = UnitCombiner.Divide(Unitless.Instance, bxa);

            // Act
            IUnit result = UnitCombiner.Divide(axb, bxainv);

            // Assert
            Assert.AreEqual(UnitCombiner.Multiply(a, a, b, b), result);
        }
コード例 #10
0
ファイル: UnitCombinerTests.cs プロジェクト: larsmoa/Quants
        public void Divide_AxBxC_Over_AxB_ReturnsC()
        {
            // Arrange
            IUnit a     = CreateStubUnit("a");
            IUnit b     = CreateStubUnit("b");
            IUnit c     = CreateStubUnit("c");
            IUnit axb   = UnitCombiner.Multiply(a, b);
            IUnit axbxc = UnitCombiner.Multiply(axb, c);

            // Act
            IUnit result = UnitCombiner.Divide(axbxc, axb);

            // Assert
            Assert.AreSame(c, result);
        }
コード例 #11
0
ファイル: UnitCombinerTests.cs プロジェクト: larsmoa/Quants
        public void Divide_AxBxC_over_B_ResultIsAxC()
        {
            // Arrange
            IUnit a        = CreateStubUnit("a");
            IUnit b        = CreateStubUnit("b");
            IUnit c        = CreateStubUnit("c");
            IUnit axb      = UnitCombiner.Multiply(a, b);
            IUnit axbxc    = UnitCombiner.Multiply(axb, c);
            IUnit expected = UnitCombiner.Multiply(a, c);

            // Act
            IUnit result = UnitCombiner.Divide(axbxc, b);

            // Assert
            Assert.AreEqual(expected, result);
        }
コード例 #12
0
ファイル: UnitCombinerTests.cs プロジェクト: larsmoa/Quants
        public void Divide_UnitlessArguments_ReturnsUnitless()
        {
            IUnit result = UnitCombiner.Divide(Unitless.Instance, Unitless.Instance);

            Assert.IsInstanceOf(typeof(Unitless), result);
        }