25'ten fazla konu seçemezsiniz Konular bir harf veya rakamla başlamalı, kısa çizgiler ('-') içerebilir ve en fazla 35 karakter uzunluğunda olabilir.
 
 
 
 

70 satır
2.0 KiB

  1. import React from "react"
  2. import expect from "expect"
  3. import { shallow } from "enzyme"
  4. import { fromJS, List } from "immutable"
  5. import ObjectModel from "components/object-model"
  6. import ModelExample from "components/model-example"
  7. import Immutable from "immutable"
  8. import Model from "components/model"
  9. import ModelCollapse from "components/model-collapse"
  10. import { inferSchema } from "corePlugins/samples/fn"
  11. describe("<ObjectModel />", function() {
  12. const dummyComponent = () => null
  13. const components = {
  14. "JumpToPath" : dummyComponent,
  15. "Markdown" : dummyComponent,
  16. "Model" : Model,
  17. "ModelCollapse" : ModelCollapse
  18. }
  19. const props = {
  20. getComponent: c => components[c],
  21. getConfigs: () => {
  22. return {
  23. showExtensions: true
  24. }
  25. },
  26. isRef : false,
  27. specPath: List(),
  28. schema: Immutable.fromJS(
  29. {
  30. "properties": {
  31. // Note reverse order: c, b, a
  32. c: {
  33. type: "integer",
  34. name: "c"
  35. },
  36. b: {
  37. type: "boolean",
  38. name: "b"
  39. },
  40. a: {
  41. type: "string",
  42. name: "a"
  43. }
  44. }
  45. }
  46. ),
  47. specSelectors: {
  48. isOAS3(){
  49. return false
  50. }
  51. },
  52. className: "for-test"
  53. }
  54. it("renders a collapsible header", function(){
  55. const wrapper = shallow(<ObjectModel {...props}/>)
  56. const renderedModelCollapse = wrapper.find(ModelCollapse)
  57. expect(renderedModelCollapse.length).toEqual(1)
  58. })
  59. it("renders the object properties in order", function() {
  60. const wrapper = shallow(<ObjectModel {...props}/>)
  61. const renderedModel = wrapper.find(Model)
  62. expect(renderedModel.length).toEqual(3)
  63. expect(renderedModel.get(0).props.schema.get("name")).toEqual("c")
  64. expect(renderedModel.get(1).props.schema.get("name")).toEqual("b")
  65. expect(renderedModel.get(2).props.schema.get("name")).toEqual("a")
  66. })
  67. })