Skip to content

Instantly share code, notes, and snippets.

View aallbrig's full-sized avatar

Andrew Allbright aallbrig

View GitHub Profile
name: Acquire activation file
on:
workflow_dispatch: {}
jobs:
activation:
name: Request manual activation file
runs-on: ubuntu-latest
steps:
# Request manual activation file
- name: Request manual activation file
html, body { padding: 0; margin: 0; overflow: hidden }
#unity-container { position: absolute; width: 100%; height: 100% }
#unity-canvas { width: 100%; height: 100%; background: {{{ BACKGROUND_COLOR }}} }
var canvas = document.querySelector("#unity-canvas");
var config = {
dataUrl: "Build/{{{ DATA_FILENAME }}}",
frameworkUrl: "Build/{{{ FRAMEWORK_FILENAME }}}",
codeUrl: "Build/{{{ CODE_FILENAME }}}",
#if MEMORY_FILENAME
memoryUrl: "Build/{{{ MEMORY_FILENAME }}}",
#endif
#if SYMBOLS_FILENAME
<!DOCTYPE html>
<html lang="en-us">
<head>
<meta charset="utf-8">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Unity WebGL Player | {{{ PRODUCT_NAME }}}</title>
<link rel="shortcut icon" href="TemplateData/favicon.ico">
<link rel="stylesheet" href="TemplateData/style.css">
</head>
<body>
name: Unity CI CD Pipeline
on:
push:
paths:
- 'unity/**'
pull_request:
paths:
- 'unity/**'
workflow_dispatch:
public class VanillaCSharpUnitTests
{
[Test]
public void Inverter_ReturnSuccess_WhenChildFails()
{
var spy = new BehaviorSpy(() => Behavior.Status.Failure);
var sut = new Inverter(spy);
BehaviorTestHarness.RunToComplete(sut);
public class ScriptableObjectUnitTests
{
[UnityTest]
public void Script_ExposesFunctionToBroadcast_MultipleTypesOfGameEvents()
{
// Arrange
var broadcaster = new GameObject().AddComponent<BroadcastGameEvents>();
var gameEventA = ScriptableObject.CreateInstance<GameEvent>();
var gameEventB = ScriptableObject.CreateInstance<GameEvent>();
public class LevelOneTests
{
private const string TargetScene = "Level One";
public static string[] ExpectedGameElements =
{
"Player"
};
private GameObject FindGameObjectByName(string name) => GameObject.Find(name);
public class PrefabIntegrationTests
{
public string PrefabLocation => "Prefabs/Player";
[UnityTest]
public IEnumerator PlayerPrefab_RespondsToDownwardSwipe()
{
var testLocation = TestLocation.Next();
Object.Instantiate(Resources.Load<GameObject>(TestPlatform), testLocation);
var sut = Object.Instantiate(Resources.Load<GameObject>(PrefabLocation), testLocation);
public class MainMenuMonoBehaviourUnitTests
{
[UnityTest]
public IEnumerator MainMenu_CanStartGame()
{
var called = false;
var sut = new GameObject().AddComponent<MainMenu>();
sut.Interactions = new SpyMainMenuInteractions {OnStartGame = () => called = true};
yield return new WaitForEndOfFrame();