---
title: Getting Started
description: Get started with solidart on your repository.
---

# Getting started

Writing tests is simple, if you already know how to test a Flutter app you're almost ready.

If you don't know how to test Flutter apps head hover to [Flutter docs](https://docs.flutter.dev/testing)

Check how I tested the examples that I provided:
- [Testing the counter](/examples/counter#testing)
- [Testing the toggle theme](/examples/toggle-theme#testing)
- [Testing the todos](/examples/todos#testing)

## SolidOverride

The `SolidOverride` widget is a widget that allows you to override the `Solid` providers, regardless of their position in the widget tree.
Here is an example:

```dart
testWidgets(
'SolidOverride overrides providers regardless of the hierarchy',
(tester) async {
  await tester.pumpWidget(
    SolidOverride(
      providers: [
        Provider<Signal<int>>(create: () => Signal(100)),
      ],
      child: MaterialApp(
        home: Solid(
          providers: [
            Provider<Signal<int>>(create: () => Signal(0)),
          ],
          builder: (context) {
            final counter = context.observe<Signal<int>>().value;
            return Text(counter.toString()); // 100
          },
        ),
      ),
    ),
  );
  expect(find.text('100'), findsOneWidget);
});
```

As you can see, the `Signal` provider returned is the overriden one.
This happens because the `SolidOverride` widget is the first place where the provider is searched.
