diff --git a/src/main/index.js b/src/main/index.js
index 51a461d..70a1437 100644
--- a/src/main/index.js
+++ b/src/main/index.js
@@ -18,6 +18,8 @@ let mainWindow
const width = 640
const height = 450
+app.allowRendererProcessReuse = true
+
const createWindow = async () => {
const isDarkMode = nativeTheme.shouldUseDarkColors
diff --git a/tests/Providers.test.jsx b/tests/Providers.test.jsx
index 6a78086..893b978 100644
--- a/tests/Providers.test.jsx
+++ b/tests/Providers.test.jsx
@@ -1,22 +1,47 @@
import React from 'react'
-import { render, waitForElement } from '@testing-library/react'
+import {
+ render,
+ waitForElement,
+ waitForElementToBeRemoved,
+ fireEvent
+} from '@testing-library/react'
import AppProvider from '../src/renderer/store/AppProvider'
import PriceProvider from '../src/renderer/store/PriceProvider'
-import { PriceContext } from '../src/renderer/store/createContext'
+import { PriceContext, AppContext } from '../src/renderer/store/createContext'
import { priceContext } from './__fixtures__/context'
describe('Providers', () => {
- it('PriceProvider', async () => {
- const { getByText } = render(Hello)
- await waitForElement(() => getByText('Hello'))
+ describe('PriceProvider', () => {
+ it('renders without crashing', async () => {
+ const { getByText } = render(
+
+
+ {({ priceChanges }) => JSON.stringify(priceChanges)}
+
+
+ )
+ await waitForElementToBeRemoved(() => getByText(/"eur":0/))
+ expect(getByText(/eur/)).toBeInTheDocument()
+ })
})
- it('AppProvider', async () => {
- const { getByText } = render(
-
- Hello
-
- )
- await waitForElement(() => getByText('Hello'))
+ describe('AppProvider', () => {
+ it('renders without crashing', async () => {
+ const { getByText } = render(
+
+
+
+ {({ toggleCurrencies }) => (
+
+ )}
+
+
+
+ )
+ await waitForElement(() => getByText('Click'))
+ expect(getByText('Click')).toBeInTheDocument()
+
+ fireEvent.click(getByText('Click'))
+ })
})
})