// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance
// with the License. A copy of the License is located at
//
// http://aws.amazon.com/apache2.0/
//
// or in the "LICENSE.txt" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES
// OR CONDITIONS OF ANY KIND, express or implied. See the License for the specific language governing permissions and
// limitations under the License.
import {render, RenderResult} from '@testing-library/react'
import {HiddenFileUpload} from '../HiddenFileUpload'
/**
* This test is here to make sure that
* users of the component can reset the `open` prop
* after the file selector dialog has been opened.
*
* This is needed as there is no way to intercept
* actual cancel event on the brower's file picker
*
* The test can be removed when this quirk has been resolved.
*/
describe('given a hidden file input field', () => {
let screen: RenderResult
let mockOnDismiss: jest.Mock
let mockOnChange: jest.Mock
describe('when open is set to true', () => {
beforeEach(() => {
mockOnDismiss = jest.fn()
mockOnChange = jest.fn()
screen = render(
,
)
})
it('should call the onDismiss handler', () => {
expect(mockOnDismiss).toHaveBeenCalledTimes(1)
})
})
describe('when open is set to false', () => {
beforeEach(() => {
mockOnDismiss = jest.fn()
mockOnChange = jest.fn()
screen = render(
,
)
})
it('should not call any handler', () => {
expect(mockOnDismiss).toHaveBeenCalledTimes(0)
})
})
})