Esempio n. 1
0
        public void TestInterfaceMappings()
        {
            var adjustments = new AudioAdjustments();

            Assert.AreEqual(adjustments.AggregateVolume, adjustments.GetAggregate(AdjustableProperty.Volume));
            Assert.AreEqual(adjustments.AggregateBalance, adjustments.GetAggregate(AdjustableProperty.Balance));
            Assert.AreEqual(adjustments.AggregateFrequency, adjustments.GetAggregate(AdjustableProperty.Frequency));
            Assert.AreEqual(adjustments.AggregateTempo, adjustments.GetAggregate(AdjustableProperty.Tempo));
        }
Esempio n. 2
0
        public void TestMultiplicativeComponent(AdjustableProperty type)
        {
            var adjustments = new AudioAdjustments();

            adjustments.AddAdjustment(type, new BindableDouble(0.5));
            adjustments.AddAdjustment(type, new BindableDouble(0.5));

            Assert.AreEqual(0.25, adjustments.GetAggregate(type).Value);
        }
Esempio n. 3
0
        public void TestRemoveAllAdjustmentsPreservesInternalBinding()
        {
            var adjustments = new AudioAdjustments();

            adjustments.RemoveAllAdjustments(AdjustableProperty.Volume);

            adjustments.Volume.Value = 0.5;

            Assert.AreEqual(0.5, adjustments.GetAggregate(AdjustableProperty.Volume).Value);
        }
Esempio n. 4
0
        public void TestAddAdjustment([Values] AdjustableProperty type)
        {
            var adjustments = new AudioAdjustments();

            Assert.IsTrue(adjustments.GetAggregate(type).IsDefault);

            adjustments.AddAdjustment(type, new BindableDouble(0.5));

            Assert.IsFalse(adjustments.GetAggregate(type).IsDefault);
        }
Esempio n. 5
0
        public void TestAdjustBoundComponentAfterBind()
        {
            var adjustments  = new AudioAdjustments();
            var adjustments2 = new AudioAdjustments();

            adjustments.BindAdjustments(adjustments2);

            adjustments2.Volume.Value = 0.5f;

            Assert.AreEqual(0.5, adjustments.AggregateVolume.Value);
        }
Esempio n. 6
0
        public void TestAdjustLocalBindable()
        {
            var adjustments = new AudioAdjustments();

            Assert.AreEqual(1.0, adjustments.Volume.Value);
            Assert.AreEqual(1.0, adjustments.AggregateVolume.Value);

            adjustments.Volume.Value = 0.5d;

            Assert.AreEqual(0.5, adjustments.Volume.Value);
            Assert.AreEqual(0.5, adjustments.AggregateVolume.Value);
        }
Esempio n. 7
0
        public void TestRemoveAllAdjustmentsRemovesExternalBindings([Values] AdjustableProperty type)
        {
            var adjustments = new AudioAdjustments();

            Assert.IsTrue(adjustments.GetAggregate(type).IsDefault);

            adjustments.AddAdjustment(type, new BindableDouble(0.5));
            adjustments.AddAdjustment(type, new BindableDouble(0.5));

            adjustments.RemoveAllAdjustments(type);

            Assert.IsTrue(adjustments.GetAggregate(type).IsDefault);
        }
Esempio n. 8
0
        public void TestBoundComponentScopeLost()
        {
            var adjustments = new AudioAdjustments();

            bindWithoutScope(adjustments);

            GC.Collect();

            adjustments.Volume.Value = 0.5;

            // would be 0.25 if the weak reference wasn't working.
            Assert.AreEqual(0.5, adjustments.AggregateVolume.Value);
        }
Esempio n. 9
0
        public void TestValueRestoredAfterComponentUnind()
        {
            var adjustments  = new AudioAdjustments();
            var adjustments2 = new AudioAdjustments();

            adjustments.BindAdjustments(adjustments2);

            adjustments2.Volume.Value = 0.5f;

            adjustments.UnbindAdjustments(adjustments2);

            Assert.AreEqual(1.0, adjustments.AggregateVolume.Value);
        }
Esempio n. 10
0
        public void TestAdjustBoundBindable()
        {
            var adjustments      = new AudioAdjustments();
            var volumeAdjustment = new BindableDouble(0.5);

            adjustments.AddAdjustment(AdjustableProperty.Volume, volumeAdjustment);

            Assert.AreEqual(1.0, adjustments.Volume.Value);
            Assert.AreEqual(0.5, adjustments.AggregateVolume.Value);

            volumeAdjustment.Value = 0.25;

            Assert.AreEqual(1.0, adjustments.Volume.Value);
            Assert.AreEqual(0.25, adjustments.AggregateVolume.Value);
        }
Esempio n. 11
0
        public void TestAdjustBoundComponentBeforeBind()
        {
            var adjustments = new AudioAdjustments();

            var adjustments2 = new AudioAdjustments
            {
                Volume =
                {
                    Value = 0.5f
                }
            };

            adjustments.BindAdjustments(adjustments2);

            Assert.AreEqual(0.5, adjustments.AggregateVolume.Value);
        }
Esempio n. 12
0
 private void bindWithoutScope(AudioAdjustments adjustments)
 {
     adjustments.BindAdjustments(new AudioAdjustments {
         Volume = { Value = 0.5 }
     });
 }