Feda /dev/ - No Javascript allowed

Normas
spoiler
Personas non gratas
Memes feda dev




TheBrotha

#33089 Si puedo hacer un commit a Main siendo becario no es mi culpa

Kaledros

#33090 No has probado la de Caixabank, ¿verdad?

1 1 respuesta
Wei-Yu

Me cago en el puto swagger qué mierda de API para configurarlo tiene en C#

casi prefiero repartir PDFs hechos a mano cada vez que se cambia algo.

1 respuesta
desu

WE ARE A TEAM NOT A FAMILY

https://jobs.netflix.com/culture

We model ourselves on being a team, not a family. A family is about unconditional love, despite, say, your siblings’ bad behavior. A dream team is about pushing yourself to be the best teammate you can be, caring intensely about your teammates, and knowing that you may not be on the team forever.

#33092 mi compa;ero ha hecho esto:

@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.NONE, properties = {
        "cloud.aws.sqs.enabled=false",
        "cloud.aws.s3.enabled=false",
})

Y dentro:

  @TestConfiguration
  static class XXXMockConfig {
// MockBeans
// PostConstructs para inicializar a mano cosas que fallaban..
}

Me parece una autentica porqueria. Es que esta hecho del REVES que cualquier otro libreria/lenguaje de programacion. Del reves.

En lugar de decirle lo que quieres le tienes que decir lo que NO quieres... LOL

En fin, ahora le dare otro round, aun no he entendido como hacer de la manera MAS FACIL posible lo que quiero. parece imposible porque en spring no hay nada facil jeje

Wei-Yu

vamos a ver miguelito como que llevas 3 días para hacer correr un test

1 respuesta
desu

#33095 eso ya lo he hecho hombre, se me bugeo al meter una dependencia que no tocaba.

lo que no consigo es tener los contextos independientes con autowire y que los componentes se resuelvan solos (no yo con un bean en una configuration).

si quieres ayudarme abro stream otro rato

1 respuesta
Kaledros

#33096 No uses autowire, inyecta los componentes por constructor y deja que Spring se apañe.

1 1 respuesta
desu

#33097 EDIT SIIIIIIIIIIIIIIIIIIII LO ACABO DE LOGRAR CON LA CONFIG

Ahora como hago que esa config en lugar del main este en mi package test? XD

1 respuesta
Kaledros

#33098 Ah, hostia. Pues entonces necesitarías levantar el contexto con una anotación. Que de normal deberías mockear los beans que no sean necesarios para testear la funcionalidad que sea, y si eso se convierte en un infierno de dependencias e inyecciones es que el TDD funciona XDD

1 respuesta
desu

#33099 Tengo una primera version tete. Por fin ostia puta.

A lo que tenia con @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.NONE) para que detecte que es de spring... parece que sin esto no va nada de componentes

1 respuesta
Kaledros

#33100 Mira la respuesta más votada: https://stackoverflow.com/questions/43281370/test-the-springboot-application-startup Básicamente lo que estás haciendo es decirle a Spring que SÓLO cree los beans y nada más, pero lo puedes configurar para que te levante todo y testear los endpoints.

1 1 respuesta
desu

#33101 Bueno tengo el primer paso. Un puto componente que lee la config de un paquete.

Ahora necesito un contexto por cada paquete y que no haya problemas.

Y por ultimo mockear cosas de dentro de un componente con MockBean.

...

1 respuesta
aren-pulid0

spring es mágico :)

Kaledros
#33102desu:

Ahora necesito un contexto por cada paquete y que no haya problemas.

Los habrá en cuanto empieces a tener dependencias compartidas en más de un package. Yo de ti lo sacaría todo del ApplicationContext y fuera.

1 respuesta
desu

#33104 mmm lo del applicationContext quizas no nos entendemos porque no se muy bien que es.

yo entiendo que el applicationContext es el de SPRING, el general, por defecto, donde mete todo.

yo estoy creando contextos separados, cada paquete su contexto y su configuracion.

lo que pasa es que el test me OBLIGA a meter esa anotacion SpringBootTest con NONE o MOCK para que funcione...

sigo haciendo pruebas..

1 respuesta
Kaledros
#33105desu:

yo entiendo que el applicationContext es el de SPRING, el general, por defecto, donde mete todo.

