Skip to content

Bad state: No element when using min long value #814

Open
@xVemu

Description

@xVemu

Strange things happen when you try to use longs minimum as the default value in constructor.
When u write it in decimal format, build runner throws Bad state: No element error, but when u use hexadecimal everything is alright.

Code sample
import 'package:mockito/annotations.dart';
import 'widget_test.mocks.dart';

@GenerateNiceMocks([MockSpec<Test>()])
void main() {
}

class Test {
  final int id;

  Test({this.id = -9223372036854775808}); // 0 works, -0x8000000000000000 works, -9223372036854775808 fails
}
Build runner logs
[INFO] Generating build script completed, took 124ms
[INFO] Reading cached asset graph completed, took 47ms
[INFO] Checking for updates since last build completed, took 461ms
[SEVERE] mockito:mockBuilder on test/widget_test.dart:

Bad state: No element
dart:core                                               List.first
package:source_gen/src/constants/revive.dart 107:21     reviveInstance
package:source_gen/src/constants/reader.dart 278:25     _DartObjectConstant.revive
package:mockito/src/builder.dart 448:34                 _TypeVisitor._addTypesFromConstant
package:mockito/src/builder.dart 340:7                  _TypeVisitor.visitFormalParameterElement
package:analyzer/src/dart/element/element.dart 4894:20  FormalParameterElementImpl.accept2
package:analyzer/src/dart/element/element.dart 1914:13  ConstructorElementImpl2.visitChildren2
package:analyzer/dart/element/visitor2.dart 211:13      RecursiveElementVisitor2.visitConstructorElement
package:analyzer/src/dart/element/element.dart 1902:20  ConstructorElementImpl2.accept2
package:analyzer/src/dart/element/element.dart 6172:13  InstanceElementImpl2.visitChildren2
package:analyzer/dart/element/visitor2.dart 205:13      RecursiveElementVisitor2.visitClassElement
package:mockito/src/builder.dart 309:11                 _TypeVisitor.visitClassElement
package:analyzer/src/dart/element/element.dart 885:20   ClassElementImpl2.accept2
package:mockito/src/builder.dart 206:22                 MockBuilder._resolveAssetUris.addTypesFrom
package:mockito/src/builder.dart 219:7                  MockBuilder._resolveAssetUris
package:mockito/src/builder.dart 97:29                  MockBuilder.build

[INFO] Running build completed, took 299ms
[INFO] Caching finalized dependency graph completed, took 62ms
[SEVERE] Failed after 365ms

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions