Loading lib/jsduck/old_versions.rb +6 −3 Original line number Diff line number Diff line Loading @@ -55,14 +55,17 @@ module JsDuck # classes/members. def generate_since_tags(versions, relations) relations.each do |cls| cls[:meta][:since] = available_since(versions, cls[:name]) cls[:meta][:since] = available_since(versions, cls) end end # Returns name of the version since which the class is available def available_since(versions, class_name) def available_since(versions, cls) versions.each do |ver| return ver[:version] if ver[:classes][class_name] return ver[:version] if ver[:classes][cls[:name]] cls[:alternateClassNames].each do |name| return ver[:version] if ver[:classes][name] end end end Loading spec/old_versions_spec.rb +9 −3 Original line number Diff line number Diff line Loading @@ -13,6 +13,7 @@ describe "JsDuck::OldVersions#generate_since_tags" do :version => "2.0", :classes => { "VeryOldClass" => {}, "OldClass" => {}, "ClassWithOldName" => {}, }, }, { Loading @@ -20,9 +21,10 @@ describe "JsDuck::OldVersions#generate_since_tags" do } ] @relations = [ {:name => "VeryOldClass", :meta => {}}, {:name => "OldClass", :meta => {}}, {:name => "NewClass", :meta => {}}, {:name => "VeryOldClass", :meta => {}, :alternateClassNames => []}, {:name => "OldClass", :meta => {}, :alternateClassNames => []}, {:name => "NewClass", :meta => {}, :alternateClassNames => []}, {:name => "ClassWithNewName", :meta => {}, :alternateClassNames => ["ClassWithOldName"]}, ] JsDuck::OldVersions.generate_since_tags(@versions, @relations) end Loading @@ -39,4 +41,8 @@ describe "JsDuck::OldVersions#generate_since_tags" do @relations[2][:meta][:since].should == "3.0" end it "adds @since 2.0 to ClassWithNewName" do @relations[3][:meta][:since].should == "2.0" end end Loading
lib/jsduck/old_versions.rb +6 −3 Original line number Diff line number Diff line Loading @@ -55,14 +55,17 @@ module JsDuck # classes/members. def generate_since_tags(versions, relations) relations.each do |cls| cls[:meta][:since] = available_since(versions, cls[:name]) cls[:meta][:since] = available_since(versions, cls) end end # Returns name of the version since which the class is available def available_since(versions, class_name) def available_since(versions, cls) versions.each do |ver| return ver[:version] if ver[:classes][class_name] return ver[:version] if ver[:classes][cls[:name]] cls[:alternateClassNames].each do |name| return ver[:version] if ver[:classes][name] end end end Loading
spec/old_versions_spec.rb +9 −3 Original line number Diff line number Diff line Loading @@ -13,6 +13,7 @@ describe "JsDuck::OldVersions#generate_since_tags" do :version => "2.0", :classes => { "VeryOldClass" => {}, "OldClass" => {}, "ClassWithOldName" => {}, }, }, { Loading @@ -20,9 +21,10 @@ describe "JsDuck::OldVersions#generate_since_tags" do } ] @relations = [ {:name => "VeryOldClass", :meta => {}}, {:name => "OldClass", :meta => {}}, {:name => "NewClass", :meta => {}}, {:name => "VeryOldClass", :meta => {}, :alternateClassNames => []}, {:name => "OldClass", :meta => {}, :alternateClassNames => []}, {:name => "NewClass", :meta => {}, :alternateClassNames => []}, {:name => "ClassWithNewName", :meta => {}, :alternateClassNames => ["ClassWithOldName"]}, ] JsDuck::OldVersions.generate_since_tags(@versions, @relations) end Loading @@ -39,4 +41,8 @@ describe "JsDuck::OldVersions#generate_since_tags" do @relations[2][:meta][:since].should == "3.0" end it "adds @since 2.0 to ClassWithNewName" do @relations[3][:meta][:since].should == "2.0" end end