// Copyright (c) 2021, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. @TestOn('vm') @Skip('Intended to run in analyze stage on stable SDK only, see mono_pkg.yaml') library; import 'dart:io'; import 'package:pub_semver/pub_semver.dart'; import 'package:pubspec_parse/pubspec_parse.dart'; import 'package:test/test.dart'; void main() { test('dwds pubspec has the stable as min SDK constraint', () { final pubspec = Pubspec.parse(File('pubspec.yaml').readAsStringSync()); var sdkVersion = Version.parse(Platform.version.split(' ')[0]); sdkVersion = Version(sdkVersion.major, sdkVersion.minor, 0); final sdkConstraint = VersionConstraint.compatibleWith(sdkVersion); final pubspecSdkConstraint = pubspec.environment['sdk']; expect(pubspecSdkConstraint, isNotNull); expect( sdkConstraint.allowsAll(pubspecSdkConstraint!), true, reason: 'Min sdk constraint is outdated. Please update SDK constraint in ' 'pubspec to allow latest stable and backwards compatible versions.' '\n Current stable: $sdkVersion,' '\n Dwds pubspec constraint: $pubspecSdkConstraint', ); }); }