             ("testAddingAndRemovingRemotePackage", testAddingAndRemovingRemotePackage),
             ("testAddingAndRemovingLocalPackage", testAddingAndRemovingLocalPackage),
             ("testRemovingAllPackages", testRemovingAllPackages),
+            ("testAddingLocalPackage", testAddingLocalPackage),
             ("testAddingLocalPackageWithDependency", testAddingLocalPackageWithDependency),
             ("testAddingLocalPackageWithUnsortedVersionsContainingLetters", testAddingLocalPackageWithUnsortedVersionsContainingLetters),
             ("testAddingAlreadyAddedPackageThrows", testAddingAlreadyAddedPackageThrows),
+            ("testTreatingNestedDependenciesAsAdded", testTreatingNestedDependenciesAsAdded),
             ("testRunningScriptWithoutPathThrows", testRunningScriptWithoutPathThrows),
             ("testRunningScript", testRunningScript),
             ("testRunningScriptWithNewDependency", testRunningScriptWithNewDependency),

            ("testPassingArgumentsToScript", testPassingArgumentsToScript),
            ("testCurrentWorkingDirectoryOfScriptIsExecutionFolder", testCurrentWorkingDirectoryOfScriptIsExecutionFolder),
            ("testScriptWithLargeAmountOfOutput", testScriptWithLargeAmountOfOutput),
            ("testInstallingLocalScript", testInstallingLocalScript),
            ("testInstallingRemoteScriptWithDependenciesUsingRegularGithubURL", testInstallingRemoteScriptWithDependenciesUsingRegularGithubURL),
            ("testInstallingRemoteScriptWithDependenciesUsingRawGithubURL", testInstallingRemoteScriptWithDependenciesUsingRawGithubURL),

            ("testAddingLocalPackageUsingRelativePathInMarathonfile", testAddingLocalPackageUsingRelativePathInMarathonfile),
            ("testAddingOtherScriptAsDependencyUsingMarathonfile", testAddingOtherScriptAsDependencyUsingMarathonfile),
            ("testIncorrectlyFormattedMarathonfileThrows", testIncorrectlyFormattedMarathonfileThrows),
            ("testResolvingInlineDependencies", testResolvingInlineDependencies),
            ("testInlineDependencyWithDifferentCasingAsAlreadyAddedPackageNotAdded", testInlineDependencyWithDifferentCasingAsAlreadyAddedPackageNotAdded),
            ("testNoDirectUsesOfPrintFunction", testNoDirectUsesOfPrintFunction),
            ("testNoDirectUsesOfShellOut", testNoDirectUsesOfShellOut),
            ("testAllTestsRunOnLinux", testAllTestsRunOnLinux)
        ]
    }
}

// MARK: - Abstract Test Cases

fileprivate extension MarathonTests {
    func performTestForInstallingRemoteScriptWithDependenciesUsingURL(_ urlString: String) throws {
        try run(with: ["install", urlString, "installed-script"])
        
        // Make a couple of files that we can try the installed script on
