test/repo_test.rb in docurium-0.3.2 vs test/repo_test.rb in docurium-0.4.0

- old
+ new

@@ -28,12 +28,11 @@ index.add(:path => rel_path, :oid => id, :mode => 0100644) end @path = File.dirname(__FILE__) + '/fixtures/git2/api.docurium' @doc = Docurium.new(@path, @repo) - @doc.parse_headers(index) - @data = @doc.data + @data = @doc.parse_headers(index, 'HEAD') end def teardown FileUtils.remove_entry(@dir) end @@ -43,10 +42,11 @@ assert_equal ['files', 'functions', 'globals', 'groups', 'prefix', 'types'], keys assert_equal 153, @data[:functions].size end def test_can_extract_enum_from_define + skip("this isn't something we do") assert_equal 41, @data[:globals].size idxentry = @data[:types].find { |a| a[0] == 'GIT_IDXENTRY' } assert idxentry assert_equal 75, idxentry[1][:lineto] # this one is on the last doc block @@ -54,10 +54,11 @@ # from an earlier block, should not get overwritten assert idxentry[1][:block].include? 'GIT_IDXENTRY_UPDATE' end def test_can_extract_structs_and_enums + skip("we don't auto-create enums, so the number is wrong") assert_equal 25, @data[:types].size end def test_can_find_type_usage oid = @data[:types].assoc('git_oid') @@ -67,11 +68,11 @@ def test_can_parse_normal_functions func = @data[:functions]['git_blob_rawcontent'] assert_equal "<p>Get a read-only buffer with the raw content of a blob.</p>\n", func[:description] assert_equal 'const void *', func[:return][:type] - assert_equal 'the pointer; NULL if the blob has no contents', func[:return][:comment] + assert_equal ' the pointer; NULL if the blob has no contents', func[:return][:comment] assert_equal 84, func[:line] assert_equal 84, func[:lineto] assert_equal 'blob.h', func[:file] assert_equal 'git_blob *blob',func[:argline] assert_equal 'blob', func[:args][0][:name] @@ -80,22 +81,22 @@ end def test_can_parse_defined_functions func = @data[:functions]['git_tree_lookup'] assert_equal 'int', func[:return][:type] - assert_equal '0 on success; error code otherwise', func[:return][:comment] + assert_equal ' 0 on success; error code otherwise', func[:return][:comment] assert_equal 50, func[:line] assert_equal 'tree.h', func[:file] assert_equal 'id', func[:args][2][:name] assert_equal 'const git_oid *', func[:args][2][:type] assert_equal 'identity of the tree to locate.', func[:args][2][:comment] end def test_can_parse_function_cast_args func = @data[:functions]['git_reference_listcb'] assert_equal 'int', func[:return][:type] - assert_equal '0 on success; error code otherwise', func[:return][:comment] + assert_equal ' 0 on success; error code otherwise', func[:return][:comment] assert_equal 321, func[:line] assert_equal 'refs.h', func[:file] assert_equal 'repo', func[:args][0][:name] assert_equal 'git_repository *', func[:args][0][:type] assert_equal 'list_flags', func[:args][1][:name] @@ -106,17 +107,24 @@ assert_equal 8, func[:comments].split("\n").size end def test_can_get_the_full_description_from_multi_liners func = @data[:functions]['git_commit_create_o'] - desc = "<p>Create a new commit in the repository using <code>git_object</code>\ninstances as parameters.</p>\n" + desc = "<p>Create a new commit in the repository using <code>git_object</code>\n instances as parameters.</p>\n" assert_equal desc, func[:description] end def test_can_group_functions assert_equal 14, @data[:groups].size group, funcs = @data[:groups].first assert_equal 'blob', group assert_equal 6, funcs.size + end + + def test_can_store_mutliple_enum_doc_sections + skip("this isn't something we do") + idxentry = @data[:types].find { |a| a[0] == 'GIT_IDXENTRY' } + assert idxentry, "GIT_IDXENTRY did not get automatically created" + assert_equal 2, idxentry[1][:sections].size end end