Current section

Files

Jump to
excoveralls lib excoveralls sub_apps.ex
Raw

lib/excoveralls/sub_apps.ex

defmodule ExCoveralls.SubApps do
@moduledoc """
Handles information of sub apps of umbrella projects.
"""
def find(sub_apps, compile_path) do
Enum.find(sub_apps, {nil, nil}, fn({_sub_app, path}) ->
String.starts_with?(compile_path, path)
end)
end
def parse(deps) do
deps
|> Enum.map(&({&1.app, &1.opts[:build]}))
|> Enum.sort(fn ({_app1, build_path1}, {_app2, build_path2}) ->
# sort the longest paths first to avoid matching a path that contains another
# example "./apps/myapp_server" would contain path "./apps/myapp"
String.length(build_path1) > String.length(build_path2)
end)
end
end