public void GetAllZodiacSignsForYinYang_Yin_Test() { var symbols = ChineseZodiac.GetAllZodiacSignsForYinYang(YinYang.Yin); var snakeSign = symbols.FirstOrDefault(s => s.ZodiacEnglishTranslation == ChineseZodiacSigns.Snake.ToString()); Assert.NotNull(snakeSign); }
public void GetZodiacSign_Monkey_Test() { var symbols = ChineseZodiac.GetZodiacSign(ChineseZodiacSigns.Monkey); Assert.Equal("hóu", symbols.ZodiacName); Assert.Equal("Monkey", symbols.ZodiacEnglishTranslation); Assert.Equal("Monkey people are very funny. They can always make others laugh & are good problem solvers.", symbols.ZodiacPersonality); }
public void GetZodiacSign_Dog_Test() { var symbols = ChineseZodiac.GetZodiacSign(ChineseZodiacSigns.Dog); Assert.Equal("gòu", symbols.ZodiacName); Assert.Equal("Dog", symbols.ZodiacEnglishTranslation); Assert.Equal("Dog people are loyal & can always keep a secret. Sometimes they worry too much.", symbols.ZodiacPersonality); }
public void ChineseZodiacTest(int year, ChineseZodiac zodiac) { var x = new DateTime(year, 7, 19).GetChineseZodiac(); _output.WriteLine("{0}, {1}, {2}", year, zodiac, x); Assert.True(x == zodiac); }
public static List <Person> IsChineseZodiac(List <Person> persons, ChineseZodiac check, bool not) { if (not) { return(persons.Where(person => !person.ChineseSign.Equals(check.ToString())).ToList()); } return(persons.Where(person => person.ChineseSign.Equals(check.ToString())).ToList()); }
public void ChineseZodiacTest1() { Assert.AreEqual("Wood Snake", ChineseZodiac.GetChineseZodiac(1965)); Assert.AreEqual("Earth Tiger", ChineseZodiac.GetChineseZodiac(1938)); Assert.AreEqual("Earth Tiger", ChineseZodiac.GetChineseZodiac(1998)); Assert.AreEqual("Fire Monkey", ChineseZodiac.GetChineseZodiac(2016)); Assert.AreEqual("Wood Rat", ChineseZodiac.GetChineseZodiac(1924)); Assert.AreEqual("Earth Monkey", ChineseZodiac.GetChineseZodiac(1968)); Assert.AreEqual("Water Dog", ChineseZodiac.GetChineseZodiac(2162)); }
public void GetAllZodiacSignsForAnElement_Fire_Test() { var symbols = ChineseZodiac.GetAllZodiacSignsForAnElement(ChineseZodiacElements.Fire); var snakeAnimal = symbols.FirstOrDefault(s => s.ZodiacEnglishTranslation == ChineseZodiacSigns.Snake.ToString()); var horseAnimal = symbols.FirstOrDefault(s => s.ZodiacEnglishTranslation == ChineseZodiacSigns.Horse.ToString()); Assert.Equal(2, symbols.Count); Assert.NotNull(snakeAnimal); Assert.NotNull(horseAnimal); }
public Person(string name, string surname, string email, DateTime birthdate) { Name = name; Surname = surname; Email = email; BirthDate = birthdate; isAdult = Adult(BirthDate); sunSign = ChooseSign(BirthDate); chineseSign = CalcChineseZodiac(BirthDate); isBirthday = Birthday(BirthDate); }
static private int ChinseToInt(String str) { ChineseZodiac.TryParse(str, true, out ChineseZodiac z); int val = (int)z; if (val < 4) { val += 15; } return(val); }
public void GetAllZodiacSignsForAnElement_Earth_Test() { var symbols = ChineseZodiac.GetAllZodiacSignsForAnElement(ChineseZodiacElements.Earth); var oxAnimal = symbols.FirstOrDefault(s => s.ZodiacEnglishTranslation == ChineseZodiacSigns.Ox.ToString()); var dragonAnimal = symbols.FirstOrDefault(s => s.ZodiacEnglishTranslation == ChineseZodiacSigns.Dragon.ToString()); var goatAnimal = symbols.FirstOrDefault(s => s.ZodiacEnglishTranslation == ChineseZodiacSigns.Goat.ToString()); var dogAnimal = symbols.FirstOrDefault(s => s.ZodiacEnglishTranslation == ChineseZodiacSigns.Dog.ToString()); Assert.Equal(4, symbols.Count); Assert.NotNull(oxAnimal); Assert.NotNull(dragonAnimal); Assert.NotNull(goatAnimal); Assert.NotNull(dogAnimal); }
/// <summary> /// Contains basic example usage scenarios. /// </summary> public static void ShowZodiacBasicExamples() { var allFireChineseSigns = ChineseZodiac.GetAllZodiacSignsForAnElement(ChineseZodiacElements.Fire); Console.WriteLine($"\nGet a list of all Chinese zodiac signs that are associated with {ChineseZodiacElements.Fire}"); foreach (var currentZodiacSign in allFireChineseSigns) { Console.WriteLine($"-\t{currentZodiacSign.ZodiacEnglishTranslation}"); } var dragonZodiacSign = ChineseZodiac.GetZodiacSign(ChineseZodiacSigns.Dragon); Console.WriteLine($"\nPersonality trait for {ChineseZodiacSigns.Dragon} people: {dragonZodiacSign.ZodiacPersonality}"); var zodiacSignFor2018 = ChineseZodiac.GetChineseZodiacElementBasedOnYear(2018); Console.WriteLine($"\nChinese zodiac element for 2018 is {zodiacSignFor2018}"); var zodiacSignForDate = ChineseZodiac.GetZodiacSignForDate(new DateTime(1966, 2, 12)); Console.WriteLine($"\nChinese zodiac sign for {new DateTime(1966, 2, 12).ToShortDateString()} is {zodiacSignForDate.ZodiacEnglishTranslation}"); // Another option would be: var givenDate = new DateTime(1995, 8, 26); var anotherZodiacSign = givenDate.GetChineseZodiacSign(); Console.WriteLine($"\nChinese zodiac sign for {givenDate.ToShortDateString()} is {anotherZodiacSign.ZodiacEnglishTranslation}"); var allChineseZodiacSigns = ChineseZodiac.GetAllZodiacSigns(); Console.WriteLine($"\nGet a list of all Chinese zodiac signs"); foreach (var currentZodiacSign in allChineseZodiacSigns) { Console.WriteLine($"-\t{currentZodiacSign.ZodiacName} - {currentZodiacSign.ZodiacEnglishTranslation}"); } var allChineseZodiacSignsYin = ChineseZodiac.GetAllZodiacSignsForYinYang(YinYang.Yin); Console.WriteLine($"\nGet a list of all Chinese zodiac signs associated with {YinYang.Yin}"); foreach (var currentZodiacSign in allChineseZodiacSignsYin) { Console.WriteLine($"-\t{currentZodiacSign.ZodiacName} - {currentZodiacSign.ZodiacEnglishTranslation}"); } }
public async Task <IActionResult> GetGalasByZodiacAsync( [FromRoute] ChineseZodiac zodiac, CancellationToken token = default) { _logger.LogDebug("GetGalasByZodiacAsync"); if (!ModelState.IsValid) { return(BadRequest(new ErrorResponse.BadRequest(ModelState))); } var galasEntities = await _galaRepository.GetGalaEntityListByZodiacAsync( zodiac, token); return(Ok(new Response <IList <GalaViewModel> >(galasEntities .Select(galaEntity => _mapper.Map <GalaViewModel>(galaEntity)) .ToList()))); }
public DateOfBirth(ref DateTime birthDate) { Birthday(ref birthDate); try { _age = ChooseAge(ref birthDate); } catch (ArgumentException argEx) { MessageBox.Show(argEx.Message); birthDate = new DateTime(2000, 2, 12); _age = ChooseAge(ref birthDate); } catch (ArithmeticException arithEx) { MessageBox.Show(arithEx.Message); birthDate = new DateTime(2000, 2, 12); _age = ChooseAge(ref birthDate); } finally { _zodiacWestern = ChooseSign(ref birthDate); _zodiacChinese = CalcChineseZodiac(ref birthDate); } }
public void GetChineseZodiacElementBasedOnYear_Test(int year, ChineseZodiacElements expectedZodiacElement) { var actualZodiacElement = ChineseZodiac.GetChineseZodiacElementBasedOnYear(year); Assert.Equal(expectedZodiacElement, actualZodiacElement); }
public void GetZodiacSignForDate_Test(int year, string zodiacSign) { var symbol = ChineseZodiac.GetZodiacSignForDate(new DateTime(year, 4, 1)); Assert.Equal(zodiacSign, symbol.ZodiacEnglishTranslation); }
/// <summary> /// Initialise une nouvelle instance de la classe <see cref="AndChineseZodiac"/>. /// </summary> /// <param name="parent">Elément de syntax parent.</param> /// <param name="value">Animal du Zodiac Chinois.</param> public AndChineseZodiac(ExpressionElement parent, ChineseZodiac value) : base(parent) => Value = value;
private static ChineseZodiac AnalizeChineseZodiac(DateTime date) { // змінна знаку зодіаку ChineseZodiac zodiac = default; // конвертуємо перерахунки в масив var sign = Enum .GetValues(typeof(ChineseZodiac)) .Cast <ChineseZodiac>() .ToArray(); #region Explain // алгоритм доволы простий // якщо уважно глянути, то знакыв всього 12, // і вони періодично змінюються кожного року // якщо не вдаватися в деталі крайніх чисел і приймати // знак знюється з 1 січня і триває до 31 грудня // то цей алгоритм схожий на визначення парності числа // а тому після знаходження залишку від діленння року на 12 // можна визначити якого китайського знаку зодіаку людина родилася #endregion // залишок від ділення int mod = date.Year % 12; switch (mod) { case 0: // Мавпа zodiac = sign[8]; break; case 1: // Півень zodiac = sign[9]; break; case 2: // Собака zodiac = sign[10]; break; case 3: // Свиня zodiac = sign[11]; break; case 4: // Щур/миша zodiac = sign[0]; break; case 5: // Бик zodiac = sign[1]; break; case 6: // Тигр zodiac = sign[2]; break; case 7: // Кролик zodiac = sign[3]; break; case 8: // Дракон zodiac = sign[4]; break; case 9: // Змія zodiac = sign[5]; break; case 10: // Кінь zodiac = sign[6]; break; case 11: // Вівця/коза zodiac = sign[7]; break; } return(zodiac); }
public void GetAllZodiacSigns_Test() { var symbols = ChineseZodiac.GetAllZodiacSigns(); Assert.Equal(12, symbols.Count); }
public void GetZodiacSign_YinYang_Yang_Test(ChineseZodiacSigns chineseZodiacSigns) { var symbols = ChineseZodiac.GetZodiacSign(chineseZodiacSigns); Assert.Equal(YinYang.Yang, symbols.ZodiacYinYang); }
/// <summary> /// Get the Chinese zodiac sign for the supplied date. /// </summary> /// <param name="dateTime">The date you want to query.</param> /// <returns>Returns a Chinese zodiac sign object.</returns> public static ChineseZodiacModel GetChineseZodiacSign(this DateTime dateTime) => ChineseZodiac.GetZodiacSignForDate(dateTime);