Compare commits
2
Commits
2a6130ba8e
...
241a753879
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
241a753879 | ||
|
|
178123c944 |
+10
@@ -0,0 +1,10 @@
|
||||
# Swift Package Manager
|
||||
.build/
|
||||
.swiftpm/
|
||||
|
||||
# Xcode user data
|
||||
xcuserdata/
|
||||
*.xcuserstate
|
||||
|
||||
# macOS
|
||||
.DS_Store
|
||||
@@ -0,0 +1,36 @@
|
||||
{
|
||||
"configurations" : [
|
||||
{
|
||||
"id" : "3E4A1B2C-5D6E-7F8A-9B0C-1D2E3F4A5B6C",
|
||||
"name" : "Test Scheme Action",
|
||||
"options" : {
|
||||
|
||||
}
|
||||
}
|
||||
],
|
||||
"defaultOptions" : {
|
||||
|
||||
},
|
||||
"testTargets" : [
|
||||
{
|
||||
"target" : {
|
||||
"containerPath" : "container:DieHammer.xcodeproj",
|
||||
"identifier" : "981AD0C927C30E32005A6492",
|
||||
"name" : "Bunch O' DiceTests"
|
||||
}
|
||||
},
|
||||
{
|
||||
"target" : {
|
||||
"containerPath" : "container:DieHammer.xcodeproj",
|
||||
"identifier" : "981AD0D327C30E32005A6492",
|
||||
"name" : "Bunch O' DiceUITests"
|
||||
},
|
||||
"uiTargetApp" : {
|
||||
"containerPath" : "container:DieHammer.xcodeproj",
|
||||
"identifier" : "981AD0B927C30E31005A6492",
|
||||
"name" : "DieHammer"
|
||||
}
|
||||
}
|
||||
],
|
||||
"version" : 1
|
||||
}
|
||||
@@ -3,11 +3,12 @@
|
||||
archiveVersion = 1;
|
||||
classes = {
|
||||
};
|
||||
objectVersion = 55;
|
||||
objectVersion = 60;
|
||||
objects = {
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
7692E8432BD55CDF005BDD76 /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = 7692E8422BD55CDE005BDD76 /* PrivacyInfo.xcprivacy */; };
|
||||
76AB19823050A4B500BF7B9D /* DieHammerEngine in Frameworks */ = {isa = PBXBuildFile; productRef = 76AB19813050A4B500BF7B9D /* DieHammerEngine */; };
|
||||
980EF454285E2BAD002FE8A0 /* MainView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 980EF453285E2BAD002FE8A0 /* MainView.swift */; };
|
||||
981AD0BE27C30E31005A6492 /* DieHammerApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = 981AD0BD27C30E31005A6492 /* DieHammerApp.swift */; };
|
||||
981AD0C027C30E31005A6492 /* ContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 981AD0BF27C30E31005A6492 /* ContentView.swift */; };
|
||||
@@ -62,7 +63,7 @@
|
||||
98225DE02A3527160019DE8E /* dice.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = dice.swift; sourceTree = "<group>"; };
|
||||
98325A2D2839BE4B0006DF4B /* RollState.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RollState.swift; sourceTree = "<group>"; };
|
||||
98745CA52870CC670031166A /* SettingsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SettingsView.swift; sourceTree = "<group>"; };
|
||||
988997FF285814AB00B07E09 /* Bunch-O--Dice-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Bunch-O--Dice-Info.plist"; sourceTree = SOURCE_ROOT; };
|
||||
988997FF285814AB00B07E09 /* DieHammer.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = DieHammer.plist; sourceTree = SOURCE_ROOT; };
|
||||
988B150E2854E9160082C2C5 /* HistoryView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HistoryView.swift; sourceTree = "<group>"; };
|
||||
988B1516285565610082C2C5 /* Onboarding.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Onboarding.swift; sourceTree = "<group>"; };
|
||||
988B1518285566AD0082C2C5 /* OnboardingView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OnboardingView.swift; sourceTree = "<group>"; };
|
||||
@@ -75,6 +76,7 @@
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
76AB19823050A4B500BF7B9D /* DieHammerEngine in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@@ -95,6 +97,13 @@
|
||||
/* End PBXFrameworksBuildPhase section */
|
||||
|
||||
/* Begin PBXGroup section */
|
||||
76AB19803050A4B500BF7B9D /* Frameworks */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
);
|
||||
name = Frameworks;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
981AD0B127C30E31005A6492 = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
@@ -102,6 +111,7 @@
|
||||
981AD0BC27C30E31005A6492 /* Bunch-O--Dice */,
|
||||
981AD0CD27C30E32005A6492 /* Bunch O' DiceTests */,
|
||||
981AD0D727C30E32005A6492 /* Bunch O' DiceUITests */,
|
||||
76AB19803050A4B500BF7B9D /* Frameworks */,
|
||||
981AD0BB27C30E31005A6492 /* Products */,
|
||||
);
|
||||
sourceTree = "<group>";
|
||||
@@ -120,7 +130,7 @@
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
7692E8422BD55CDE005BDD76 /* PrivacyInfo.xcprivacy */,
|
||||
988997FF285814AB00B07E09 /* Bunch-O--Dice-Info.plist */,
|
||||
988997FF285814AB00B07E09 /* DieHammer.plist */,
|
||||
981AD0BD27C30E31005A6492 /* DieHammerApp.swift */,
|
||||
981AD0BF27C30E31005A6492 /* ContentView.swift */,
|
||||
988B1518285566AD0082C2C5 /* OnboardingView.swift */,
|
||||
@@ -131,7 +141,8 @@
|
||||
981AD0C127C30E32005A6492 /* Assets.xcassets */,
|
||||
981AD0C327C30E32005A6492 /* Preview Content */,
|
||||
);
|
||||
path = "Bunch-O--Dice";
|
||||
name = "Bunch-O--Dice";
|
||||
path = DieHammer;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
981AD0C327C30E32005A6492 /* Preview Content */ = {
|
||||
@@ -147,7 +158,8 @@
|
||||
children = (
|
||||
981AD0CE27C30E32005A6492 /* Bunch_O__DiceTests.swift */,
|
||||
);
|
||||
path = "Bunch O' DiceTests";
|
||||
name = "Bunch O' DiceTests";
|
||||
path = DieHammerTests;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
981AD0D727C30E32005A6492 /* Bunch O' DiceUITests */ = {
|
||||
@@ -156,7 +168,8 @@
|
||||
981AD0D827C30E32005A6492 /* Bunch_O__DiceUITests.swift */,
|
||||
981AD0DA27C30E32005A6492 /* Bunch_O__DiceUITestsLaunchTests.swift */,
|
||||
);
|
||||
path = "Bunch O' DiceUITests";
|
||||
name = "Bunch O' DiceUITests";
|
||||
path = DieHammerUITests;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
981AD0E727C311DA005A6492 /* Model */ = {
|
||||
@@ -199,9 +212,9 @@
|
||||
/* End PBXGroup section */
|
||||
|
||||
/* Begin PBXNativeTarget section */
|
||||
981AD0B927C30E31005A6492 /* Bunch O' Dice */ = {
|
||||
981AD0B927C30E31005A6492 /* DieHammer */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = 981AD0DE27C30E32005A6492 /* Build configuration list for PBXNativeTarget "Bunch O' Dice" */;
|
||||
buildConfigurationList = 981AD0DE27C30E32005A6492 /* Build configuration list for PBXNativeTarget "DieHammer" */;
|
||||
buildPhases = (
|
||||
981AD0B627C30E31005A6492 /* Sources */,
|
||||
981AD0B727C30E31005A6492 /* Frameworks */,
|
||||
@@ -211,7 +224,7 @@
|
||||
);
|
||||
dependencies = (
|
||||
);
|
||||
name = "Bunch O' Dice";
|
||||
name = DieHammer;
|
||||
productName = "Bunch O' Dice";
|
||||
productReference = 981AD0BA27C30E31005A6492 /* Bunch O' Dice.app */;
|
||||
productType = "com.apple.product-type.application";
|
||||
@@ -284,11 +297,14 @@
|
||||
Base,
|
||||
);
|
||||
mainGroup = 981AD0B127C30E31005A6492;
|
||||
packageReferences = (
|
||||
7665121E305077AF0002A498 /* XCLocalSwiftPackageReference "DieHammerEngine" */,
|
||||
);
|
||||
productRefGroup = 981AD0BB27C30E31005A6492 /* Products */;
|
||||
projectDirPath = "";
|
||||
projectRoot = "";
|
||||
targets = (
|
||||
981AD0B927C30E31005A6492 /* Bunch O' Dice */,
|
||||
981AD0B927C30E31005A6492 /* DieHammer */,
|
||||
981AD0C927C30E32005A6492 /* Bunch O' DiceTests */,
|
||||
981AD0D327C30E32005A6492 /* Bunch O' DiceUITests */,
|
||||
);
|
||||
@@ -364,12 +380,12 @@
|
||||
/* Begin PBXTargetDependency section */
|
||||
981AD0CC27C30E32005A6492 /* PBXTargetDependency */ = {
|
||||
isa = PBXTargetDependency;
|
||||
target = 981AD0B927C30E31005A6492 /* Bunch O' Dice */;
|
||||
target = 981AD0B927C30E31005A6492 /* DieHammer */;
|
||||
targetProxy = 981AD0CB27C30E32005A6492 /* PBXContainerItemProxy */;
|
||||
};
|
||||
981AD0D627C30E32005A6492 /* PBXTargetDependency */ = {
|
||||
isa = PBXTargetDependency;
|
||||
target = 981AD0B927C30E31005A6492 /* Bunch O' Dice */;
|
||||
target = 981AD0B927C30E31005A6492 /* DieHammer */;
|
||||
targetProxy = 981AD0D527C30E32005A6492 /* PBXContainerItemProxy */;
|
||||
};
|
||||
/* End PBXTargetDependency section */
|
||||
@@ -506,10 +522,9 @@
|
||||
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
DEVELOPMENT_ASSET_PATHS = "\"Bunch-O--Dice/Preview Content\"";
|
||||
DEVELOPMENT_ASSET_PATHS = "\"DieHammer/Preview Content\"";
|
||||
ENABLE_PREVIEWS = YES;
|
||||
GENERATE_INFOPLIST_FILE = YES;
|
||||
INFOPLIST_FILE = "Bunch-O--Dice-Info.plist";
|
||||
INFOPLIST_KEY_CFBundleDisplayName = DieHammer;
|
||||
INFOPLIST_KEY_UIApplicationSceneManifest_Generation = YES;
|
||||
INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES;
|
||||
@@ -524,6 +539,7 @@
|
||||
);
|
||||
MARKETING_VERSION = 1.2;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "com.chartreusenecktie.Bunch-O--Dice";
|
||||
PRODUCT_MODULE_NAME = DieHammer;
|
||||
PRODUCT_NAME = "Bunch O' Dice";
|
||||
SWIFT_EMIT_LOC_STRINGS = YES;
|
||||
SWIFT_VERSION = 5.0;
|
||||
@@ -538,10 +554,9 @@
|
||||
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
DEVELOPMENT_ASSET_PATHS = "\"Bunch-O--Dice/Preview Content\"";
|
||||
DEVELOPMENT_ASSET_PATHS = "\"DieHammer/Preview Content\"";
|
||||
ENABLE_PREVIEWS = YES;
|
||||
GENERATE_INFOPLIST_FILE = YES;
|
||||
INFOPLIST_FILE = "Bunch-O--Dice-Info.plist";
|
||||
INFOPLIST_KEY_CFBundleDisplayName = DieHammer;
|
||||
INFOPLIST_KEY_UIApplicationSceneManifest_Generation = YES;
|
||||
INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES;
|
||||
@@ -556,6 +571,7 @@
|
||||
);
|
||||
MARKETING_VERSION = 1.2;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "com.chartreusenecktie.Bunch-O--Dice";
|
||||
PRODUCT_MODULE_NAME = DieHammer;
|
||||
PRODUCT_NAME = "Bunch O' Dice";
|
||||
SWIFT_EMIT_LOC_STRINGS = YES;
|
||||
SWIFT_VERSION = 5.0;
|
||||
@@ -645,7 +661,7 @@
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Release;
|
||||
};
|
||||
981AD0DE27C30E32005A6492 /* Build configuration list for PBXNativeTarget "Bunch O' Dice" */ = {
|
||||
981AD0DE27C30E32005A6492 /* Build configuration list for PBXNativeTarget "DieHammer" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
981AD0DF27C30E32005A6492 /* Debug */,
|
||||
@@ -673,6 +689,21 @@
|
||||
defaultConfigurationName = Release;
|
||||
};
|
||||
/* End XCConfigurationList section */
|
||||
|
||||
/* Begin XCLocalSwiftPackageReference section */
|
||||
7665121E305077AF0002A498 /* XCLocalSwiftPackageReference "DieHammerEngine" */ = {
|
||||
isa = XCLocalSwiftPackageReference;
|
||||
relativePath = DieHammerEngine;
|
||||
};
|
||||
/* End XCLocalSwiftPackageReference section */
|
||||
|
||||
/* Begin XCSwiftPackageProductDependency section */
|
||||
76AB19813050A4B500BF7B9D /* DieHammerEngine */ = {
|
||||
isa = XCSwiftPackageProductDependency;
|
||||
package = 7665121E305077AF0002A498 /* XCLocalSwiftPackageReference "DieHammerEngine" */;
|
||||
productName = DieHammerEngine;
|
||||
};
|
||||
/* End XCSwiftPackageProductDependency section */
|
||||
};
|
||||
rootObject = 981AD0B227C30E31005A6492 /* Project object */;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,85 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "2700"
|
||||
version = "1.8">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
buildImplicitDependencies = "YES"
|
||||
buildArchitectures = "Automatic">
|
||||
<BuildActionEntries>
|
||||
<BuildActionEntry
|
||||
buildForTesting = "YES"
|
||||
buildForRunning = "YES"
|
||||
buildForProfiling = "YES"
|
||||
buildForArchiving = "YES"
|
||||
buildForAnalyzing = "YES">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "981AD0B927C30E31005A6492"
|
||||
BuildableName = "Bunch O' Dice.app"
|
||||
BlueprintName = "DieHammer"
|
||||
ReferencedContainer = "container:DieHammer.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildActionEntry>
|
||||
</BuildActionEntries>
|
||||
</BuildAction>
|
||||
<TestAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = ""
|
||||
selectedLauncherIdentifier = "Xcode.IDEFoundation.Launcher.PosixSpawn"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
shouldAutocreateTestPlan = "NO">
|
||||
<TestPlans>
|
||||
<TestPlanReference
|
||||
reference = "container:Bunch O' Dice.xctestplan"
|
||||
default = "YES">
|
||||
</TestPlanReference>
|
||||
</TestPlans>
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
launchStyle = "0"
|
||||
useCustomWorkingDirectory = "NO"
|
||||
ignoresPersistentStateOnLaunch = "NO"
|
||||
debugDocumentVersioning = "YES"
|
||||
debugServiceExtension = "internal"
|
||||
allowLocationSimulation = "YES"
|
||||
queueDebuggingEnabled = "No">
|
||||
<BuildableProductRunnable
|
||||
runnableDebuggingMode = "0">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "981AD0B927C30E31005A6492"
|
||||
BuildableName = "Bunch O' Dice.app"
|
||||
BlueprintName = "DieHammer"
|
||||
ReferencedContainer = "container:DieHammer.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildableProductRunnable>
|
||||
</LaunchAction>
|
||||
<ProfileAction
|
||||
buildConfiguration = "Release"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
savedToolIdentifier = ""
|
||||
useCustomWorkingDirectory = "NO"
|
||||
debugDocumentVersioning = "YES">
|
||||
<BuildableProductRunnable
|
||||
runnableDebuggingMode = "0">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "981AD0B927C30E31005A6492"
|
||||
BuildableName = "Bunch O' Dice.app"
|
||||
BlueprintName = "DieHammer"
|
||||
ReferencedContainer = "container:DieHammer.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildableProductRunnable>
|
||||
</ProfileAction>
|
||||
<AnalyzeAction
|
||||
buildConfiguration = "Debug">
|
||||
</AnalyzeAction>
|
||||
<ArchiveAction
|
||||
buildConfiguration = "Release"
|
||||
revealArchiveInOrganizer = "YES">
|
||||
</ArchiveAction>
|
||||
</Scheme>
|
||||
+13
@@ -9,6 +9,19 @@
|
||||
<key>orderHint</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<key>Bunch O' DiceUITests.xcscheme_^#shared#^_</key>
|
||||
<dict>
|
||||
<key>orderHint</key>
|
||||
<integer>1</integer>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>SuppressBuildableAutocreation</key>
|
||||
<dict>
|
||||
<key>981AD0D327C30E32005A6492</key>
|
||||
<dict>
|
||||
<key>primary</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</dict>
|
||||
</dict>
|
||||
</plist>
|
||||
|
||||
@@ -203,8 +203,8 @@ struct RerollTests {
|
||||
var d = Dice()
|
||||
d.one = 2; d.two = 2; d.three = 2; d.six = 4
|
||||
d.rerollBelow(cutoff: 4)
|
||||
// The 4 sixes were not in the reroll range and should be unchanged
|
||||
#expect(d.six == 4)
|
||||
// Sixes were not in the reroll range; rerolled dice may also produce sixes
|
||||
#expect(d.six >= 4)
|
||||
}
|
||||
|
||||
@Test("applyReroll: none mode leaves hasRerolled false")
|
||||
@@ -266,7 +266,7 @@ struct RerollTests {
|
||||
let total = roll.dice.one + roll.dice.two + roll.dice.three +
|
||||
roll.dice.four + roll.dice.five + roll.dice.six
|
||||
#expect(total == 5)
|
||||
#expect(roll.dice.six == 2) // dice above cutoff are untouched
|
||||
#expect(roll.dice.six >= 2) // dice above cutoff are untouched; rerolls may also produce sixes
|
||||
}
|
||||
|
||||
@Test("resetPool: clears hitHasRerolled flag")
|
||||
|
||||
Reference in New Issue
Block a user