public void DeveCriarPrecoPromocional() { //Given var valor = 10; var dataInicioPromocao = DateTime.Now; var dataFimPromocao = DateTime.Now.AddDays(7); //When var precoPromocional = new PrecoPromocional(valor, dataInicioPromocao, dataFimPromocao); //Then Assert.Equal(valor, precoPromocional.Valor); Assert.Equal(dataInicioPromocao, precoPromocional.DataInicioPromocao); Assert.Equal(dataFimPromocao, precoPromocional.DataFimPromocao); }
public void DeveCriarProduto() { //Given var nome = "Tenis"; var grupo = new Grupo("Sapato"); var cores = new Cor[] { new Cor("Verde"), new Cor("Preto") }; var tamanho = new Tamanho[] { new Tamanho("grande"), new Tamanho("Pequeno") }; var subgrupo = new Subgrupo("Tenis", grupo); var preco = new decimal(10); var precoPromocional = new PrecoPromocional(10, DateTime.Now, DateTime.Now.AddDays(1)); var precosPromocionais = new [] { precoPromocional }; //When var produto = new Produto(nome, tamanho, cores, subgrupo, preco, precosPromocionais); //Then Assert.Equal(nome, produto.Nome); Assert.Equal(preco, produto.Preco); Assert.Equal(cores, produto.Cores); Assert.Equal(tamanho, produto.Tamanhos); Assert.Equal(subgrupo, produto.Subgrupo); Assert.Equal(precosPromocionais, produto.PrecosPromocionais); }
private async Task RegistrarProdutoAsync() { if (!IsBusy) { Exception Error = null; try { IsBusy = true; var _realmDB = Realm.GetInstance(); using (UserDialogs.Instance.Loading("Registrando Produto...", null, null, true, MaskType.Gradient)) { //Buscar Produto var _produto = JsonConvert.DeserializeObject <Produto>(SettingsPreferences.GetValue("Produto", "")); if (!string.IsNullOrWhiteSpace(PrecoPromocional.ToString())) { _precoPromocional = PrecoPromocional; } if (_produto == null) { //Registrar Produto Produto objProduto = new Produto() { Descricao = ProdutoModel.Descricao.Trim(), Detalhes = ProdutoModel.Detalhes.Trim(), Preco = Preco, PrecoPromocional = _precoPromocional, Imagem = _mediaFile.FileName, ImagemURL = _mediaFile.FullPath, DataCadastro = System.DateTime.Now, Ativo = true, CategoriaID = ProdutoModel.CategoriaID }; //------------ Registrar Produto ------------/ _realmDB.Write(() => { _realmDB.Add(objProduto); }); SettingsPreferences.SetValue("Mensagem", "Produto cadastrado com sucesso!"); } else { //Atualizar Produto var objProduto = _realmDB.Find <Produto>(_produto.ProdutoID); using (var db = _realmDB.BeginWrite()) { objProduto.Descricao = ProdutoModel.Descricao.Trim(); objProduto.Detalhes = ProdutoModel.Detalhes.Trim(); objProduto.Preco = Preco; objProduto.PrecoPromocional = _precoPromocional; if (_mediaFile is not null) { objProduto.Imagem = _mediaFile.FileName; objProduto.ImagemURL = _mediaFile.FullPath; } objProduto.DataCadastro = System.DateTime.Now; objProduto.Ativo = true; objProduto.CategoriaID = ProdutoModel.CategoriaID; db.Commit(); } SettingsPreferences.SetValue("Mensagem", "Produto atualizado com sucesso!"); } } } catch (Exception ex) { IsBusy = false; Error = ex; } finally { IsBusy = false; await Shell.Current.GoToAsync("Mensagem", true); } if (Error != null) { IsBusy = false; await DisplayAlert("Ooops!", "Ocorreu algo inesperado!" + Environment.NewLine + "Por favor, tente novamente!", "OK"); } } }