J'essaie de tester une fonction qui effectue un appel API et enregistre ces données dans des préférences partagées. Je me moque de mon appel API, mais dans cette fonction, lorsque j'essaye d'obtenir une instance de préférences partagées, j'obtiens cette erreur:
MissingPluginException (Aucune implémentation trouvée pour la méthode getAll sur le canal plugins.flutter.io/shared_preferences)
Ceci est mon code de cas de test.
main() { // setup group("Login", () { setUp(() { flutterTest.TestWidgetsFlutterBinding.ensureInitialized(); }); test("Valid Creds Login", () async { final validRes = ExpectedResponses.login(); final client = MockClient((request) async { final res = json.encode(validRes); return Response(res, 200); }); ApiController.init(client); final user = await ApiController.login( email: "abc@gmail.com", password: "12345678"); expectAsync0(() { expect(user.id, "1763"); }); }, skip: false); }); }
3 Réponses :
Dans mon cas, cette erreur a été résolue par la commande Flutter Clean sur le terminal.
Le code ci-dessous fonctionne parfaitement dans mon projet Android.
class MainActivity : FlutterActivity() { override fun configureFlutterEngine(@NonNull flutterEngine: FlutterEngine) { GeneratedPluginRegistrant.registerWith(flutterEngine) } }
est-ce que cela aide? stackoverflow.com/questions/44357053/...
Non. Mon problème est lié à l'enregistrement des valeurs dans SharedPreferences.
Avez-vous entièrement reconstruit votre application depuis l'installation du package SharedPreferences? Quelle version du package et de Flutter utilisez-vous?
J'exécute un test unitaire pour cela, dans l'application réelle, il fonctionne bien. Préférences partagées: 0.5.6 | Flutter: 1.12.13 + hotfix.6
Est-ce que cela répond à votre question? Exception non gérée: MissingPluginException (aucune implémentation trouvée pour la méthode getAll sur le canal plugins.flutter.io/ pour de nombreux packages sur Flutter
Cela m'a aidé stackoverflow.com/questions/44357053/...