Correcto.

yo estoy creando contextos separados, cada paquete su contexto y su configuracion.

Correcto también.

#33105desu:

lo que pasa es que el test me OBLIGA a meter esa anotacion SpringBootTest con NONE o MOCK para que funcione...

Porque la anotación lo que hace es levantar el ApplicationContext, no el tuyo. No puedes levantar tus contextos por separado (o al menos creo que no se puede hacer, no lo he intentado nunca; igual @Ranthas sabe si se puede hacer o no), lo que puedes hacer es levantar el ApplicationContext y de ahí hacer un getBean() de los tuyos.

1 respuesta
desu

#33106 Ok, coincido contigo. tiene sentido. al final spring es un framework (DE PUTA MIERDA) que te obliga a usar sus componentes y sus cosas.

no es una libreria de DI...

yo lo que realmente quiero y necesito es la DI pero bueno... toca comer spring y levantar un applicationContext.

ahora voy volado... si miras mi repo de spring veras lo que queria hacer...

ahora solo me falta probar lo de tener un component complejo y hacerle mockBean por dentro ...

edit: ya esta. SIUUUUUUU. en fin. he tardado 3h en aprender spring y hacerlo mejor que el resto de la gente. no esta mal para un pajeet como yo.

esta metodologia que he usado es la que os recomiendo a todos, es un poco tedioso tener que decirle los contextos a mano, pero os aseguro que hara vuestra vida testeando muuuuuuuuuuuuuuy facil. ademas cargaran mas rapido.

en lugar de tener contextos de 10 clases, ahora tendreis contextos minimos. si a;adis un componente dentro de otro. el arbol de dependencia del contexto os fallara automaticamente diciendo lo que os falta... XD

r2d2rigo

#33093 pero si en netcore es una linea desgraciao.

1 respuesta
B

Yo a los de .net y a los de javascript los meto en el mismo saco

spoiler
3
TheBrotha

Menos mal que yo solo hago Typescript

1
Fyn4r

Cada vez que estoy en una reunión donde otros desarrolladores presentan "qué han hecho esta semana" me acuerdo de @Kaledros quejándose de cómo la gente no es capaz de comunicar ni un mínimo, que razón tiene el jodío xd

6 2 respuestas
Lecherito

#33111 y al contrario, los weekly donde se hace una actualizacion del proyecto la gente dice lo que ha hecho cada persona del equipo xdddddddd

JuAn4k4

No entiendo que quieres hacer, configs distintas?

Siempre puedes crear el app context a mano y ponerle un fichero diferente para cargar la config.

Pero yo te diría que hagáis unit creando la coasts a mano e integration cargando todo tal cual.

1 respuesta
Isengard

#33089 Yo. Nos hemos puesto creativos y a hacer pushes a los chuck norris en producción

Wei-Yu

#33108 mis cojones una línea

encima está desperdigado por el ciclo de vida de la app

Kaledros

#33111 La desventaja de eso es que a poco que sepas comunicar cosas sin cagarte encima ni parecer deficiente te van a colgar todas las presentaciones importantes XD

desu

#33113 ya he hecho lo que queria. creo. aun me falta probarlo con kafka-embedded. pero diria que ya esta.

https://github.com/vrnvu/spring

#33113JuAn4k4:

Pero yo te diría que hagáis unit creando la coasts a mano e integration cargando todo tal cual.

la coasts a mano? te refieres a crear las "cosas" a mano?

Por cierto para el que le interese, ofertas de 100 a 300k de Go en el discord de golang... XD Buen sitio para buscar curro.

1 respuesta
JuAn4k4

#33117 Si que el móvil me cambia todo. Viendo el código lo que querías no son contextos diferentes, sino módulos y poder probarlos por separado.
El component scan es lo peor, no debería usarse imho

1 respuesta
desu

#33118 ni idea, hoy ha sido la primera vez en mi videa que hago esto de los componentes de zero. era mi hello world. lo de los modulos que dices no se a que te refieres.

pero si, lo que quiero hacer es super facil... lo suyo seria usar dagger u otro DI directamente y mandar spring a tomar por culo... pero bueno. hay que rebajarse al nivel del equipo a veces. y una vez abajo tratar de ayudarles a escalar a la cima.

r2d2rigo

buah es que soy yo literal

2