# test installing build-deps using netcat and quilt as test victims.
#
# Deps can be discovered like so (taken from ubuntu 12.04)
# ====
# root@localhost:~ # apt-rdepends --build-depends --follow=DEPENDS netcat
# Reading package lists... Done
# Building dependency tree
# Reading state information... Done
# netcat
#   Build-Depends: debhelper (>= 8.0.0)
#   Build-Depends: quilt
# root@localhost:~ #
# ====
# Since many things depend on debhelper, let's just uninstall quilt, then
# install build-dep for netcat to get it back.  build-dep doesn't have an
# uninstall, so we don't need to test for reverse actions (eg, uninstall
# build-dep and ensure things are clean)

# uninstall quilt
- name: check quilt with dpkg
  shell: dpkg -s quilt
  register: dpkg_result
  ignore_errors: true
  tags: ['test_apt_builddep']

- name: uninstall quilt with apt
  apt: pkg=quilt state=absent purge=yes
  register: apt_result
  when: dpkg_result is successful
  tags: ['test_apt_builddep']

# install build-dep for netcat
- name: install netcat build-dep with apt
  apt: pkg=netcat state=build-dep
  register: apt_result
  tags: ['test_apt_builddep']

- name: verify build_dep of netcat
  assert:
    that:
        - "'changed' in apt_result"
  tags: ['test_apt_builddep']

# ensure debhelper and qilt are installed
- name: check build_deps with dpkg
  shell: dpkg --get-selections | egrep '(debhelper|quilt)'
  failed_when: False
  register: dpkg_result
  tags: ['test_apt_builddep']

- name: verify build_deps are really there
  assert:
    that:
        - "dpkg_result.rc == 0"
  tags: ['test_apt_builddep']