Essa lib depende da global da movidesk window.eventTracker e de informações do usuário encontradas nos cookies
Instalando
yarn add @movidesk/amplitude
Usando a lib
// No entry point da sua aplicaçãoimport{AmplitudeProvider}from"@movidesk/amplitude"render(<AmplitudeProvider><MyApp></AmplitudeProvder>
)
// Dentro de MyApp.jsimport{useAmplitude}from"@movidesk/amplitude"functionMyApp(){consttrack=useAmplitude()return(<ButtononClick={()=>track("MyProduct.MyScreenOrFeature.ClickedButton")}>
Click me
</Button>)}
Testando
import{render,fireEvent}from"@testing-library/react"import{AmplitudeProvider}from"@movidesk/amplitude"import{MyApp}from"./myapp.js"test("calls the track function when the user clicks the button",()=>{constspy=jest.fn()const{ queryByText }=render(<AmplitudeProvidertracker={{trackEvent: spy}}><MyApp/></AmplitudeProvider>)fireEvent.click(queryByText("Click me"))expect(spy).toHaveBeenCalledWith("MyProduct.MyScreenOrFeature.ClickedButton")})