mirror of https://github.com/flutter/pinball.git
parent
18a45a483f
commit
be0d1e2ef0
@ -0,0 +1,20 @@
|
|||||||
|
import 'package:equatable/equatable.dart';
|
||||||
|
import 'package:leaderboard_repository/leaderboard_repository.dart';
|
||||||
|
|
||||||
|
/// {@template leaderboard_ranking}
|
||||||
|
/// Contains [ranking] for a single [LeaderboardEntry] and the number of players
|
||||||
|
/// the [ranking] is [outOf].
|
||||||
|
/// {@endtemplate}
|
||||||
|
class LeaderboardRanking extends Equatable {
|
||||||
|
/// {@macro leaderboard_ranking}
|
||||||
|
const LeaderboardRanking({required this.ranking, required this.outOf});
|
||||||
|
|
||||||
|
/// Place ranking by score for a [LeaderboardEntry].
|
||||||
|
final int ranking;
|
||||||
|
|
||||||
|
/// Number of [LeaderboardEntry]s at the time of score entry.
|
||||||
|
final int outOf;
|
||||||
|
|
||||||
|
@override
|
||||||
|
List<Object> get props => [ranking, outOf];
|
||||||
|
}
|
@ -1 +1,2 @@
|
|||||||
export 'leaderboard_entry.dart';
|
export 'leaderboard_entry.dart';
|
||||||
|
export 'leaderboard_ranking.dart';
|
||||||
|
@ -0,0 +1,19 @@
|
|||||||
|
import 'package:leaderboard_repository/leaderboard_repository.dart';
|
||||||
|
import 'package:test/test.dart';
|
||||||
|
|
||||||
|
void main() {
|
||||||
|
group('LeaderboardRanking', () {
|
||||||
|
test('can be instantiated', () {
|
||||||
|
const leaderboardRanking = LeaderboardRanking(ranking: 1, outOf: 1);
|
||||||
|
|
||||||
|
expect(leaderboardRanking, isNotNull);
|
||||||
|
});
|
||||||
|
|
||||||
|
test('supports value equality.', () {
|
||||||
|
const leaderboardRanking = LeaderboardRanking(ranking: 1, outOf: 1);
|
||||||
|
const leaderboardRanking2 = LeaderboardRanking(ranking: 1, outOf: 1);
|
||||||
|
|
||||||
|
expect(leaderboardRanking, equals(leaderboardRanking2));
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
Loading…
Reference in new issue