Skip to content
Original file line number Diff line number Diff line change
@@ -1,14 +1,10 @@
// Ignore Spelling: color

using System.ComponentModel;

namespace CommunityToolkit.Maui.Core;
namespace CommunityToolkit.Maui.Core;

/// <summary>Default Values for RatingView</summary>
static class RatingViewDefaults
{
/// <summary>Default rating value.</summary>
public const double DefaultRating = 0.0;
public const double Rating = 0.0;

/// <summary>Default view element read only.</summary>
public const bool IsReadOnly = false;
Expand All @@ -28,6 +24,12 @@ static class RatingViewDefaults
/// <summary>Default spacing between ratings.</summary>
public const double Spacing = 10.0;

/// <summary>Default rating shape.</summary>
public const RatingViewShape Shape = RatingViewShape.Star;

/// <summary>Default Fill Option</summary>
public const RatingViewFillOption FillWhenTapped = RatingViewFillOption.Shape;

/// <summary>Default color for an empty rating.</summary>
public static Color EmptyShapeColor { get; } = Colors.Transparent;

Expand All @@ -37,9 +39,6 @@ static class RatingViewDefaults
/// <summary>Default rating item padding.</summary>
public static Thickness ShapePadding { get; } = new(0);

/// <summary>Default rating shape.</summary>
public static RatingViewShape Shape { get; } = RatingViewShape.Star;

/// <summary>Default border color for a rating shape.</summary>
public static Color ShapeBorderColor { get; } = Colors.Grey;
}
Original file line number Diff line number Diff line change
Expand Up @@ -37,4 +37,4 @@ public Task GenerateBindableProperty_NestedClass_GeneratesCorrectCode()
[Benchmark]
public Task GenerateBindableProperty_WithComplexDefaultValues_GeneratesCorrectCode()
=> edgeCaseTests.GenerateBindableProperty_WithComplexDefaultValues_GeneratesCorrectCode();
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,4 @@ public static void Main(string[] args)
var config = DefaultConfig.Instance;
BenchmarkRunner.Run<BindablePropertyAttributeSourceGeneratorBenchmarks>(config, args);
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -29,9 +29,9 @@ public static string GetNamedTypeArgumentsAttributeValueByNameAsCastedString(thi
return $"({data.Type}){members[(int)data.Value]}";
}

if(data.Type?.SpecialType is SpecialType.System_String)
if (data.Type?.SpecialType is SpecialType.System_String)
{
return data.Value is null ? $"\"{placeholder}\"": $"({data.Type})\"{data.Value}\"";
return data.Value is null ? $"\"{placeholder}\"" : $"({data.Type})\"{data.Value}\"";
}

if (data.Type?.SpecialType is SpecialType.System_Char)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ private set

public void Dispose()
{

}

public Task RefreshAvailableCameras(CancellationToken token)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ public void Defaults_ShapeDefaultsApplied()
public void Defaults_ShouldHaveCorrectDefaultProperties()
{
RatingView ratingView = new();
ratingView.Rating.Should().Be(RatingViewDefaults.DefaultRating);
ratingView.Rating.Should().Be(RatingViewDefaults.Rating);
ratingView.EmptyShapeColor.Should().BeOfType<Color>().And.Be(RatingViewDefaults.EmptyShapeColor);
ratingView.FillColor.Should().BeOfType<Color>().And.Be(RatingViewDefaults.FillColor);
ratingView.IsReadOnly.Should().BeFalse().And.Be(RatingViewDefaults.IsReadOnly);
Expand Down Expand Up @@ -170,7 +170,7 @@ public void Events_RatingChanged_ShouldBeRaised_RatingPropertyChanged_NotReadOnl
{
const double currentRating = 3.5;
RatingView ratingView = new();
ratingView.Rating.Should().Be(RatingViewDefaults.DefaultRating);
ratingView.Rating.Should().Be(RatingViewDefaults.Rating);
var signaled = false;
ratingView.RatingChanged += (sender, e) => signaled = true;
ratingView.Rating = currentRating;
Expand Down Expand Up @@ -621,24 +621,6 @@ public void Properties_MaximumRating_NumberOfChildrenLower()
ratingView.RatingLayout.Count.Should().Be(minMaximumRating);
}

[Fact]
public void Properties_MaximumRating_Validator()
{
RatingView ratingView = new();
RatingView.MaximumRatingProperty.ValidateValue(ratingView, 0).Should().BeFalse();
RatingView.MaximumRatingProperty.ValidateValue(ratingView, RatingViewDefaults.MaximumRatingLimit + 1).Should().BeFalse();
RatingView.MaximumRatingProperty.ValidateValue(ratingView, 1).Should().BeTrue();
}

[Fact]
public void Properties_Rating_Validator()
{
RatingView ratingView = new();
RatingView.RatingProperty.ValidateValue(ratingView, -1.0).Should().BeFalse();
RatingView.RatingProperty.ValidateValue(ratingView, (double)(RatingViewDefaults.MaximumRatingLimit + 1)).Should().BeFalse();
RatingView.RatingProperty.ValidateValue(ratingView, 0.1).Should().BeTrue();
}

[Fact]
public void RatingViewDoesNotThrowsArgumentOutOfRangeExceptionWhenRatingSetBeforeMaximumRating()
{
Expand Down Expand Up @@ -675,7 +657,7 @@ public void RatingViewThrowsInvalidOperationExceptionWhenChildIsNotBorder()
public void RatingViewThrowsArgumentOutOfRangeExceptionWhenOutsideLowerBounds()
{
RatingView ratingView = new();
Assert.Throws<ArgumentOutOfRangeException>(() => ratingView.Rating = 0 - double.Epsilon);
Assert.Throws<ArgumentOutOfRangeException>(() => ratingView.Rating = -1);
}

[Fact]
Expand Down
Loading
Loading