diff options
-rw-r--r-- | src/rebar_prv_edoc.erl | 5 | ||||
-rw-r--r-- | test/rebar_edoc_SUITE.erl | 10 | ||||
-rw-r--r-- | test/rebar_edoc_SUITE_data/foo/apps/foo/rebar.config | 1 | ||||
-rw-r--r-- | test/rebar_edoc_SUITE_data/foo/rebar.config | 1 |
4 files changed, 15 insertions, 2 deletions
diff --git a/src/rebar_prv_edoc.erl b/src/rebar_prv_edoc.erl index c78296a..5e563ab 100644 --- a/src/rebar_prv_edoc.erl +++ b/src/rebar_prv_edoc.erl @@ -45,7 +45,10 @@ do(State) -> AppName = rebar_utils:to_list(rebar_app_info:name(AppInfo)), ?INFO("Running edoc for ~ts", [AppName]), AppDir = rebar_app_info:dir(AppInfo), - AppRes = (catch edoc:application(list_to_atom(AppName), AppDir, EdocOptsAcc)), + AppOpts = rebar_app_info:opts(AppInfo), + %% order of the merge is important to allow app opts overrides + AppEdocOpts = rebar_opts:get(AppOpts, edoc_opts, []) ++ EdocOptsAcc, + AppRes = (catch edoc:application(list_to_atom(AppName), AppDir, AppEdocOpts)), rebar_hooks:run_all_hooks(Cwd, post, ?PROVIDER, Providers, AppInfo, State), case {AppRes, ShouldAccPaths} of {ok, true} -> diff --git a/test/rebar_edoc_SUITE.erl b/test/rebar_edoc_SUITE.erl index 64ec0c8..2f0fad0 100644 --- a/test/rebar_edoc_SUITE.erl +++ b/test/rebar_edoc_SUITE.erl @@ -52,7 +52,15 @@ multiapp(Config) -> "barer1")), ?assert(file_content_matches( filename:join([AppsDir, "apps", "foo", "doc", "foo.html"]), - "apps/bar1/doc/bar1.html")). + "apps/bar1/doc/bar1.html")), + %% Options such from rebar.config in the app themselves are + %% respected + ?assert(file_content_matches( + filename:join([AppsDir, "apps", "foo", "doc", "overview-summary.html"]), + "foo_custom_title" + )), + ok. + error_survival(Config) -> RebarConfig = [], diff --git a/test/rebar_edoc_SUITE_data/foo/apps/foo/rebar.config b/test/rebar_edoc_SUITE_data/foo/apps/foo/rebar.config new file mode 100644 index 0000000..970d4e2 --- /dev/null +++ b/test/rebar_edoc_SUITE_data/foo/apps/foo/rebar.config @@ -0,0 +1 @@ +{edoc_opts, [{title, "foo_custom_title"}]}. diff --git a/test/rebar_edoc_SUITE_data/foo/rebar.config b/test/rebar_edoc_SUITE_data/foo/rebar.config new file mode 100644 index 0000000..b5d44fa --- /dev/null +++ b/test/rebar_edoc_SUITE_data/foo/rebar.config @@ -0,0 +1 @@ +{edoc_opts, [{title, "forced wrong title to be overridden"}]}. |