Commit 90017446 authored by Rene Saarsoo's avatar Rene Saarsoo
Browse files

Fix enum type of alias.* enums.

parent 9314af2c
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -18,9 +18,9 @@ module JsDuck

    # processes single class
    def process(cls)
      cls[:enum][:type] = infer_type(cls) unless cls[:enum][:type]
      expand_default(cls)
      strip_inheritdoc(cls)
      cls[:enum][:type] = infer_type(cls) unless cls[:enum][:type]
    end

    # Given an enum class, returns the type infered from its values.
+8 −2
Original line number Diff line number Diff line
@@ -225,8 +225,8 @@ describe JsDuck::Aggregator do
  end

  describe "enum of widget.*" do
    let(:props) do
      parse(<<-EOS)[0][:members][:property]
    let(:doc) do
      parse(<<-EOS)[0]
        /** @enum [xtype=widget.*] */
        /** @class Form @alias widget.form */
        /** @class Button @alias widget.button */
@@ -234,6 +234,12 @@ describe JsDuck::Aggregator do
      EOS
    end

    it "detects enum type as String" do
      doc[:enum][:type].should == "String"
    end

    let(:props) { doc[:members][:property] }

    it "gathers all 3 widget.* aliases" do
      props.length.should == 3
    end