Ejemplo n.º 1
0
        public void GetBottleSizes_ReturnsBottleSizes_WhenDBHasNBottleSizes()
        {
            // Arrange
            var BottleSize = new BottleSizeEntity
            {
                BottleSize = "Test 1.3 BottleSize 1",
                Volume     = "Test 1.3 Volume 1",
                Default    = false
            };
            var BottleSize2 = new BottleSizeEntity
            {
                BottleSize = "Test 1.3 BottleSize 2",
                Volume     = "Test 1.3 Volume 2",
                Default    = true
            };

            _dbContext.BottleSizes.Add(BottleSize);
            _dbContext.BottleSizes.Add(BottleSize2);
            _dbContext.SaveChanges( );

            // Act
            var results = _controller.GetBottleSizes( );

            //Assert
            Assert.Equal(2, results.Value.Count( ));
        }
        public void PutWine_AttributesUnchanged_WhenUsingInvalidWineId()
        {
            // Arrange
            // Set up associated object - Varietal.
            var varietalEntity = new VarietalEntity
            {
                Varietal = "Test 4.4 Varietal"
            };

            _dbContext.Varietals.Add(varietalEntity);

            // Set up associated object - BottleSize.
            var bottleSizeEntity = new BottleSizeEntity
            {
                // Just use default values.
            };

            _dbContext.BottleSizes.Add(bottleSizeEntity);

            // Set up associated object - Winery.
            var wineryEntity = new WineryEntity
            {
                Name = "Test 4.4 Winery"
            };

            _dbContext.Wineries.Add(wineryEntity);

            _dbContext.SaveChanges( );

            var wineEntity = new WineEntity
            {
                Name          = "Test 4.4 Wine",
                WhenPurchased = "Test 4.4 WhenPurchased",
                //--BottlesDrank = 4,
                BottlesPurchased   = 3,
                VarietalEntityId   = varietalEntity.Id,
                BottleSizeEntityId = bottleSizeEntity.Id,
                WineryEntityId     = wineryEntity.Id,
                Vintage            = "Test 4.4 Vintage"
            };

            _dbContext.Wines.Add(wineEntity);
            _dbContext.SaveChanges( );
            var wineEntityId = wineEntity.Id;

            var wine = new Wine
            {
                Name          = "Test 4.4 Wine UPDATE",
                WhenPurchased = "Test 4.4 WhenPurchased UPDTED",
                BottlesDrank  = 2,
                Vintage       = "Test 4.4 Vintage UPDATED"
            };

            // Act
            _controller.PutWine(wineEntity.Id + 1, wine);
            var result = _dbContext.Wines.Find(wineEntity.Id);

            // Assert
            Assert.Equal(wineEntity.Name, result.Name);
        }
        public void PutWine_Returns404NotFound_WhenUsingInvalidIWineId()
        {
            // Arrange
            // Set up associated object - Varietal.
            var varietalEntity = new VarietalEntity
            {
                Varietal = "Test 4.3 Varietal"
            };

            _dbContext.Varietals.Add(varietalEntity);

            // Set up associated object - BottleSize.
            var bottleSizeEntity = new BottleSizeEntity
            {
                // Just use default values.
            };

            _dbContext.BottleSizes.Add(bottleSizeEntity);

            // Set up associated object - Winery.
            var wineryEntity = new WineryEntity
            {
                Name = "Test 4.3 Winery"
            };

            _dbContext.Wineries.Add(wineryEntity);

            _dbContext.SaveChanges( );

            var wineEntity = new WineEntity
            {
                Name          = "Test 4.3 Wine",
                WhenPurchased = "Test 4.3 WhenPurchased",
                //--BottlesDrank = 4,
                BottlesPurchased   = 3,
                VarietalEntityId   = varietalEntity.Id,
                BottleSizeEntityId = bottleSizeEntity.Id,
                WineryEntityId     = wineryEntity.Id,
                Vintage            = "Test 4.3 Vintage"
            };

            _dbContext.Wines.Add(wineEntity);
            _dbContext.SaveChanges( );
            var wineEntityId  = wineEntity.Id;
            var invalidWineId = wineEntityId + 10;

            var wine = new Wine
            {
                Name    = "Test 4.3 Wine UPDATE",
                Vintage = "Test 4.2 Vintage UPDATED"
            };

            // Act
            var result = _controller.PutWine(invalidWineId, wine);

            // Assert
            Assert.IsType <NotFoundResult>(result);
        }
        public void PostWine_WineryCountIncremented_WhenUsingValidWine()
        {
            // Arrange
            // Set up associated object - Varietal.
            var varietalEntity = new VarietalEntity
            {
                Varietal = "Test 3.1 Varietal"
            };

            _dbContext.Varietals.Add(varietalEntity);

            // Set up associated object - BottleSize.
            var bottleSizeEntity = new BottleSizeEntity
            {
                // Just use default values.
            };

            _dbContext.BottleSizes.Add(bottleSizeEntity);

            // Set up associated object - Winery.
            var wineryEntity = new WineryEntity
            {
                Name = "Test 3.1 Winery"
            };

            _dbContext.Wineries.Add(wineryEntity);

            _dbContext.SaveChanges( );

            var wine = new Wine
            {
                Name             = "Test 3.1 Wine",
                WhenPurchased    = "Test 3.1 WhenPurchased",
                BottlesDrank     = 0,
                BottlesPurchased = 6,
                VarietalId       = varietalEntity.Id,
                BottleSizeId     = bottleSizeEntity.Id,
                WineryId         = wineryEntity.Id,
                Vintage          = "Test 3.1 Vintage"
            };

            var oldCount = _dbContext.Wines.Count( );

            // Act
            var result = _controller.PostWine(wine);

            // Assert
            Assert.Equal(oldCount + 1, _dbContext.Wines.Count( ));
        }
        public void PostWine_ReturnsItemOfCorrectType_WhenUsingValidID()
        {
            // Set up associated object - Varietal.
            var varietalEntity = new VarietalEntity
            {
                Varietal = "Test 3.2 Varietal"
            };

            _dbContext.Varietals.Add(varietalEntity);

            // Set up associated object - BottleSize.
            var bottleSizeEntity = new BottleSizeEntity
            {
                // Just use default values.
            };

            _dbContext.BottleSizes.Add(bottleSizeEntity);

            // Set up associated object - Winery.
            var wineryEntity = new WineryEntity
            {
                Name = "Test 3.2 Winery"
            };

            _dbContext.Wineries.Add(wineryEntity);

            _dbContext.SaveChanges( );

            // Arrange
            var wine = new Wine
            {
                Name          = "Test 3.2 Wine",
                WhenPurchased = "Test 3.2 WhenPurchased",
                //--BottlesDrank = 4,
                BottlesPurchased = 4,
                VarietalId       = varietalEntity.Id,
                BottleSizeId     = bottleSizeEntity.Id,
                WineryId         = wineryEntity.Id,
                Vintage          = "Test 3.2 Vintage"
            };

            // Act
            var result = _controller.PostWine(wine);

            // Assert
            Assert.IsType <CreatedAtActionResult>(result.Result);
        }
