示例#1
0
        public void ToSingleton()
        {
            Requires.ValidOperation(Values != null, this, nameof(Values));

            var value            = Values?.First();
            var instanceProvider = value as IInstanceProvider;

            instanceProvider = new InstanceProviderSingleton(instanceProvider);
            RemoveAllValues();
            var unused = base.To(instanceProvider);
        }
    public void InstanceProviderSingleton_GetInstance()
    {
        // Arrange
        var expected     = new Test();
        var testProvider = new TestProvider(expected);

        // Act
        var provider = new InstanceProviderSingleton(testProvider);
        var actual1  = provider.GetInstance();
        var actual2  = provider.GetInstance();

        //Assert
        Assert.AreEqual(expected, actual1);
        Assert.AreEqual(expected, actual2);
    }
    public void InstanceProviderSingleton_Constructor_Exception()
    {
        // Arrange
        var actual = false;

        // Act
        try
        {
            var unused = new InstanceProviderSingleton(null);
        }
        catch (ArgumentNullException)
        {
            actual = true;
        }

        //Assert
        Assert.IsTrue(actual);
    }