forked from xamarin/Xamarin.Forms
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathSwitchCellTests.cs
63 lines (51 loc) · 1.46 KB
/
SwitchCellTests.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
using System;
using NUnit.Framework;
using NUnit.Framework.Constraints;
namespace Xamarin.Forms.Core.UnitTests
{
[TestFixture]
public class SwitchCellTemplateTests : BaseTestFixture
{
[Test]
public void Create()
{
var template = new DataTemplate(typeof(SwitchCell));
var content = template.CreateContent();
Assert.That(content, Is.InstanceOf<SwitchCell>());
}
[Test]
public void Text()
{
var template = new DataTemplate(typeof(SwitchCell));
template.SetValue(SwitchCell.TextProperty, "text");
SwitchCell cell = (SwitchCell)template.CreateContent();
Assert.That(cell.Text, Is.EqualTo("text"));
}
[Test]
public void On()
{
var template = new DataTemplate(typeof(SwitchCell));
template.SetValue(SwitchCell.OnProperty, true);
SwitchCell cell = (SwitchCell)template.CreateContent();
Assert.That(cell.On, Is.EqualTo(true));
}
[TestCase(false, true)]
[TestCase(true, false)]
public void SwitchCellSwitchChangedArgs(bool initialValue, bool finalValue)
{
var template = new DataTemplate(typeof(SwitchCell));
SwitchCell cell = (SwitchCell)template.CreateContent();
SwitchCell switchCellFromSender = null;
bool newSwitchValue = false;
cell.On = initialValue;
cell.OnChanged += (s, e) =>
{
switchCellFromSender = (SwitchCell)s;
newSwitchValue = e.Value;
};
cell.On = finalValue;
Assert.AreEqual(cell, switchCellFromSender);
Assert.AreEqual(finalValue, newSwitchValue);
}
}
}