#!/usr/bin/env bats

@test "Loading ivy loads oni-ivy" {
    run emacs -batch -l package -f package-initialize \
        -l ivy \
        -eval "(prin1 (featurep 'oni-ivy))"

    echo "$output"

    [[ "$output" == *"t" ]]
}

@test "Loading ivy diminishes ivy-mode" {
    run emacs -batch -l package -f package-initialize -l subr-x \
        -l ivy \
        -eval "(prin1 (string-empty-p (car (alist-get 'ivy-mode minor-mode-alist))))"

    echo "$output"

    [[ "$output" == *"t" ]]
}

@test "Reloading ivy diminishes ivy-mode" {
    run emacs -batch -l package -f package-initialize -l subr-x \
        -l ivy \
        -eval "(load-library \"ivy\")" \
        -eval "(prin1 (string-empty-p (car (alist-get 'ivy-mode minor-mode-alist))))"

    echo "$output"

    [[ "$output" == *"t" ]]
}

@test "Loading ivy-posframe diminishes ivy-posframe-mode" {
    run emacs -batch -l package -f package-initialize -l subr-x \
        -l ivy-posframe \
        -eval "(prin1 (string-empty-p (car (alist-get 'ivy-posframe-mode minor-mode-alist))))"

    echo "$output"

    [[ "$output" == *"t" ]]
}

@test "Reloading ivy-posframe diminishes ivy-posframe-mode" {
    run emacs -batch -l package -f package-initialize -l subr-x \
        -l ivy-posframe \
        -eval "(load-library \"ivy-posframe\")" \
        -eval "(prin1 (string-empty-p (car (alist-get 'ivy-posframe-mode minor-mode-alist))))"

    echo "$output"

    [[ "$output" == *"t" ]]
}