Пример #1
0
        public void Instance_Always_ReturnsAnInstance()
        {
            // Call
            IMacroStabilityInwardsCalculatorFactory factory = MacroStabilityInwardsCalculatorFactory.Instance;

            // Assert
            Assert.IsInstanceOf <MacroStabilityInwardsCalculatorFactory>(factory);
        }
Пример #2
0
        public void Instance_WhenSetToInstance_ReturnsThatInstance()
        {
            // Setup
            var firstFactory = new TestMacroStabilityInwardsCalculatorFactory();

            MacroStabilityInwardsCalculatorFactory.Instance = firstFactory;

            // Call
            IMacroStabilityInwardsCalculatorFactory secondFactory = MacroStabilityInwardsCalculatorFactory.Instance;

            // Assert
            Assert.AreSame(firstFactory, secondFactory);
        }
Пример #3
0
        public void Instance_WhenSetToNull_ReturnsNewInstance()
        {
            // Setup
            IMacroStabilityInwardsCalculatorFactory firstFactory = MacroStabilityInwardsCalculatorFactory.Instance;

            MacroStabilityInwardsCalculatorFactory.Instance = null;

            // Call
            IMacroStabilityInwardsCalculatorFactory secondFactory = MacroStabilityInwardsCalculatorFactory.Instance;

            // Assert
            Assert.AreNotSame(firstFactory, secondFactory);
        }
Пример #4
0
        public void CreateWaternetDailyCalculator_WithWaternetCalculatorInput_ReturnsWaternetDailyCalculator()
        {
            // Setup
            IMacroStabilityInwardsCalculatorFactory factory = MacroStabilityInwardsCalculatorFactory.Instance;

            using (new MacroStabilityInwardsKernelFactoryConfig())
            {
                // Call
                IWaternetCalculator waternetCalculator = factory.CreateWaternetDailyCalculator(
                    new WaternetCalculatorInput(new WaternetCalculatorInput.ConstructionProperties
                {
                    SurfaceLine          = new MacroStabilityInwardsSurfaceLine("test"),
                    SoilProfile          = new TestSoilProfile(),
                    PhreaticLineOffsets  = new PhreaticLineOffsets(),
                    DrainageConstruction = new DrainageConstruction()
                }), MacroStabilityInwardsKernelWrapperFactory.Instance);

                // Assert
                Assert.IsInstanceOf <WaternetDailyCalculator>(waternetCalculator);
            }
        }
Пример #5
0
        public void CreateUpliftVanCalculator_WithUpliftVanCalculatorInput_ReturnsUpliftVanCalculator()
        {
            // Setup
            IMacroStabilityInwardsCalculatorFactory factory = MacroStabilityInwardsCalculatorFactory.Instance;

            using (new MacroStabilityInwardsKernelFactoryConfig())
            {
                // Call
                IUpliftVanCalculator upliftVanCalculator = factory.CreateUpliftVanCalculator(
                    new UpliftVanCalculatorInput(new UpliftVanCalculatorInput.ConstructionProperties
                {
                    SurfaceLine = new MacroStabilityInwardsSurfaceLine("test"),
                    SoilProfile = new TestSoilProfile(),
                    PhreaticLineOffsetsExtreme = new PhreaticLineOffsets(),
                    PhreaticLineOffsetsDaily   = new PhreaticLineOffsets(),
                    DrainageConstruction       = new DrainageConstruction(),
                    SlipPlane = new UpliftVanSlipPlane()
                }),
                    MacroStabilityInwardsKernelWrapperFactory.Instance);

                // Assert
                Assert.IsInstanceOf <UpliftVanCalculator>(upliftVanCalculator);
            }
        }
 /// <summary>
 /// Creates a new instance of <see cref="MacroStabilityInwardsCalculatorFactoryConfig"/>.
 /// Sets a <see cref="TestMacroStabilityInwardsCalculatorFactory"/> to
 /// <see cref="MacroStabilityInwardsCalculatorFactory.Instance"/>
 /// </summary>
 public MacroStabilityInwardsCalculatorFactoryConfig()
 {
     previousFactory = MacroStabilityInwardsCalculatorFactory.Instance;
     MacroStabilityInwardsCalculatorFactory.Instance = new TestMacroStabilityInwardsCalculatorFactory();
 }