public async Task Handler_AddTag_BuildTagAdded()
        {
            var command = new UpdateBuildTags()
            {
                BuildId = build.Id,
                Tags    = new[] { "tag1" }
            };

            await updateBuildTagsHandler.Handle(command, CancellationToken.None);

            var editedBuild = await RestoreBuild();

            Assert.Equal(command.Tags, editedBuild.Tags);
            Assert.Equal(ArtifactState.Updated, editedBuild.ArtifactState);
        }
        public async Task Handler_RemoveTag_RemovedOneTag()
        {
            build.AddTag("new_Tag");
            build.AddTag("new_Tag_2");
            await eventStore.AppendToStream <Build>(build.Id, build.GetUncommitedChanges());

            var command = new UpdateBuildTags()
            {
                BuildId = build.Id,
                Tags    = new [] { "new_Tag" }
            };

            await updateBuildTagsHandler.Handle(command, CancellationToken.None);

            var editedBuild = await RestoreBuild();

            Assert.Equal(command.Tags, editedBuild.Tags);
            Assert.Equal(ArtifactState.Updated, editedBuild.ArtifactState);
        }