Compare commits

..

2 commits

Author SHA1 Message Date
Vadim
ec1f1eeeb4 Fixed release creation workflow 2024-04-19 17:03:45 +02:00
Vadim
6dd17961b5 Fixed Android screenshots generator 2024-04-19 16:59:00 +02:00
4 changed files with 51 additions and 46 deletions

View file

@ -87,11 +87,6 @@ jobs:
with:
submodules: recursive
- name: Download apk
uses: actions/download-artifact@v3
with:
name: m3_lightmeter_apk
- name: Increment build number & replace version number
run: bash ./.github/scripts/increment_build_number.sh ${{ github.event.inputs.version }}
@ -109,6 +104,11 @@ jobs:
branch: ${{ github.ref_name }}
unprotect_reviews: true
- name: Download apk
uses: actions/download-artifact@v3
with:
name: m3_lightmeter_apk
- name: Rename apk
run: mv app-prod-release.apk m3_lightmeter.apk

Binary file not shown.

View file

@ -46,7 +46,7 @@ class _MockIAPProvidersState extends State<MockIAPProviders> {
storageService: mockIAPStorageService,
child: FilmsProvider(
storageService: mockIAPStorageService,
availableFilms: mockFilms,
availableFilms: widget.films ?? mockFilms,
child: widget.child,
),
);

View file

@ -22,6 +22,8 @@ import '../integration_test/utils/widget_tester_actions.dart';
//https://stackoverflow.com/a/67186625/13167574
const _mockFilm = Film('Ilford HP5+', 400);
/// Just a screenshot generator. No expectations here.
void main() {
final binding = IntegrationTestWidgetsFlutterBinding();
@ -62,12 +64,17 @@ void main() {
});
}
setUpAll(() async {
if (Platform.isAndroid) await binding.convertFlutterSurfaceToImage();
});
/// Generates several screenshots with the light theme
testWidgets(
'Generate light theme screenshots',
(tester) async {
testWidgets('Generate light theme screenshots', (tester) async {
mockSharedPrefs(ThemeType.light, lightThemeColor);
await tester.pumpApplication();
await tester.pumpApplication(
films: [_mockFilm],
selectedFilm: _mockFilm,
);
await tester.takePhoto();
await tester.takeScreenshot(binding, 'light-metering_reflected');
@ -100,15 +107,17 @@ void main() {
await tester.tap(find.byIcon(Icons.iso).first);
await tester.pumpAndSettle();
await tester.takeScreenshot(binding, 'light-equipment_profiles_iso_picker');
}
);
});
/// and the additionally the first one with the dark theme
testWidgets(
'Generate dark theme screenshots',
(tester) async {
mockSharedPrefs(ThemeType.dark, darkThemeColor);
await tester.pumpApplication();
await tester.pumpApplication(
films: [_mockFilm],
selectedFilm: _mockFilm,
);
await tester.takePhoto();
await tester.takeScreenshot(binding, 'dark-metering_reflected');
@ -127,10 +136,6 @@ final String _platformFolder = Platform.isAndroid ? 'android' : 'ios';
extension on WidgetTester {
Future<void> takeScreenshot(IntegrationTestWidgetsFlutterBinding binding, String name) async {
if (Platform.isAndroid) {
await binding.convertFlutterSurfaceToImage();
await pumpAndSettle();
}
await binding.takeScreenshot("$_platformFolder/${const String.fromEnvironment('deviceName')}/$name");
await pumpAndSettle();
}