Skip to content
This repository was archived by the owner on May 1, 2024. It is now read-only.

Don't thrown when tap/selected is null, return null. For deselect. #950

Merged
merged 1 commit into from
Feb 22, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,10 @@ public class ItemSelectedEventArgsConverter_Tests
{
// We know it's deprecated, still good to test it
#pragma warning disable CS0618 // Type or member is obsolete
new object[] { new SelectedItemChangedEventArgs(expectedValue), expectedValue},
new object[] { new SelectedItemChangedEventArgs(expectedValue), expectedValue },
new object[] { null, null },
#pragma warning restore CS0618 // Type or member is obsolete
};
};

[Theory]
[MemberData(nameof(GetData))]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,10 @@ public class ItemTappedEventArgsConverter_Tests
{
// We know it's deprecated, still good to test it
#pragma warning disable CS0618 // Type or member is obsolete
new object[] { new ItemTappedEventArgs(null, expectedValue), expectedValue},
new object[] { new ItemTappedEventArgs(null, expectedValue), expectedValue },
new object[] { new ItemTappedEventArgs(null, null), null },
#pragma warning restore CS0618 // Type or member is obsolete
};
};

[Theory]
[MemberData(nameof(GetData))]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,14 @@ public class ItemSelectedEventArgsConverter : ValueConverterExtension, IValueCon
/// <param name="culture">The culture to use in the converter. This is not implemented.</param>
/// <returns>A <see cref="SelectedItemChangedEventArgs.SelectedItem"/> object from object of type <see cref="SelectedItemChangedEventArgs"/>.</returns>
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
=> value is SelectedItemChangedEventArgs selectedItemChangedEventArgs
{
if (value == null)
return null;

return value is SelectedItemChangedEventArgs selectedItemChangedEventArgs
? selectedItemChangedEventArgs.SelectedItem
: throw new ArgumentException("Expected value to be of type SelectedItemChangedEventArgs", nameof(value));
}

/// <summary>
/// This method is not implemented and will throw a <see cref="NotImplementedException"/>.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,14 @@ public class ItemTappedEventArgsConverter : ValueConverterExtension, IValueConve
/// <param name="culture">The culture to use in the converter. This is not implemented.</param>
/// <returns>A <see cref="ItemTappedEventArgs.Item"/> object from object of type <see cref="ItemTappedEventArgs"/>.</returns>
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
=> value is ItemTappedEventArgs itemTappedEventArgs
{
if (value == null)
return null;

return value is ItemTappedEventArgs itemTappedEventArgs
? itemTappedEventArgs.Item
: throw new ArgumentException("Expected value to be of type ItemTappedEventArgs", nameof(value));
}

/// <summary>
/// This method is not implemented and will throw a <see cref="NotImplementedException"/>.
Expand Down