servers-wrapper.jsx 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. import React from "react"
  2. import { mount } from "enzyme"
  3. import { fromJS } from "immutable"
  4. import ServersContainer from "core/plugins/oas3/components/servers-container"
  5. import Servers from "core/plugins/oas3/components/servers"
  6. import { Col } from "components/layout-utils"
  7. describe("<ServersContainer/>", function(){
  8. const components = {
  9. Servers,
  10. Col
  11. }
  12. const mockedProps = {
  13. specSelectors: {
  14. servers() {}
  15. },
  16. oas3Selectors: {
  17. selectedServer() {},
  18. serverVariableValue() {},
  19. serverEffectiveValue() {}
  20. },
  21. oas3Actions: {
  22. setSelectedServer() {},
  23. setServerVariableValue() {}
  24. },
  25. getComponent: c => components[c]
  26. }
  27. it("renders Servers inside ServersContainer if servers are provided", function(){
  28. // Given
  29. let props = {...mockedProps}
  30. props.specSelectors = {...mockedProps.specSelectors}
  31. props.specSelectors.servers = function() {return fromJS([{url: "http://server1.com"}])}
  32. props.oas3Selectors = {...mockedProps.oas3Selectors}
  33. props.oas3Selectors.selectedServer = function() {return "http://server1.com"}
  34. // When
  35. let wrapper = mount(<ServersContainer {...props}/>)
  36. // Then
  37. const renderedServers = wrapper.find(Servers)
  38. expect(renderedServers.length).toEqual(1)
  39. })
  40. it("does not render Servers inside ServersContainer if servers are empty", function(){
  41. // Given
  42. let props = {...mockedProps}
  43. props.specSelectors = {...mockedProps.specSelectors}
  44. props.specSelectors.servers = function() {return fromJS([])}
  45. // When
  46. let wrapper = mount(<ServersContainer {...props}/>)
  47. // Then
  48. const renderedServers = wrapper.find(Servers)
  49. expect(renderedServers.length).toEqual(0)
  50. })
  51. it("does not render Servers inside ServersContainer if servers are undefined", function(){
  52. // Given
  53. let props = {...mockedProps}
  54. // When
  55. let wrapper = mount(<ServersContainer {...props}/>)
  56. // Then
  57. const renderedServers = wrapper.find(Servers)
  58. expect(renderedServers.length).toEqual(0)
  59. })
  60. })