|
|
@ -9,45 +9,48 @@ namespace Perspex.Styling.UnitTests |
|
|
using System; |
|
|
using System; |
|
|
using System.Collections.Generic; |
|
|
using System.Collections.Generic; |
|
|
using System.Linq; |
|
|
using System.Linq; |
|
|
|
|
|
using Perspex.Controls; |
|
|
using Perspex.Styling; |
|
|
using Perspex.Styling; |
|
|
|
|
|
using Xunit; |
|
|
|
|
|
|
|
|
////[TestFixture]
|
|
|
public class SelectorTests_Multiple |
|
|
////public class SelectorTests_Multiple
|
|
|
{ |
|
|
////{
|
|
|
[Fact] |
|
|
//// [Fact]
|
|
|
public void Template_Child_Of_Control_With_Two_Classes() |
|
|
//// public void Template_Child_Of_Control_With_Two_Classes()
|
|
|
{ |
|
|
//// {
|
|
|
var template = new ControlTemplate(parent => |
|
|
//// var template = new ControlTemplate(parent =>
|
|
|
{ |
|
|
//// {
|
|
|
return new Border |
|
|
//// return new Border
|
|
|
{ |
|
|
//// {
|
|
|
Id = "border", |
|
|
//// Id = "border",
|
|
|
}; |
|
|
//// };
|
|
|
}); |
|
|
//// });
|
|
|
|
|
|
|
|
|
var control = new Button |
|
|
//// var control = new Button
|
|
|
{ |
|
|
//// {
|
|
|
Template = template, |
|
|
//// Template = template,
|
|
|
}; |
|
|
//// };
|
|
|
|
|
|
|
|
|
control.ApplyTemplate(); |
|
|
//// var selector = new Selector()
|
|
|
|
|
|
//// .OfType<Button>()
|
|
|
var selector = new Selector() |
|
|
//// .Class("foo")
|
|
|
.OfType<Button>() |
|
|
//// .Class("bar")
|
|
|
.Class("foo") |
|
|
//// .Template()
|
|
|
.Class("bar") |
|
|
//// .Id("border");
|
|
|
.Template() |
|
|
|
|
|
.Id("border"); |
|
|
//// var border = (Border)((IVisual)control).VisualChildren.Single();
|
|
|
|
|
|
//// var values = new List<bool>();
|
|
|
var border = (Border)((IVisual)control).VisualChildren.Single(); |
|
|
//// var activator = selector.GetActivator(border);
|
|
|
var values = new List<bool>(); |
|
|
|
|
|
var activator = selector.GetActivator(border); |
|
|
//// activator.Subscribe(x => values.Add(x));
|
|
|
|
|
|
|
|
|
activator.Subscribe(x => values.Add(x)); |
|
|
//// Assert.Equal(new[] { false }, values);
|
|
|
|
|
|
//// control.Classes.Add("foo", "bar");
|
|
|
Assert.Equal(new[] { false }, values); |
|
|
//// Assert.Equal(new[] { false, true }, values);
|
|
|
control.Classes.Add("foo", "bar"); |
|
|
//// control.Classes.Remove("foo");
|
|
|
Assert.Equal(new[] { false, true }, values); |
|
|
//// Assert.Equal(new[] { false, true, false }, values);
|
|
|
control.Classes.Remove("foo"); |
|
|
//// }
|
|
|
Assert.Equal(new[] { false, true, false }, values); |
|
|
////}
|
|
|
} |
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
|