Ejemplo n.º 6
0
        public void GetBottleSizes_ReturnsOneBottleSize_WhenDBHasOneBottleSize()
        {
            // Arrange
            var BottleSize = new BottleSizeEntity
            {
                BottleSize = "Test 1.2 BottleSize",
                Volume     = "Test 1.2 Volume",
                Default    = true
            };

            _dbContext.BottleSizes.Add(BottleSize);
            _dbContext.SaveChanges( );

            // Act
            var results = _controller.GetBottleSizes( );

            //Assert
            Assert.Single(results.Value);
        }
Ejemplo n.º 7
0
        public void DeleteBottleSize_Returns200OK_WhenUsingValidBottleSizeId()
        {
            // Arrange
            var BottleSize = new BottleSizeEntity
            {
                BottleSize = "Test 5.2 BottleSize",
                Volume     = "Test 5.2 Volume",
                Default    = false
            };

            _dbContext.BottleSizes.Add(BottleSize);
            _dbContext.SaveChanges( );

            var BottleSizeId = BottleSize.Id;

            // Act
            var result = _controller.DeleteBottleSize(BottleSizeId);

            //Assert
            Assert.Null(result.Result);
        }
Ejemplo n.º 8
0
        public void GetBottleSize_ReturnCorrectBottleSize_WhenUsingValidID()
        {
            // Arrange
            var BottleSize = new BottleSizeEntity
            {
                BottleSize = "Test 2.4 BottleSize",
                Volume     = "Test 2.4 Volume",
                Default    = false
            };

            _dbContext.BottleSizes.Add(BottleSize);
            _dbContext.SaveChanges( );

            var cmdId = BottleSize.Id;

            // Act
            var result = _controller.GetBottleSize(cmdId);

            //Assert
            Assert.Equal(cmdId, result.Value.Id);
        }
