mirror of
https://github.com/rive-app/rive-flutter.git
synced 2025-05-19 22:36:51 +08:00
51 lines
1.4 KiB
Dart
51 lines
1.4 KiB
Dart
import 'dart:io';
|
|
import 'dart:typed_data';
|
|
|
|
import 'package:flutter_test/flutter_test.dart';
|
|
import 'package:rive/rive.dart';
|
|
|
|
void main() {
|
|
late ByteData multipleArtboardsBytes;
|
|
|
|
void loadTestAssets() {
|
|
multipleArtboardsBytes = ByteData.sublistView(
|
|
File('assets/multiple_artboards_0_6_2.riv').readAsBytesSync());
|
|
}
|
|
|
|
setUp(loadTestAssets);
|
|
|
|
test('Rive files load', () {
|
|
// Create a dummy RiveFile
|
|
RiveFile.import(multipleArtboardsBytes);
|
|
});
|
|
|
|
test('Rive files contain the correct number of artboards', () {
|
|
// Create a dummy RiveFile
|
|
final riveFile = RiveFile.import(multipleArtboardsBytes);
|
|
expect(riveFile.artboards.length, 4);
|
|
});
|
|
|
|
test('A default artboard is available in a Rive file', () {
|
|
// Create a dummy RiveFile
|
|
final riveFile = RiveFile.import(multipleArtboardsBytes);
|
|
expect(riveFile.mainArtboard, isNotNull);
|
|
expect(riveFile.mainArtboard.name, 'Artboard 1');
|
|
});
|
|
|
|
test('Artboards can be retrieved by name', () {
|
|
// Create a dummy RiveFile
|
|
final riveFile = RiveFile.import(multipleArtboardsBytes);
|
|
|
|
var artboard = riveFile.artboardByName('Artboard 1');
|
|
expect(artboard, isNotNull);
|
|
expect(artboard!.name, 'Artboard 1');
|
|
|
|
artboard = riveFile.artboardByName('Artboard 3');
|
|
expect(artboard, isNotNull);
|
|
expect(artboard!.name, 'Artboard 3');
|
|
|
|
artboard = riveFile.artboardByName('Nonexistant');
|
|
expect(artboard, isNull);
|
|
});
|
|
}
|