{"id":3528,"date":"2022-08-16T11:43:43","date_gmt":"2022-08-16T11:43:43","guid":{"rendered":"http:\/\/the-codest.localhost\/blog\/quick-guide-on-how-to-run-containers-from-tests\/"},"modified":"2026-03-11T05:56:42","modified_gmt":"2026-03-11T05:56:42","slug":"trumpas-vadovas-kaip-paleisti-konteinerius-is-testu","status":"publish","type":"post","link":"https:\/\/thecodest.co\/lt\/blog\/quick-guide-on-how-to-run-containers-from-tests\/","title":{"rendered":"Trumpas vadovas, kaip paleisti konteinerius i\u0161 bandym\u0173"},"content":{"rendered":"<p>A\u0161 naudoju <strong>\"Spring Boot <\/strong> \u012f <a href=\"https:\/\/thecodest.co\/lt\/dictionary\/why-do-projects-fail\/\">projektas<\/a> kad suma\u017eintum\u0117te \u0161ablon\u0173 skai\u010di\u0173. Test\u0173 konteineriai nepriklauso nuo <strong>Pavasario sistema<\/strong> ir galite juos naudoti be to.<\/p>\n\n\n\n<p>A\u0161 naudoju \"Testcontainers\" 1.17.3 versij\u0105, bet galite naudoti ir naujausi\u0105. Testai su \"Postgres\" konteineriu.<\/p>\n\n\n\n<p>Pirmiausia apibr\u0117\u017ekite konteiner\u012f:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"java\" class=\"language-java\">vie\u0161oji klas\u0117 Postgres13TC extends PostgreSQLContainer {\n  private static final Postgres13TC TC = new Postgres13TC();\n\n  private Postgres13TC() {\n    super(\"postgres:13.2\");\n  }\n\n  public static Postgres13TC getInstance() {\n    return TC;\n  }\n\n  @Override\n  public void start() {\n    super.start();\n    System.setProperty(\"DB_URL\", TC.getJdbcUrl());\n    System.setProperty(\"DB_USERNAME\", TC.getUsername());\n    System.setProperty(\"DB_PASSWORD\", TC.getPassword());\n  }\n\n  @Override\n  public void stop() {\n    \/\/ nieko nedaryti. Tai bendrinama instancija. Leiskite JVM atlikti \u0161i\u0105 operacij\u0105.\n  }\n}<\/code><\/pre>\n\n\n\n<p><code>Tada inicializuokite \"Spring\" taikomosios programos kontekst\u0105. Gauname visus <a href=\"https:\/\/thecodest.co\/lt\/blog\/app-data-collection-security-risks-value-and-types-explored\/\">duomenys<\/a> \u0161altinio konfig\u016bracij\u0105 i\u0161 konteinerio egzemplioriaus ir nustatykite j\u0105 kaip \"Spring\" konfig\u016bracij\u0105:<\/code><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"java\" class=\"language-java\">vie\u0161oji klas\u0117 ContainerInit \u012fgyvendina ApplicationContextInitializer {\n\n  public static Postgres13TC postgres13TC;\n\n  static {\n    postgres13TC = Postgres13TC.getInstance();\n    postgres13TC.start();\n  }\n\n  @Override\n  public void initialize(ConfigurableApplicationContext applicationContext) {\n    TestPropertySourceUtils.addInlinedPropertiesToEnvironment(\n        applicationContext,\n        \"spring.datasource.url=\" + postgres13TC.getJdbcUrl(),\n        \"spring.datasource.username=\" + postgres13TC.getUsername(),\n        \"spring.datasource.password=\" + postgres13TC.getPassword(),\n        \"db.host=\" + postgres13TC.getHost(),\n        \"db.port=\" + postgres13TC.getMappedPort(postgres13TC.POSTGRESQL_PORT),\n        \"db.name=\" + postgres13TC.getDatabaseName(),\n        \"db.username=\" + postgres13TC.getUsername(),\n        \"db.password=\" + postgres13TC.getPassword()\n    );\n  }\n}<\/code><\/pre>\n\n\n\n<p>Galiausiai galime paleisti savo test\u0105 ir viskas bus paleista po gaubtu:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"java\" class=\"language-java\">@SpringBootTest(webEnvironment = RANDOM_PORT)\n@AutoConfigureTestDatabase(replace = NONE)\n@ContextConfiguration(initializers = ContainerInit.class)\n@Testcontainers\nklas\u0117 DummyRepositoryTest {\n\n  @Autowired\n  private DummyRepository dummyRepository;\n\n  @Test\n  void shouldReturnDummy() {\n    var byId = dummyRepository.getById(10L);\n    var expected = new Dummy();\n    expected.setId(10L);\n    assertThat(byId).completes().emitsCount(1).emits(expected);\n  }\n}<\/code><\/pre>\n\n\n\n<p><code>Arba, jei norime atlikti nepriklausom\u0105 nuo \"Spring\" test\u0105, galime tiesiogiai naudoti konteiner\u012f:<\/code><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"java\" class=\"language-java\">@Testcontainers\nklas\u0117 SimpleDbTest {\n\n  @Container\n  private static final Postgres13TC postgres13TC = Postgres13TC.getInstance();\n\n  @Test\n  void testConnection() {\n    assumeThat(postgres13TC.isRunning());\n    var connectionProps = new Properties();\n    connectionProps.put(\"user\", postgres13TC.getUsername());\n    connectionProps.put(\"password\", postgres13TC.getPassword());\n    bandymas (Connection connection = DriverManager.getConnection(postgres13TC.getJdbcUrl(),\n        connectionProps)) {\n    var resultSet = connection.prepareStatement(\"Select 1\").executeQuery();\n    resultSet.next();\n    assertThat(resultSet.getInt(1)).isEqualTo(1);\n    } catch (SQLException sqlException) {\n    assertThat((Exception) sqlException).doesNotThrowAnyException();\n    }\n  }\n}<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Apibendrinimas<\/h2>\n\n\n\n<p>\"Testcontainers\" yra labai lengvai naudojami \u012frankiai, kurie padeda <a href=\"https:\/\/thecodest.co\/lt\/blog\/why-us-companies-are-opting-for-polish-developers\/\">mus<\/a> kurti integracijos testus, kurie naudoja <a href=\"https:\/\/thecodest.co\/lt\/dictionary\/docker-developer\/\">\"Docker\"<\/a> konteineriai. Tai suteikia mums daugiau lankstumo ir padidina k\u016brimo greit\u012f. Tinkamai nusta\u010dius bandym\u0173 konfig\u016bracij\u0105, sutrump\u0117ja nauj\u0173 k\u016br\u0117j\u0173 \u012flaipinimo laikas. Jiems nereikia nustatyti vis\u0173 priklausomybi\u0173, tereikia paleisti para\u0161ytus testus su pasirinktais konfig\u016bracijos failais.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/thecodest.co\/contact\"><img decoding=\"async\" src=\"\/app\/uploads\/2024\/05\/interested_in_cooperation_.png\" alt=\"bendradarbiavimo v\u0117liava\"\/><\/a><\/figure>","protected":false},"excerpt":{"rendered":"<p>Su\u017einokite, kaip paleisti konteineri\u0173 formos testus su \"Java\" susijusiame straipsnyje, kuriame m\u016bs\u0173 vyresnysis \"Java\" programuotojas parodo visus stebuklus.<\/p>","protected":false},"author":2,"featured_media":3529,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[8],"tags":[],"class_list":["post-3528","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-software-development"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.3 (Yoast SEO v27.3) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Quick Guide on How to Run Containers from Tests - The Codest<\/title>\n<meta name=\"description\" content=\"Learn how to run containers form tests in our Java related article where our senior java developer shows all the magic.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/thecodest.co\/lt\/tinklarastis\/trumpas-vadovas-kaip-paleisti-konteinerius-is-testu\/\" \/>\n<meta property=\"og:locale\" content=\"lt_LT\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Quick Guide on How to Run Containers from Tests\" \/>\n<meta property=\"og:description\" content=\"Learn how to run containers form tests in our Java related article where our senior java developer shows all the magic.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/thecodest.co\/lt\/tinklarastis\/trumpas-vadovas-kaip-paleisti-konteinerius-is-testu\/\" \/>\n<meta property=\"og:site_name\" content=\"The Codest\" \/>\n<meta property=\"article:published_time\" content=\"2022-08-16T11:43:43+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-03-11T05:56:42+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/thecodest.co\/app\/uploads\/2024\/05\/quick_guide_on_how_to_run_containers_from_tests.png\" \/>\n\t<meta property=\"og:image:width\" content=\"960\" \/>\n\t<meta property=\"og:image:height\" content=\"540\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"thecodest\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"thecodest\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/quick-guide-on-how-to-run-containers-from-tests\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/quick-guide-on-how-to-run-containers-from-tests\\\/\"},\"author\":{\"name\":\"thecodest\",\"@id\":\"https:\\\/\\\/thecodest.co\\\/#\\\/schema\\\/person\\\/7e3fe41dfa4f4e41a7baad4c6e0d4f76\"},\"headline\":\"Quick Guide on How to Run Containers from Tests\",\"datePublished\":\"2022-08-16T11:43:43+00:00\",\"dateModified\":\"2026-03-11T05:56:42+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/quick-guide-on-how-to-run-containers-from-tests\\\/\"},\"wordCount\":124,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/quick-guide-on-how-to-run-containers-from-tests\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/thecodest.co\\\/app\\\/uploads\\\/2024\\\/05\\\/quick_guide_on_how_to_run_containers_from_tests.png\",\"articleSection\":[\"Software Development\"],\"inLanguage\":\"lt-LT\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/thecodest.co\\\/blog\\\/quick-guide-on-how-to-run-containers-from-tests\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/quick-guide-on-how-to-run-containers-from-tests\\\/\",\"url\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/quick-guide-on-how-to-run-containers-from-tests\\\/\",\"name\":\"Quick Guide on How to Run Containers from Tests - The Codest\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/quick-guide-on-how-to-run-containers-from-tests\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/quick-guide-on-how-to-run-containers-from-tests\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/thecodest.co\\\/app\\\/uploads\\\/2024\\\/05\\\/quick_guide_on_how_to_run_containers_from_tests.png\",\"datePublished\":\"2022-08-16T11:43:43+00:00\",\"dateModified\":\"2026-03-11T05:56:42+00:00\",\"description\":\"Learn how to run containers form tests in our Java related article where our senior java developer shows all the magic.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/quick-guide-on-how-to-run-containers-from-tests\\\/#breadcrumb\"},\"inLanguage\":\"lt-LT\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/thecodest.co\\\/blog\\\/quick-guide-on-how-to-run-containers-from-tests\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"lt-LT\",\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/quick-guide-on-how-to-run-containers-from-tests\\\/#primaryimage\",\"url\":\"https:\\\/\\\/thecodest.co\\\/app\\\/uploads\\\/2024\\\/05\\\/quick_guide_on_how_to_run_containers_from_tests.png\",\"contentUrl\":\"https:\\\/\\\/thecodest.co\\\/app\\\/uploads\\\/2024\\\/05\\\/quick_guide_on_how_to_run_containers_from_tests.png\",\"width\":960,\"height\":540},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/quick-guide-on-how-to-run-containers-from-tests\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/thecodest.co\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Quick Guide on How to Run Containers from Tests\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/thecodest.co\\\/#website\",\"url\":\"https:\\\/\\\/thecodest.co\\\/\",\"name\":\"The Codest\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/thecodest.co\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"lt-LT\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/thecodest.co\\\/#organization\",\"name\":\"The Codest\",\"url\":\"https:\\\/\\\/thecodest.co\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"lt-LT\",\"@id\":\"https:\\\/\\\/thecodest.co\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/thecodest.co\\\/app\\\/uploads\\\/2024\\\/03\\\/thecodest-logo.svg\",\"contentUrl\":\"https:\\\/\\\/thecodest.co\\\/app\\\/uploads\\\/2024\\\/03\\\/thecodest-logo.svg\",\"width\":144,\"height\":36,\"caption\":\"The Codest\"},\"image\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/pl.linkedin.com\\\/company\\\/codest\",\"https:\\\/\\\/clutch.co\\\/profile\\\/codest\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/thecodest.co\\\/#\\\/schema\\\/person\\\/7e3fe41dfa4f4e41a7baad4c6e0d4f76\",\"name\":\"thecodest\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"lt-LT\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5dbfe6a1e8c86e432e8812759e34e6fe82ebac75119ae3237a6c1311fa19caf4?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5dbfe6a1e8c86e432e8812759e34e6fe82ebac75119ae3237a6c1311fa19caf4?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5dbfe6a1e8c86e432e8812759e34e6fe82ebac75119ae3237a6c1311fa19caf4?s=96&d=mm&r=g\",\"caption\":\"thecodest\"},\"url\":\"https:\\\/\\\/thecodest.co\\\/lt\\\/author\\\/thecodest\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Trumpas vadovas, kaip paleisti konteinerius i\u0161 bandym\u0173 - The Codest","description":"Su\u017einokite, kaip paleisti konteineri\u0173 formos testus su \"Java\" susijusiame straipsnyje, kuriame m\u016bs\u0173 vyresnysis \"Java\" programuotojas parodo visus stebuklus.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/thecodest.co\/lt\/tinklarastis\/trumpas-vadovas-kaip-paleisti-konteinerius-is-testu\/","og_locale":"lt_LT","og_type":"article","og_title":"Quick Guide on How to Run Containers from Tests","og_description":"Learn how to run containers form tests in our Java related article where our senior java developer shows all the magic.","og_url":"https:\/\/thecodest.co\/lt\/tinklarastis\/trumpas-vadovas-kaip-paleisti-konteinerius-is-testu\/","og_site_name":"The Codest","article_published_time":"2022-08-16T11:43:43+00:00","article_modified_time":"2026-03-11T05:56:42+00:00","og_image":[{"width":960,"height":540,"url":"https:\/\/thecodest.co\/app\/uploads\/2024\/05\/quick_guide_on_how_to_run_containers_from_tests.png","type":"image\/png"}],"author":"thecodest","twitter_card":"summary_large_image","twitter_misc":{"Written by":"thecodest","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/thecodest.co\/blog\/quick-guide-on-how-to-run-containers-from-tests\/#article","isPartOf":{"@id":"https:\/\/thecodest.co\/blog\/quick-guide-on-how-to-run-containers-from-tests\/"},"author":{"name":"thecodest","@id":"https:\/\/thecodest.co\/#\/schema\/person\/7e3fe41dfa4f4e41a7baad4c6e0d4f76"},"headline":"Quick Guide on How to Run Containers from Tests","datePublished":"2022-08-16T11:43:43+00:00","dateModified":"2026-03-11T05:56:42+00:00","mainEntityOfPage":{"@id":"https:\/\/thecodest.co\/blog\/quick-guide-on-how-to-run-containers-from-tests\/"},"wordCount":124,"commentCount":0,"publisher":{"@id":"https:\/\/thecodest.co\/#organization"},"image":{"@id":"https:\/\/thecodest.co\/blog\/quick-guide-on-how-to-run-containers-from-tests\/#primaryimage"},"thumbnailUrl":"https:\/\/thecodest.co\/app\/uploads\/2024\/05\/quick_guide_on_how_to_run_containers_from_tests.png","articleSection":["Software Development"],"inLanguage":"lt-LT","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/thecodest.co\/blog\/quick-guide-on-how-to-run-containers-from-tests\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/thecodest.co\/blog\/quick-guide-on-how-to-run-containers-from-tests\/","url":"https:\/\/thecodest.co\/blog\/quick-guide-on-how-to-run-containers-from-tests\/","name":"Trumpas vadovas, kaip paleisti konteinerius i\u0161 bandym\u0173 - The Codest","isPartOf":{"@id":"https:\/\/thecodest.co\/#website"},"primaryImageOfPage":{"@id":"https:\/\/thecodest.co\/blog\/quick-guide-on-how-to-run-containers-from-tests\/#primaryimage"},"image":{"@id":"https:\/\/thecodest.co\/blog\/quick-guide-on-how-to-run-containers-from-tests\/#primaryimage"},"thumbnailUrl":"https:\/\/thecodest.co\/app\/uploads\/2024\/05\/quick_guide_on_how_to_run_containers_from_tests.png","datePublished":"2022-08-16T11:43:43+00:00","dateModified":"2026-03-11T05:56:42+00:00","description":"Su\u017einokite, kaip paleisti konteineri\u0173 formos testus su \"Java\" susijusiame straipsnyje, kuriame m\u016bs\u0173 vyresnysis \"Java\" programuotojas parodo visus stebuklus.","breadcrumb":{"@id":"https:\/\/thecodest.co\/blog\/quick-guide-on-how-to-run-containers-from-tests\/#breadcrumb"},"inLanguage":"lt-LT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/thecodest.co\/blog\/quick-guide-on-how-to-run-containers-from-tests\/"]}]},{"@type":"ImageObject","inLanguage":"lt-LT","@id":"https:\/\/thecodest.co\/blog\/quick-guide-on-how-to-run-containers-from-tests\/#primaryimage","url":"https:\/\/thecodest.co\/app\/uploads\/2024\/05\/quick_guide_on_how_to_run_containers_from_tests.png","contentUrl":"https:\/\/thecodest.co\/app\/uploads\/2024\/05\/quick_guide_on_how_to_run_containers_from_tests.png","width":960,"height":540},{"@type":"BreadcrumbList","@id":"https:\/\/thecodest.co\/blog\/quick-guide-on-how-to-run-containers-from-tests\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/thecodest.co\/"},{"@type":"ListItem","position":2,"name":"Quick Guide on How to Run Containers from Tests"}]},{"@type":"WebSite","@id":"https:\/\/thecodest.co\/#website","url":"https:\/\/thecodest.co\/","name":"The Codest","description":"","publisher":{"@id":"https:\/\/thecodest.co\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/thecodest.co\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"lt-LT"},{"@type":"Organization","@id":"https:\/\/thecodest.co\/#organization","name":"The Codest","url":"https:\/\/thecodest.co\/","logo":{"@type":"ImageObject","inLanguage":"lt-LT","@id":"https:\/\/thecodest.co\/#\/schema\/logo\/image\/","url":"https:\/\/thecodest.co\/app\/uploads\/2024\/03\/thecodest-logo.svg","contentUrl":"https:\/\/thecodest.co\/app\/uploads\/2024\/03\/thecodest-logo.svg","width":144,"height":36,"caption":"The Codest"},"image":{"@id":"https:\/\/thecodest.co\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/pl.linkedin.com\/company\/codest","https:\/\/clutch.co\/profile\/codest"]},{"@type":"Person","@id":"https:\/\/thecodest.co\/#\/schema\/person\/7e3fe41dfa4f4e41a7baad4c6e0d4f76","name":"thecodest","image":{"@type":"ImageObject","inLanguage":"lt-LT","@id":"https:\/\/secure.gravatar.com\/avatar\/5dbfe6a1e8c86e432e8812759e34e6fe82ebac75119ae3237a6c1311fa19caf4?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/5dbfe6a1e8c86e432e8812759e34e6fe82ebac75119ae3237a6c1311fa19caf4?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/5dbfe6a1e8c86e432e8812759e34e6fe82ebac75119ae3237a6c1311fa19caf4?s=96&d=mm&r=g","caption":"thecodest"},"url":"https:\/\/thecodest.co\/lt\/author\/thecodest\/"}]}},"_links":{"self":[{"href":"https:\/\/thecodest.co\/lt\/wp-json\/wp\/v2\/posts\/3528","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/thecodest.co\/lt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/thecodest.co\/lt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/thecodest.co\/lt\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/thecodest.co\/lt\/wp-json\/wp\/v2\/comments?post=3528"}],"version-history":[{"count":9,"href":"https:\/\/thecodest.co\/lt\/wp-json\/wp\/v2\/posts\/3528\/revisions"}],"predecessor-version":[{"id":7964,"href":"https:\/\/thecodest.co\/lt\/wp-json\/wp\/v2\/posts\/3528\/revisions\/7964"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/thecodest.co\/lt\/wp-json\/wp\/v2\/media\/3529"}],"wp:attachment":[{"href":"https:\/\/thecodest.co\/lt\/wp-json\/wp\/v2\/media?parent=3528"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/thecodest.co\/lt\/wp-json\/wp\/v2\/categories?post=3528"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/thecodest.co\/lt\/wp-json\/wp\/v2\/tags?post=3528"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}