Ejemplo n.º 9
0
        public void GetBottleSize_ReturnsItemOfCorrectType_WhenUsingValidID()
        {
            // Arrange
            var BottleSize = new BottleSizeEntity
            {
                BottleSize = "Test 2.3 BottleSize",
                Volume     = "Test 2.3 Volume",
                Default    = false
            };

            _dbContext.BottleSizes.Add(BottleSize);
            _dbContext.SaveChanges( );

            var cmdId = BottleSize.Id;

            // Act
            var result = _controller.GetBottleSize(cmdId);

            //Assert
            Assert.IsType <ActionResult <BottleSize> >(result);
        }
Ejemplo n.º 10
0
        public void DeleteBottleSize_UnchangedObjectCount_WhenUsingInvalidBottleSizeId()
        {
            // Arrange
            var BottleSize = new BottleSizeEntity
            {
                BottleSize = "Test 5.4 BottleSize",
                Volume     = "Test 5.4 Volume",
                Default    = true
            };

            _dbContext.BottleSizes.Add(BottleSize);
            _dbContext.SaveChanges( );

            var BottleSizeId = BottleSize.Id;
            var objCount     = _dbContext.BottleSizes.Count( );

            // Act
            var result = _controller.DeleteBottleSize(BottleSizeId + 1);

            //Assert
            Assert.Equal(objCount, _dbContext.BottleSizes.Count( ));
        }
Ejemplo n.º 11
0
        public void DeleteBottleSize_ObjectCountDecrementedBy1_WhenUsingValidBottleSizeId()
        {
            // Arrange
            var BottleSize = new BottleSizeEntity
            {
                BottleSize = "Test 5.1 BottleSize",
                Volume     = "Test 5.1 Volume",
                Default    = false
            };

            _dbContext.BottleSizes.Add(BottleSize);
            _dbContext.SaveChanges( );

            var BottleSizeId = BottleSize.Id;
            var objCount     = _dbContext.BottleSizes.Count( );

            // Act
            _controller.DeleteBottleSize(BottleSizeId);

            //Assert
            Assert.Equal(objCount - 1, _dbContext.BottleSizes.Count( ));
        }
Ejemplo n.º 12
0
        public void PutWine_LinkedInfoUpdated_WhenUsingValidWineId()
        {
            // Arrange
            // Set up associated object - Varietal.
            var varietalEntity = new VarietalEntity
            {
                Varietal = "Test 4.5 Varietal"
            };
            var varietalEntity2 = new VarietalEntity
            {
                Varietal = "Test 4.5 Varietal2"
            };

            _dbContext.Varietals.Add(varietalEntity);
            _dbContext.Varietals.Add(varietalEntity2);

            // Set up associated object - BottleSize.
            var bottleSizeEntity = new BottleSizeEntity
            {
                // Just use default values.
            };
            var bottleSizeEntity2 = new BottleSizeEntity
            {
                BottleSize = "375"
            };

            _dbContext.BottleSizes.Add(bottleSizeEntity);
            _dbContext.BottleSizes.Add(bottleSizeEntity2);

            // Set up associated object - Winery.
            var wineryEntity = new WineryEntity
            {
                Name = "Test 4.1 Winery"
            };
            var wineryEntity2 = new WineryEntity
            {
                Name = "Test 4.5 Winery2"
            };

            _dbContext.Wineries.Add(wineryEntity);
            _dbContext.Wineries.Add(wineryEntity2);

            _dbContext.SaveChanges( );

            var wineEntity = new WineEntity
            {
                Name          = "Test 4.5 Wine",
                WhenPurchased = "Test 4.5 WhenPurchased",
                //--BottlesDrank = 4,
                BottlesPurchased   = 8,
                VarietalEntityId   = varietalEntity.Id,
                BottleSizeEntityId = bottleSizeEntity.Id,
                WineryEntityId     = wineryEntity.Id,
                Vintage            = "Test 4.5 Vintage"
            };

            _dbContext.Wines.Add(wineEntity);
            _dbContext.SaveChanges( );
            var wineEntityId = wineEntity.Id;

            var wine = new Wine
            {
                // Update Ids of linked records.
                BottleSizeId = bottleSizeEntity2.Id,
                VarietalId   = varietalEntity2.Id,
                WineryId     = wineryEntity2.Id
            };

            // Act
            _controller.PutWine(wineEntityId, wine);
            var result = _dbContext.Wines.Find(wineEntityId);

            // Assert
            Assert.Equal(wine.VarietalId, result.VarietalEntityId);
            Assert.Equal(wine.BottleSizeId, result.BottleSizeEntityId);
            Assert.Equal(wine.WineryId, result.WineryEntityId);
            Assert.Equal(bottleSizeEntity2.BottleSize, result.BottleSize.BottleSize);
            Assert.Equal(varietalEntity2.Varietal, result.Varietal.Varietal);
            Assert.Equal(wineryEntity2.Name, result.Winery.Name);
        }